Gerne wird vergessen, dass der MC per default auf 1 MHz (interner RC-Oszillator) läuft, wenn man die Fuses nicht entsprechend setzt hilft da auch der 16 MHz Quarz nichts.
Werbung
Gerne wird vergessen, dass der MC per default auf 1 MHz (interner RC-Oszillator) läuft, wenn man die Fuses nicht entsprechend setzt hilft da auch der 16 MHz Quarz nichts.
Dass ich die Fuses nicht verändert habe stimmt leider nicht ganz....! sorry
Ich habe gleich am Anfang in den Fusebit-Einstellungen - als einzige Änderung - die "Fusebit KLA987" gemäss den Angaben im RN-Control Manual auf "111111:Ext. Crystal" umgestellt.
Interessant ist übrigens auch, dass im Simulator-Mode des Basic Compilers die Print-Befehle nicht angezeigt werden.
Könnte da ev. die Ursache sein, dass via RS232 gar keine Daten zum PC gelangen?
Hallo Fritz,
Wenn Terminalemulator im AVR- Programm dunkel bleibt, nimm als erstes mal ein externen Terminalemulator. Ich lege mal einen bewährten in Anhang. Dann sehen wir weiter wenn keine Zeichen ankommen.
Wichtig ist nur die COM- Portauswahl im Terminal muss stimmen. Wird Mist angezeigt dann liegt es an der Baudrate. Kommen auch keine Zeichen müssen wir die Fuses Einstellungen abgleichen und erst dann prüfen wir ob es ein Fehler in der Hardware ist.
Mit freundlichen Grüßen
Fred
Hallo Fred
Besten Dank für die schnelle Antwort und das angefügte Terminalprogramm.
Die Hoffnung war gross, dass ich mit deinem Terminalprogramm endlich einen Schritt weiterkomme....
Leider bleibt der Bildschirm weiterhin dunkel!
Bei weiteren Tests habe ich heute festgestellt, dass das Bascom-interne "Simulations-Modul" immer dann stoppt, sobald es auf einen Wait- oder Sound-Befehl trifft.
Das sehr einfache Programm stoppt also nach dem ersten Print Befehl.
Print "Hello World"
Wait 1
Print "Hello Schweiz"
End
Könnte das ev. auf falsche Fusebit Einstellungen hinweisen?
Im Anhang findest du meine Fusebit-Einstellungen.
Mit den KO kann ich ürigens am RS232-Ausgang des RN-Control feststellen, dass dort ein Signal gesendet wird.
Was das für Daten sind, sehe ich natürlich nicht. Im Terminalprogramm sollten somit doch mind. "wilde Zeichen" erscheinen....
MfG
Fritz
![]()
Hallo Fritz,
wenn Du am RS232-Ausgang Signale hast sollte die Fusebit Einstellung OK sein.
Oft liegt der Fehler beim COM- Kabel. Ein Nullmodemkabel funktioniert nicht TX/RX sind zum PC gedreht.
Also prüfen ob es wirklich ein 1:1 Kabel ist.
Hast du nur ein kleines Testprogramm dann sende es bitte komplett. Die Header Einstellungen sind für unsereins wichtig zu sehen, wie bestimmte Register eingestellt sind.
Beispiel für Test:
$regfile = "m32def.dat" ' specify the used micro
$crystal = 16000000 ' used crystal frequency
$baud = 9600 ' use baud rate 9600
$hwstack = 32 ' default use 32 for the hardware stack
$swstack = 32 ' default use 32 for the SW stack
$framesize = 40
‚Schleife alle 2 Sekunden neu senden.
Do
Print "erstallt am : " ; Version(1)
Print "Version Code : " ; Version(3)
Wait 2
Loop
End
Mit $baud =9600 reservierst Du die Pins PD0 und PD1 als UART mit 9600 legst Du die Rate fest die auch so im Terminal eingestellt werden muss usw.
PS. bin auch fredlich1
Gruß
Fred
Hallo Fred
Deine Hilfe ist grossartig. Vielen Dank
Leider ist mein persönliches Timing für dieses Thema schlecht gewählt!
Wir verreisen heute für 2 Wochen in die Ferien.
Ich bin zwar während dieser Zeit via dieses Forum jederzeit erreichbar, aber Tests am RN-Control kann ich dort leider nicht machen
Sehr gerne würde ich danach nochmals auf dich zukommen (ab 23.09.15)
Das RS232-Kabel habe ich schon mehrmals kontrolliert. Es ist OK!
Nochfolgend findest du das komplette (sehre einfache) Listing womit ich meine Tests ausführe.
Nochmals herzlichen Dank für deine Unterstützung
LG Fritz
'************************************************* ******************************
'Hello Schweiz
'03.07.2015
'************************************************* ******************************
$regfile = "m32def.dat" 'Controllertyp
$hwstack = 32 'Hardware-Stack
$swstack = 32 'Software-Stack
$framesize = 32 'Frame
$crystal = 16000000 'Quarzfrequenz
$baud = 9600 'Baudrate für RS232
'************************************************* ******************************
'-----Deklarationen-----
Config Portd.7 = Output
'************************************************* ******************************
'-----Programm-----
Do
Sound Portd.7 , 262 , 2548
Print "Hello World"
Wait 1
Print "Hello Schweiz"
Sound Portd.7 , 523 , 1274
Wait 2
Loop
End
Hallo Fritz,
wünsche geruhsame Urlaubstage. Schalte ab und entspann dich. Bin mir sicher das wir den Fehler finden werden.
Mit freundlichen Grüßen
Fred
Lesezeichen