Vizitator mike59 Postat Mai 24, 2010 Partajează Postat Mai 24, 2010 Sunt incepator in programarea microcontrolerelor si as avea nevoie de putin ajutor in ceea ce priveste programarea unui PIC 16F628. Am conectat acest microcontroler cu un LCD compatibil Hitachi HD44780. Am utilizat, mikrobasic ver. 7002 pentru a compila chiar exemplul dat in help-ul referitor la utilizarea bibliotecii LCD (4 bit interface). Am conectat microcontrolerul cum este specificat in acelasi help si anume DB4...DB7 la RB4...RB7, E la RB3, RS la RB2. Programat 16F628 cu urmatoarele instructiuni (ca in help)program Lcd_default_testdim text as char[20]main: TRISB = 0 ' PORTB is output Lcd_Init(PORTB) ' Initialize LCD on PORTB Lcd_Cmd(Lcd_CURSOR_OFF) ' Turn off cursor text = "mikroElektronika" Lcd_Out(1, 1, text) ' Print text at LCDend.Pentru PIC am selectat: XT_OSC, BODEN_off, CP_Off, Data_CP_Off, PWRTE_Off, WDT_Off, LVP_Off, MCLRE_Off fosc 4 MHZSi tot ce imi apare pe display, sunt cele 2 linii a cate 16 caractere activate... si atata tot.Pot sa stiu ce anume gresesc ? Ce este in neregula ?Va multumesc anticipat pentru ajutor. Link spre comentariu
francezu Postat Mai 24, 2010 Partajează Postat Mai 24, 2010 Daca apar ambele linii inegrite este posibil sa fie contrastul dat la maxim. Monteaza un semireglabil de ~10kohmi; La pinul 3 al lcd-ului legi cursorul semireglabilului iar capetele acestuia le legi la masa si +5V. Link spre comentariu
Vizitator mike59 Postat Mai 24, 2010 Partajează Postat Mai 24, 2010 Daca apar ambele linii inegrite este posibil sa fie contrastul dat la maxim. Monteaza un semireglabil de ~10kohmi; La pinul 3 al lcd-ului legi cursorul semireglabilului iar capetele acestuia le legi la masa si +5V.Am incercat cu un pot, asa cum ai sugerat, acelasi lucru. Ceea ce este ciudat este ca montajul se comporta ca si cum PIC-ul nu ar avea nicio treaba.Oricum, multumesc pentru sugestie ! Link spre comentariu
A_L_E_X Postat Mai 24, 2010 Partajează Postat Mai 24, 2010 Vezi sa nu fi inversat liniile de date intre ele. Si eu am avut liniile innegrite si aveam inversate RB5 cu RB6. Link spre comentariu
Liviu M Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 Pentru PIC am selectat: XT_OSC, fosc 4 MHZDin program rezulta ca folosesti ceas extern cu quarz/rezonator de 4MHz. Asa ai si tu in circuitul fizic, da? Link spre comentariu
Vizitator mike59 Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 Pentru PIC am selectat: XT_OSC, fosc 4 MHZDin program rezulta ca folosesti ceas extern cu quarz/rezonator de 4MHz. Asa ai si tu in circuitul fizic, da?Da, oscilatorul este cu quartz extern de 4 Mhz. Link spre comentariu
Liviu M Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 Cum controlul unui LCD nu e chiar ce ami simpla aplicatie cu PIC (ce-i drept nici cea mai complicata); ca sa izolezi putin problema poate ar fi bine sa vezi intai ca PIC-ul lucreaza (de ex. uneori, desi toate par in regula, oscilatorul nu porneste si atunci nimic nu merge). Pentru asta eu as incerca sa folosesc o iesire libera ca sa fac un LED sa palpaie cu o frecvanta rezonabila pentru ochiul uman (peioada de 500 ms - 1 sec). Daca asta merge poti cauta bubele in codul pentru LCD sau in legaturile cu LCD-ul. Link spre comentariu
francezu Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 @Liviu M a fost mai rapid, acelasi lucru vroiam sa zic si eu. Gasesti tot in help exemple pentru licurici cu led. Link spre comentariu
Vizitator mike59 Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 @Liviu M a fost mai rapid, acelasi lucru vroiam sa zic si eu. Gasesti tot in help exemple pentru licurici cu led.O ideie foarte buna, multumesc ! Am sa incerc si revin... Link spre comentariu
Vizitator mike59 Postat Mai 25, 2010 Partajează Postat Mai 25, 2010 @Liviu M a fost mai rapid, acelasi lucru vroiam sa zic si eu. Gasesti tot in help exemple pentru licurici cu led.O ideie foarte buna, multumesc ! Am sa incerc si revin...Deci, am adaugat pe portul B1, un licurici, care functioneaza bine mersi. Deci oscilatorul functioneaza. Trebuie sa spun ca la sugestia cuiva, am suspendat comparatoarele, adaugand in cod CMCON = 7 si intr-adevar, apar ceva semne firave, in sensul ca pe linia a doua, ultimul caracter (al 16-lea de pe linia a doua), la punerea alimentarii (+5v), in secventa, apar : o linie orizontala pe primul rand (cel de sus) al matricii caracterului activata, dupa care se activeaza toata matricea aferenta acestui caracter, iarasi aceasta upperline sa-i zic activata, dupa care tot caracterul se stinge si nu mai apare nimic. Vreo ideie despre ce se intampla ? Multumesc anticipat ! Link spre comentariu
Vizitator mike59 Postat Mai 30, 2010 Partajează Postat Mai 30, 2010 Este Ok ! Functioneaza ! Multumesc pentru ajutor ! Aveam un strap de la pinul 8 la masa. Asa ca si pentru alti doritori de a experimenta testele de LCD cu mikrobasic, functioneaza fara probleme cu 16F628. Mare atentie la conexiuni. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum