Hi Jon,
habs grad probiert, geht trotzdem net.
MfG
Genau. Die Zahlen müssen in "" sein. Also z.B.: Print "1"Zitat von coCo
jon
Hi Jon,
habs grad probiert, geht trotzdem net.
MfG
Ist Pind.2 überhaupt ein Interruptfähiger Pin?
jon
Ja, das is beim Tiny2313 Int0.
MfG
Gut.
Versuche mal zw. die Printbefehle 10ms Pausen zu setzten.
Dann sähe das Programm so aus:
Noch ne blöde Frage:Code:$regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 Waitms 100 Do Print "1" waitms 10 Print "1" waitms 10 Print "170" Wait 2 Print "1" waitms 10 Print "1" waitms 10 Print "70" Wait 2 Loop End
Hast du bei den Fusebits auch die 8MHz eingestellt?
Mehr finde ich im Moment nicht.
jon
Hi,
danke für deine Hilfe. Klappt aber leider nicht. Fusebits sind ok, Kommunikation mit dem PC klappt.
Es reicht schon wenn ich den TxD Pin des Mega8 mit dem RxD Pin des Tiny2313 verbinde oder sollte ich die beiden anderen auch miteinander verbinden (die bräuchte ich eigentlich nur wenn ich vom Tiny2313 etwas zum Mega8 senden will oder?)?
MfG
Die eine Leitung reicht. Mehr brauchst du ja nicht.Zitat von coCo
jon
Hat sonst vielleicht jemand noch eine Idee wieso es nicht klappt?
MfG
Hi,
ich hab jetzt versucht auf hardware UART umzusteigen. Allerdings funktionierts immer noch nicht
Hier mal mein Code vom Empfänger:
An Portd.1 hängt eine LED, um zu schaun ob die ISR überhaupt aufgerufen wird. Allerdings wird sie nicht aufgerufen, die LED ändert nicht ihren Zustand.Code:$regfile = "attiny2313.dat" $crystal = 8000000 $baud = 9600 Waitms 100 Config Servos = 4 , Servo1 = Portb.0 , Servo2 = Portb.1 , Servo3 = Portb.2 , Servo4 = Portd.6 , Reload = 10 Config Portb = Output Config Portd.6 = Output Config Portd.1 = Output Portd.1 = 1 On Urxc Onrxd Enable Urxc Enable Interrupts Servo(1) = 130 Servo(2) = 130 Servo(3) = 130 Servo(4) = 130 Dim I As Byte Dim Servo_data(2) As Byte I = 0 Do If I > 1 Then Servo(servo_data(1)) = Servo_data(2) I = 0 End If Loop Onrxd: Incr I Servo_data(i) = Udr Toggle Portd.1 Return End
Code vom Sender:
Ich weiß echt nicht mehr was ich machen soll. Es will einfach nicht klappen.Code:$regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 Waitms 100 Do Print "1" Waitms 10 Print "170" Wait 2 Print "1" Waitms 10 Print "70" Wait 2 Loop End![]()
![]()
Hoffe mir kann jemand helfen.
MfG
Fehlt bei den Prog für den sender nicht noch das "Startsignal"?
Du musst doch erst eine Zahl >1 senden, damit er in die IF-Schleife geht.
jon
Lesezeichen