;Erstmal vernünftig die BAUD ausrechnen .equ CLOCK = 4000000 .equ BAUD = 9600 .equ UBRRVAL = CLOCK/(BAUD*16)-1 sbi ucsrb,RXCIE sbi ucsrb,RXEN sbi ucsrb,TXEN Baudrate einstellen ldi temp, LOW(UBRRVAL) out UBRRL, temp ldi temp, HIGH(UBRRVAL) out UBRRH, temp ;und richtige empfangsroutine receive: push temp ; temp auf dem Stack sichern in temp, UDR cpi temp, '1' ;Eingelesener Wert = ASCII 1 ? brne not_led ;Wenn ja ;hier LED-anmach-zeug rein ;mach den LED kram rjmp ende ; und hau ab von hier not_led: ; wenn nö mov send, temp ; schick das zeug wieder zurück rcall transmit ende: pop temp ; temp wiederherstellen reti ; Interrupt beenden transmit: sbis UCSRA,UDRE rjmp transmit out UDR,send ret