Hi,
ich leg mir gerade die Karten mit dem Empfang von MIDIdaten
am ATtiny2313 über die USART.
Der Compiler meckert, er könne UCSRB nicht beschreiben.
Desgleichen kennt er wohl das Registerbit Ucsra.rxc nicht.
Der Code läuft prima auf dem ATMega8.
Ich habe die Datenregister UCSRA/B/C in den Datenblättern miteinander verglichen.
Bis auf ein Bit (Bit7 URSEL in Register C gibts beim Tiny nicht) entsprechen die sich.
Weiß da wer was?
thx,Code:$regfile = "ATtiny2313.DAT" 'Funktioniert genausowenig mit der 2313DEF.DAT $crystal = 20000000 Ucsrb = &B00011000 'Senden und Empfangen ein. Mag der Compu Ucsrc = &B10000110 'Konfiguration:8N1,asynchron. Ubrr = 39 'Baudratencode für 31250Baud bei 20MHz Ddrd = &HFE 'MIDI RX-Pin auf Eingang schalten Portd.0 = 1 'und Pullup enablen. Ddrb = &HFF 'Komplettes Datenrichtungsregister "b" auf Ausgang Dim Status As Byte 'Deklarationen Dim Note_on As Byte Dim Note_off As Byte Dim Note_value As Byte Dim Velo_value As Byte Wait 5 'Warten, bis der Poly61 gebootet hat Portd.5 = 1 'Debugging-LED einschalten ' Do If Ucsra.rxc = 1 Then Status = Udr If Status = &H90 Then While Ucsra.rxc = 0 Wend Note_value = Udr While Ucsra.rxc = 0 Wend Velo_value = Udr If Velo_value > 0 Then 'damit hätten wir erstmal alle Infos, um eine Taste zu betätigen 'Kopfschmerzen bereiten mir an dieser Stelle noch 'die unterschiedlichen Möglichkeiten des Note off. end if End If End If Loop Fehlermeldungen: Error : 46 Line : 3 Assignment error [UCSRB: 0 &B00011000: 112] , in File : C:\WINDOWS\DESKTOP\POLY61MIDI\POLY61MIDI\POLY61MIDI.BAS Error : 31 Line : 17 Invalid datatype [ 0] , in File : C:\WINDOWS\DESKTOP\POLY61MIDI\POLY61MIDI\POLY61MIDI.BAS Error : 31 Line : 20 Invalid datatype [ 0] , in File : C:\WINDOWS\DESKTOP\POLY61MIDI\POLY61MIDI\POLY61MIDI.BAS Error : 31 Line : 23 Invalid datatype [ 0] , in File : C:\WINDOWS\DESKTOP\POLY61MIDI\POLY61MIDI\POLY61MIDI.BAS
tholan







Zitieren

Lesezeichen