$nomod51 ;der Modus fuer 8051 wird abgeschaltet $debug $nolist ;es wird kein Listing fuer reg535 erstellt $include(reg535.pdf) ;die 80535-spezifischen Daten $list ;es wird ein Listing erstellt $ title (ADWP.A51) ;------------------------------------------------------------------------ ;Programmbeschreibung ;------------------------------------------------------------------------ ;Programm:ADWP = AD-Wandlung primitiv ; T1 löst Wandlung aus ; Wert von ADDAT in Akku ;Datum: 06.12.2004 ;Programmiert: C. Frischmann ; ;Verwendete Einspruenge: keine ; ;Verwendete Unterprogramme: keine ; ; ;Verwendete Register und Variable: ;Registerbank(0) ;R2 ; ;Kommentar: ; ;Aenderungen: ;Datum: ; ; ;------------------------------------------------------------------------ ;Initialisierungsteil für allgemeine Konstanten ;------------------------------------------------------------------------ CSEG AT 0H ;Legt absolute Codesegmentadresse auf 0h jmp INIT ; ;------------------------------------------------------------------------ ;Interrupt-Vektoren ;------------------------------------------------------------------------ ;------------------------------------------------------------------------ ;Initialisierungsteil für On-Chip Peripherie ;------------------------------------------------------------------------ ORG 100H ;Programmstart bei 100H INIT: ;mov adcon,#10000000b ;ADCON muss nicht programmiert werden ;------------------------------------------------------------------------ ;Programmschleife ;------------------------------------------------------------------------ ABFRAGE: jnb P1.1,WANDLUNG ;Abfrage Taster 1 jmp ABFRAGE WANDLUNG: mov DAPR,#0 ;Ausloesen der Wandlung, 0...5V jb BSY,$ ;warten bis Wandlung beendet mov A,ADDAT ;Ergebnis in Akku jmp ABFRAGE ;Sprung in Abfrage end