APPLICATIONSCREATION GRAPHIQUE ★ Digitalisieren mit dem Drucker ★

Scanner (Happy Computer)Applications Creation Graphique
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Eine kleine Schaltung verwandelt Ihren Drucker in einen Scanner, der ein eingespanntes Bild Punkt für Punkt abtastet und die gemessenen Grauwerte an den Computer übergibt. Mit der entsprechenden Software können Sie aus den Grauwerten Bilder erzeugen und bearbeiten. Hier ist das Listing zur Schaltung in der letzten Ausgabe.

In der letzten Happy-Computer haben wir die Anleitung zum Selbstbau eines Scanners veröffentlicht, der mit Hilfe eines Druckers Bildvorlagen digitalisiert und über den Joystickport des Schneider CPC an den Computer übergibt. In diesem Heft folgt nun — wie versprochen — die Software, die Abgleich, Anpassung und den Betrieb des Scanners sowie die Bearbeitung von digitalisierten Bildern unterstützt.

Die Software für den Scanner besteht aus den zwei Basic-Programmen »Scanner« und »Subscan« sowie den Maschinencode-Routinen »scan.bin« für das Programm Sanner und »bild.bin« für Subscan.

Das Basic-Programm Scanner in Listing 1 stellt das Hauptprogramm der Scanner-Software dar. Hier werden im Hauptmenü vier Funktionen angeboten.

Der erste Menüpunkt ruft ein Unterprogramm auf, mit dem das Programm an die Scanner-Schaltung angepaßt werden kann. Mit »Modus« wird der gewünschte Grafikmodus eingestellt und mit »Linker Rand« die X-Position, ab der der Scanner das Bild zu digitalisieren beginnt, festgelegt. Je größer der Wert für die X-Position ist, desto weiter rechts beginnt das Abtasten des Bildes.

Um eine gute Kopie der Vorlage zu erhalten, muß der Sensor immer an der gleichen X-Position mit dem Abtasten beginnen. Deshalb wird der Druckkopf in regelmäßigen Abständen in Bewegung gesetzt. Die Zeit, die zwischen dem Scannen zweier Zeilen vergeht, wird mit »Speed« eingestellt. Die Zeit, die zwischen dem Abtasten zweier Punkte vergeht, läßt sich über den Punkt »Abtastrate« einstellen.

Das Größenverhältnis zwischen Original und Bildschirm ist ebenfalls wählbar. Das Standardformat beträgt 5. Bei einem kleineren Wert ergibt sich eine größere Bildschirmkopie, und bei einem größeren Wert erhält man entsprechend eine kleinere Kopie.

Der zweite Menüpunkt im Programm dient dem Abgleich des Scanners. Der Scanner-Sensor liefert bei der Farbe Weiß einen hohen Spannungspegel und bei schwarzem Untergrund wird ein niedriger Spannungspegel erzeugt. Um die 7 Bit Datenbreite, die zur Verfügung steht, optimal auszunutzen, müssen Sie den A-D-Wandler ADC 0804 abgleichen. Dazu stellen Sie das Potentiometer, dessen Abgriff am Eingang Vin - des A-D-Wandlers angeschlossen ist, zuerst so ein, daß der Markierungsbalken auf dem Bildschirm so weit wie möglich links steht, und löschen darauf mit der Taste < L > die Werte für Minimum und Maximum.

Nun fahren Sie mit dem Sensor auf die hellste Stelle der Vorlage. Die hellste Stelle haben Sie gefunden, wenn der Maximumwert am höchsten ist. Stellen Sie das Potentiometer so ein, daß der Wert knapp unter 127 liegt. Nachdem Sie mit < L > erneut die Werte für Minimum und Maximum gelöscht haben, suchen Sie mit dem Sensor den Punkt auf der Vorlage, der am dunkelsten erscheint. Jetzt müssen Sie das im Schaltplan links eingezeichnete Potentiometer nur noch so einstellen, daß der angezeigte Wert ein wenig größer als Null ist. Damit ist der Scanner abgeglichen.

Mit dem dritten Menüpunkt starten Sie den eigentlichen Abtastvorgang. Zuerst übergibt das Programm Scanner der Maschinencode-Routine »scan.bin« mit dem RSX-Befehl UNIT die Parameter für Modus und Abtastrate. Dann wird der Drucker initialisiert und der RSX-Befehl |SCAN liest die Grauwerte für eine Bildzeile ein und setzt sie auf den Bildschirm um. Zum Schluß wird das Bild auf Datenträger gespeichert.

Weil viele Drucker den Textausdruck optimieren, das heißt den kürzesten Weg bei der Ausgabe von Textzeilen berechnen, reagiert der Druckkopf bei der Ausgabe von Leerzeichen überhaupt nicht. Deshalb muß das Programm Scanner in Zeile 2320 Buchstaben ausgeben, um den Druckkopf zu bewegen. In diesem Fall muß der Druckkopf zum Scannen ausgebaut oder verdeckt werden, weil er sonst die Bildvorlage bedrucken würde.

Optimiert Ihr Drucker den Textausdruck nicht, so können Sie in Zeile 2320 jedes »H« durch ein Leerzeichen ersetzen und müssen den Druckkopf nicht ausbauen.

Um bei Druckweg-optimierenden Druckern den Ausbau des Druckkopfes zu umgehen, können Sie den Drucker auch in den nichtoptimierenden Grafikmodus schalten und in Zeile 2320 statt Text weiße Grafikpunkte ausgeben. Da dieses Verfahren sehr langsam arbeitet, wurde der RSX-Befehl |DRUCK implementiert, der eine gewisse Anzahl von Grafikpunkten ausgibt. So erzeugt zum Beispiel der Befehl

|DRUCK,640,0

eine Grafikzeile mit 640 weißen Punkten (Bitmuster 00000000) auf dem Drucker, so daß der Druckkopf gleichmäßig eine Bildzeile abtasten kann.

Wird ein Bild im Modus 0 abgetastet, so bietet sich zusätzlich der vierte Menüpunkt an. Hier wird das Scanner-Unterprogramm Scansub (Listing 2) geladen, das die Berarbeitung der digitalisierten Bilder erlaubt. Da beim Digitalisieren eines Bildes eine ungefähr 32 KByte große Quelldatei erzeugt wird und im Modus 0 der Helligkeitswert der einzelnen Bildpunkte mit 7 Bit Genauigkeit gespeichert ist, lassen sich 128 verschiedene Helligkeitsstufen speichern.

Der Computer kann jedoch nur 16 Helligkeitswerte gleichzeitig darstellen. Das Überangebot an Informationen wird von Scansub verwertet, um die Qualität des Bildes zu steigern. An Funktionen steht das Invertieren, Einstellen des Kontrastes und der Helligkeit sowie das Speichern des Bildes zur Verfügung.

Der Menüpunkt »Auto-Optimierung« ist ein besonderer Leckerbissen. Hier werden die Daten der Quelldatei nach Minimum und Maximum durchsucht und korrigiert, um ein Optimum an Kontrast zu erzielen. Wenn Sie den Menüpunkt »Bild erstellen« wählen, so baut sich das Bild unter Berücksichtigung der eingestellten Werte neu auf. Mit < CTRL + C > erzeugen Sie eine Hardcopy, die auf allen Epson-kompatiblen Druckern funktioniert.

Die Programme »scan.dat« (Listing 3) und »bild.dat« (Listing 4) sind die DATA-Lader für die verwendeten Maschinencode-Routinen. Sie erzeugen beim Start die Dateien »scan.bin« und »bild.bin«, die von Scanner beziehungsweise Scansub bei Bedarf nachgeladen werden.

Besitzer eines CPC 664 oder CPC 6128 müssen im Programm Scanner aus Zeile 1300, 1320 und 1340 und im Programm Scansub aus Zeile 1190 und 1210 die zweite offene Klammer im DEC$-Befehl entfernen.

(Thomas Reisepatt/ma) , HC

★ PUBLISHER: Happy Computer
★ YEAR: 1987
★ CONFIG: ???
★ LANGUAGE:
★ LiCENCE: LISTING
★ AUTHOR: Thomas Reisepatt
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» Scanner    (Happy  Computer)    GERMANDATE: 2022-10-11
DL: 73
TYPE: ZIP
SiZE: 10Ko
NOTE: 40 Cyls
.HFE: Χ

» Scanner    (Happy  Computer)    GERMAN    LISTINGDATE: 2022-10-11
DL: 83
TYPE: PDF
SiZE: 3556Ko
NOTE: 6 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Generateur de Basse Frequense Stereophonique (CPC Revue)
» Applications » Comptabilité Generale (Logicys)
» Applications » Genealogic
» Applications » Le Generateur de Montres Molles (Science et Vie Micro)
» Applications » DATA-Generator (Schneider Aktiv)
» Applications » Vorspanngenerator (CPC Amstrad International)
Je participe au site:
» Vous avez des infos personnel ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 251 millisecondes et consultée 335 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.