Werbung
Hi
So ich bin jetzt hin gegangen und habe die RW Leiterbahn durchtrennt
und den Fuenften Pin am LCD (vom Poti kontrast) mit einem Kabel auf Gnd gelegt jetzt funktioniert es ohne verrenkung.
Ich habe mir die Bilder oben angesehen, das ist ein ATMEGA32 8PUCode:$regfile = "m32def.dat" $crystal = 16000000 $baud = 4800 $hwstack = 32 'hardware stack $swstack = 32 'software stack $framesize = 44 'frame space Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.4 , Db6 = Porta.5 , Db7 = Porta.6 , E = Porta.2 , Rs = Porta.0 Waitms 50 Config Lcd = 20 * 2 Waitms 50 Cursor Blink Waitms 25 Main: Cls Lcd "Duisburg"; Wait 10 Cls Lcd "Rheinhausen" Wait 10 Goto Main
also nicht fuer 16 Mhz geeignet. Das muß dann ein ATMEGA32 16PU sein!!!
Gruß raggy
So welch Freude ich habs jetzt:
Damit funktioniert es denke es liegt an den 40msCode:Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.4 , Db6 = Porta.5 , Db7 = Porta.6 , E = Porta.2 , Rs = Porta.0 Config Lcd = 16 * 2 Config Pina.1 = Output Porta.1 = 0 Waitms 40 Initlcd Cls Cursor Off Lcd "0123456789012345" Lowerline Lcd "ABCDEFGHIJKLMNO7"
Ich bedanke mich bei allen die ihre Zeit in den Threat gesteckt haben \/
Ich hab mal noch eine Frage:
Wieso bringt der mir bei dem Code:
Nur kryptische zeichen in meinem Terminal? baudrate und sowas stimmt alles, hat da jemand ne idee?Code:Do Dim A As Byte , B1 As Byte , C As Integer , S As String * 4 A = 1 Print "print variable a " ; A Wait 1 Loop End
@daywalker008:
Kann alles mögliche sein, wenn du nicht das ganze Prog postest.
Nimm auf jeden Fall die DIMs, mit denen du die Variablen dimensionierst, aus der DO-LOOP-Schleife raus.
Gruß Dirk
Hallo daywalker008
Hallo hast Du den letzten Eintrag von mir gelesen?
Wenn Du den Atmega wie im Foto drin hast kannst Du hoechstens mit
8Mhz arbeiten, Atmega32 8PU ist auf dem Foto! zum anderen sind die Atmega im neuzustand intern mit 1Mhz getaktet und der Tackt ist nicht so genau wie extern.(Abweichung durch Temperatur etc.)
Das kann schon zu Zeichensalat fuehren. Eventuell muß das Fusebit richteg gestellt werden.
Hast Du mal in RN-Wissen durchgeschaut.
Gruß raggy
Also der Takt beträgt eigentlich 6 Mhz, ist nen externer Quarz dran ich hoffe der ist auch eingeschaltet( Fusebits)
Hoffen? Must du schon wissen!... ist nen externer Quarz dran ich hoffe der ist auch eingeschaltet( Fusebits)
Wie sind denn die Fusebits eingestellt?
Schreib doch ein Testprogramm (so ähnlich wie dein letztes hier gepostetes Programm), das im 1-Sekunden-Rhythmus eine LED blinken läßt. Wenn das nach Augenmaß hinkommt, dann dürfte ja alles stimmen. Dazu must du natürlich im Programm $crystal korrekt (bei 6 MHz: $crystal = 6000000) angeben.
Gruß Dirk
ja das kommt auf jeden fall hin, komme leider erst am freitag wieder an das Board ran ich schau dann nochmal
Hallo daywalker008
Das Programm ist im Simulator gelaufen.
tu Dir einen gefallen und seh dir mal RN-Wissen an.Code:$regfile = "m32def.dat" 'Atmega32 $crystal = 6000000 'Frequenz 6Mhz $baud = 9600 'Baudzahl 9600 RS232 $hwstack = 32 'hardware stack $swstack = 32 'software stack $framesize = 32 'frame space ' Am Terminal einstellen Com1 oder Com2 ( 3 oder4) 9600baud 8 Datenbit,Parität keine,Stoppbits =1,Flußsteuerung = keine ' Dim A As Byte , B1 As Byte , C As Integer , S As String * 4 Dim A As Byte Dim B1 As Byte Dim C As Integer Dim S As String * 17 A = 1 C = 1234 S = "Ordnung muß sein!" Do Print "print variable A " ; A Waitms 50 'pausen brauchen nicht sein! Print S Waitms 50 Print C Wait 1 Loop End
oder dies Forum, erspart Dir viel frust,mann lernt aus den fehlern anderer
viel,mann muß das Rad nicht immer neu erfinden!
So habe ich vor einem Jahr auch angefangen.
Gruß raggy
Lesezeichen