Hallo,

hab mir ein script zusammen gestöpselt, leider hab ich irgendwo einen fehler drin.
es ist eigentlich ganz simpel. ich möchte nur über die serielle Schnittstelle einen Wert von 0-255 an die C-control schicken, dort diesen Wert über DA[1] ausgeben und dann im selben Moment am AD[1] wieder einlesen. Dann den Wert von AD[1] zurück über die serielle.

Habs mit folgendem ASM probiert, vielleicht kann mir jemand einen kleinen Tipp geben.

lg sebastian

--------------------

eingang equ $0A ; DA[1]
addata equ $08
adstat equ $09
ausgabe equ $12 ; zurück über serielle Schnittstelle
wert equ $11 ; Datenregister

baudrate equ $0D ; Baudratenregister
cr1 equ $0E ; Controlregister 1
cr2 equ $0F ; Controlregister 2
status equ $10 ; Statusregister



org $101
lda #$20
sta adstat

seriell lda #$C0 ; 9600 Baud
sta baudrate
lda #$00 ; keine Interrupts
sta cr1
lda #$0C ; Sender und Empfaenger ein
sta cr2

main


jsr readcom ; gehe zu readcom
sta eingang ; schicke den Wert an da[1]
bra adwert ; gehe zu adwert


readcom brclr 5,status,readcom ; warte auf bit 5 =1
lda wert ; lese wert ein
rts ; zurück

writecom brclr 7,status,writecom
sta addata
jsr main

adwert brclr 7,adstat,adwert
coma
lda addata ; ad-wert einlesen
jsr writecom ; gehe zu writecom