peshte Postat Aprilie 27, 2007 Partajează Postat Aprilie 27, 2007 Mi-am luat recent un LCD alfhanumeric 20x4. Folosesc Proton PIC Basic pt simplitate. Daca sa zicem declar o variabila "A" ca fiind byte, si ii dau o valoare, sa zicem "2", si incerc sa o afisez pe LCD cu comanda "print a" ori "print at 0,0,a", imi va afisa corespondentul in ASCII a valorii pe care o contine "A". Eu vreau sa afiseze pur si simplu valoarea care se afla in variabile "A".Am luat helpu si l-am citit, da nu i-am dat de cap. Idei? Link spre comentariu
Elef Postat Aprilie 27, 2007 Partajează Postat Aprilie 27, 2007 Convertesti valoarea din A in BCD(trebuie sa iti iasa 3 octeti, cele 3 cifre ale numarului) dupa care fiecare cifre o aduni cu 0x30 parca(verifica la codurile ascii) si numarul obtinut il afisezi( asta o faci ca sa obtii codul ascii al cifrei) .A a fost considerat ca 1 byte. Link spre comentariu
MirceaM Postat Aprilie 27, 2007 Partajează Postat Aprilie 27, 2007 Sa consideram ca ai variabila A pe 1 byte, cu valoarea 0x81. Aceasta scriere cu 0x in fata vrea sa spuna ca este vorba de baza 1681, in baza 16este totuna cu10000001, in baza 2si este totuna cu129 in baza 10 (o suta doua zeci si noua).Pentru afisare pe LCD este necesar sa se intample transformarea lui A (1 byte) in 3 bytes si anume:0x31 (codul ASCII al lui 1)0x32 (codul ASCII al lui 2)0x39 (codul ASCII al lui 9)iar acesti 3 octeti sa fie trimisi, in aceasta ordine catre LCD, cu frunctia specifica pentru treaba asta (trimitere byte catre LCD).Este posibil sa nu fie nevoie de 3 bytes insa acesta este numarul maxim.Cea mai mare valoare a lui A este 0xFF, adica 11111111 in baza 2, adica 255 in baza 10 (daca este vorba de "unsigned").In acest caz cei 3 octeti vor fi: 0x32 (codul ASCII al lui 2)0x35 (codul ASCII al lui 5)0x35 (codul ASCII al lui 5)Aceste transformari trebuie neaparat sa se intample. Ca intr-un anumit limbaj scrii un "print" anumit si face cam toata treaba (deci nu sunt evidente transformarile mentionate) asta este altceva. Link spre comentariu
d2134 Postat Aprilie 27, 2007 Partajează Postat Aprilie 27, 2007 Foloseste modificatorul DEC la comanda PRINT Vezi aici: http://www.compile-it.com/protonds/proton_ds_userguide.pdf pag. 299 si urmatoarele. Link spre comentariu
peshte Postat Mai 3, 2007 Autor Partajează Postat Mai 3, 2007 Multam de raspunsuri.Cu 'print dec a,"" ' sau 'print at 1,1,dec a,"" ' am mers perfect. Link spre comentariu
Bamse Postat Mai 5, 2007 Partajează Postat Mai 5, 2007 poti face si asa print at 2,1,"Uintrare->",@ tensiuneunde tensiune este variabila si @ pui sa afiseze continutu variabilei :smt006 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