;Druckertest ;Daten an Port 1, Steuerleitungen an Port 3 ;Epson Emulation, LQ 850-Drucker. cpu = 8032 ;Steuerleitungen Strobe=P3.0 Select=P3.1 ;wird nicht benötigt Ack=P3.2 ;wird nicht benötigt Busy=P3.3 PE=P3.4 ;wird nicht benötigt ;Steuerzeichen BEL=07 ;Ton LF=0a ;Zeilenvorschub _FF=0c ;Blattvorschub CR=0d ;Wagenrücklauf SO=0e ;Breitdruck für eine Zeile SI=0f ;Schmaldruck ein DC2=12 ;Schmaldruck aus ESC=1b ;Escape Fett an='E' ;ESC + E = Fettdruck ein Fett aus='F' ;ESC + F = Fettdruck aus Reset='@' ;ESC + @ = Druckerreset Data: Druckdaten ESC,Reset,'Hier meldet sich der Controller',CR,LF SO,'* * * Ein Druckertest * * *',CR,LF,LF SI,'jetzt in Schmaldruck.',CR,LF,LF,0 ;Hauptprogamm Start Tabelle drucken mov p1,#55 ;Endesignal an LEDs. end ;Hauptprogamm Ende Sende Akku an Drucker: jb Busy,hier ;Bereitschaft des Druckers abwarten. mov p1,a ;Port 1 führt die Daten. clr Strobe ;Taktsignal erzeugen. setb Strobe ret Tabelle drucken: mov r2,#6 ;Tabellenoffset loop inc r2 ;r2 ist Tabellenzeiger. mov a,r2 movc a,@a+pc if a > #0 then ;0 markiert das Tabellenende. Sende Akku an Drucker end loop end if ret include Data Druckdaten