Hallo, Ich habe einen Code zur Ansteuerung des bekannten NOKIA 6100 Farbdisplays, in AVR-Assembler, geschrieben. Wie das hald bei etwas fortgeschrittenen Anfängern so ist, funktioniert der Code nicht. Nun versuche ich schon seit einem Monat oder länger, den Fehler zu finden. Ich habe auch mehrmals in den anderen Foren über dieses Display gestöbert aber nichts gefunden was mir weiterhelfen konnte. Im Anhang ist mein Code als Textdatei. Ich hoffe die Profis unter euch oder sonst wer kann mir den/die Fehler zeigen und mir sagen was ich machen muss. Ich währe sehr Dankbar dafür. Ich benutze den ATmega8L (3.3V) mit 1MHz internem Takt. ~ Mfg. Lightning
meinst du einmal posten reicht nicht HIER IST DIE CODESAMMLUNG!!!
Hallo Wie sieht es denn nun aus mit dem EPSON Controller hat jemand eine funktionierende Version?? Würde erstmal gerne die hardware etsten (mega64) wenn jemand ein hexfile posten koennte oder zum epson eine lib hat waehre ich dankbar Gruss Jens
Aja sieh mal an wer da den EPSON Controller ansteuern will, der Jens Dinspel. Zuerst motzt er rumm weil ich hier frage ob mir jemand helfen kann, (ok 2mal posten is ned gut) und jetzte bettelt er um Codes. @Jens Selberschreiben
@Lightning Sorry, wegen dem erstem post ;) War mies drauf, Feuerwehr einsatz unfall 1 toter.. Aber ist es nicht so?? Hier ist die Codesammlung sollte eigendlich nur eine art Info sein und wollte dich nciht angreifen war eben etwas gereizt nich wegen dir.. Gruss Jens
@Lightning Hab gerade mal über deinen Code geschaut. Du versucht aus einem bedingten Sprung (nicht Call !) mit ret zurück zu springen: >brcs csub1 > >(...) > >csub1: >sbi disp_PORT, disp_data >ret Das ret springt nach dem 1. Bit aus deinem display_command - das ist aber wohl nicht gewollt. Beste Grüße Thomas
Hi!
Thomas hat völlig Recht und in der Daten-Sub machst du das selbe.
So sollte es aber erstmal hinhauen:
display_command:
cbi disp_PORT, disp_clk
cbi disp_PORT, disp_data ;kommando soll übertragen werden
sbi disp_PORT, disp_clk ;1. bit wird gelesen
ldi disp_counter, 0x08 ; noch 8 bit übertragen
dis_comand1:
cbi disp_PORT, disp_clk
lsl disp_cmd ;Bit ins carry schieben, MSB first
brcc csub2
sbi disp_PORT, disp_data
rjmp c_clk
csub2: cbi disp_PORT, disp_data
;Bit vorbereiten
c_clk: sbi disp_PORT, disp_clk
dec disp_counter
breq cnext
rjmp dis_comand1
cnext:
ret
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~
display_data:
cbi disp_PORT, disp_clk
sbi disp_PORT, disp_data ;daten sollen übertragen werden
sbi disp_PORT, disp_clk ;1. bit wird gelesen
ldi disp_counter, 0x08 ; noch 8 bit übertragen
disp_data1:
cbi disp_PORT, disp_clk
lsl disp_daten ;Bit ins carry schieben, MSB first
brcc dsub2
sbi disp_PORT, disp_data
rjmp d_clk
dsub2: cbi disp_PORT, disp_data
;Bit vorbereiten
d_clk: sbi disp_PORT, disp_clk
dec disp_counter
breq dnext
rjmp disp_data1
dnext:
ret
Ach nochetwas, wie schnell darf denn der "disp_clk" überhaupt
sein?(momentan 5Takte)
Viel Erfolg, Uwe
@ Thomas P. @ Uwe Hallo, Danke der Antworten und Infos !!! Kommen zwar n bisschen spät weils schon ne weile funktioniert aber trotzdem Danke. Ich hab da noch ne frage: Mit welchem programm convertiert ihr die bilder für die AVR Tabelle zum auslesen fürs display ??? Mfg. Lightning
@Uwe Datenblatt sagt: serial clock SCLK period (SCLK) 150ns. Also gut 6,6 Mhz. @Lightning Mit Hex Workshop (http://www.hexworkshop.com/) kann man aus Binärdaten C-Tabellen erstellen. Sollte mit Assembler auch gehen. Hatte auch mal eine kleine Ansteuerung in C gebastelt. Bilder kann man über UART als RGB-8-Bit RAW-Daten hochladen. Diese werden dann auf dem Atmel in das Display-Format umgerechnet. Den Source und ein paar Bilder von dem Display habe ich hier: http://thomaspfeifer.net/nokia_6100_display.htm Beste Grüße Thomas
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.