$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 (MITTEMP.A51) ;------------------------------------------------------------------------ ;Programmbeschreibung ;------------------------------------------------------------------------ ;Programm: MITTEMP ;T1: Wandelt zwei Werte schreibt diese in R0 und R1 und ermittelt Mittelwert ; ; ; ;Erstellt am: Montag, 30. Oktober 2006 08:04:10 ;Programmiert: Alexandra Mouisel und Stéphane Achauer ; ;Verwendete Einspruenge: keine ; ;Verwendete Unterprogramme: keine ; ; ;Verwendete Register und Variable: ;Registerbank(0) ;R2 ; ;Kommentar: ; ;Aenderungen: ;Geaendert am: Montag, 30. Oktober 2006 08:04:10 ; ; ;------------------------------------------------------------------------ ;Initialisierungsteil fuer allgemeine Konstanten ;------------------------------------------------------------------------ CSEG AT 0H ;Legt absolute Codesegmentadresse auf 0h jmp INIT ; ;------------------------------------------------------------------------ ;Interrupt-Vektoren ;------------------------------------------------------------------------ ;ORG ;------------------------------------------------------------------------ ;Initialisierungsteil fuer On-Chip Peripherie ;------------------------------------------------------------------------ ORG 100H ;Programmstart bei 100H INIT: ;------------------------------------------------------------------------ ;Programmschleife ;------------------------------------------------------------------------ ABFRAGE: jnb P1.1, MESSUNG1 ;ist die Taste 1 betätigt ? jmp ABFRAGE MESSUNG1: mov ADCON, #10000000b ;Wandlung einzeln Kanal 0 mov DAPR, #0 ;erstes Wert messen jb BSY, $ ;warten bis Wandlung beendet mov R0, ADDAT ;Wert in R0 Register jmp MESSUNG2 ;Sprung zur Messung2 MESSUNG2: mov ADCON, #10000001b ;Wandlung einzeln Kanal 1 mov DAPR, #0 ;zweites Wert messen jb BSY, $ ;warten bis Wandlung beendet mov R1, ADDAT ;Wert in R1 Register jmp ERMITTLUNG ;Sprung zur Ermittlung ERMITTLUNG: mov A,R0 ;RO in Akkumulator add A,R1 ;add R1 und A rrc A ;A durch 2 jmp ABFRAGE end