PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Wie frage ich in Assembler einen analogen Port ab?



Einsteiger
02.12.2003, 16:29
Wie frage ich in Assembler einen analogen Port ab? Einfach eine Adresse auslesen? Wenn ja, welche?

JanPeter
02.12.2003, 18:35
Hallo Einsteiger!
Das steht im Buch Motorola 68HC05 von Zekeriya Zengin.
Seite 85.
Erschienen im Heise-Verlag
ISBN3-88229-034-X

Frank
02.12.2003, 18:50
Ist nicht ganz so einfach wie mit digitalen Ports, da die C-Control eigentlich nur einen Analog/Digitalwandler hat. Über ein Statusregister werden diese intern umgeschaltet.
Hier ein kleines Beispielprogramm was die Verwendung zeigt:



0001 0000 ;Demonstriert das Auslesen eines analogen Ports
0002 0000 ;in Assembler
0003 0000 ;
0004 0000 ;http://www.Roboternetz.de
0005 0000 ;
0006 0000
0007 0000 AD_data .equ $08 ;AD Daten
0008 0000 AD_stat .equ $09 ;AD Statusregister
0009 0000 ADPort .equ $0 ;AD Port (0-7) der ausgelesen werden soll
0010 0000
0011 0101 .org $101
0012 0101 A6 20 lda #$20 ;Analoge Wandlung aktivieren
0013 0103 AB 00 add #ADPort
0014 0105 B7 09 sta AD_stat
0015 0107 0F 09 FD warte brclr 7,AD_stat,warte ;Warte bis Messung fertig
0016 010A B6 08 lda AD_data
0017 010C 43 coma ;Invertiere Akku
0018 010D ;Anlagoger Wert befindet sich nun im Akku
0019 010D
0020 010D .end
0021 010D
tasm: Number of errors = 0