iulian2010 Postat August 3, 2011 Partajează Postat August 3, 2011 Texttolcd = Fusing(volt2 , "#.#") <<<<<< asta vreau sa modific sa nu mai apara 0.0, daor Cu Texttolcd = Fusing(volt2 , "#") <<<<<<doar un #, fara punct si fara al doilea #ai incercat?Se poate folosi asa daca nu deranjeaza punctul de la sfarsit.Texttolcd = Fusing(volt2 , ".") sauTexttolcd = Fusing(volt2 , "#.") Link spre comentariu
Cilibiu Postat August 3, 2011 Autor Partajează Postat August 3, 2011 Din cate stiu a doua varianta am incercato si tot nu vrea, trebuie neaparat #.#!!!Prima varianta nu am incercat, dar am incercat sa pun "0", si cere obligatoriu ca mai sus. nu cred ca merge cu "-" Link spre comentariu
iulian2010 Postat August 3, 2011 Partajează Postat August 3, 2011 Codul se compileaza cu ambele linii. Testeaza hexul in Proteus. Graphic font test 1.zip Link spre comentariu
Liviu M Postat August 3, 2011 Partajează Postat August 3, 2011 Se poate folosi asa daca nu deranjeaza punctul de la sfarsit. Texttolcd = Fusing(volt2 , ".") sauTexttolcd = Fusing(volt2 , "#.") Interesant, in helpul de la bascom scrie altceva (vezi postul meu anterior). Uite de-aia prefer c-ul. Link spre comentariu
iulian2010 Postat August 3, 2011 Partajează Postat August 3, 2011 Da, am vazut. Dar trebuie testat si hardware. Link spre comentariu
Cilibiu Postat August 4, 2011 Autor Partajează Postat August 4, 2011 Multumesc de ajutor, oricum vroiam fara si sa rezolvat.Am terminat ce miam propus sa fac, uitativa la topicul meu cu computer moto, si o sa intelegeti de ce am deschis eu topicurile astea! Link spre comentariu
Cilibiu Postat August 7, 2011 Autor Partajează Postat August 7, 2011 Am reventi cu o intrebare legata de COUNTER! eu am codul acesta : dim n as wordconfig portd.0= inputn=0doif pind.0=1 thenn=n+1locate 1,1lcd nend ifloopendIntrebarea mea este,cat de repede reactioneaza atmelul la aceasta comanda? Pe pinul d.0 voi avea inpulsuri intre 0 si 300hz, la 300hz va reactiona bine? fara sa sara vreun inpuls? Link spre comentariu
francezu Postat August 7, 2011 Partajează Postat August 7, 2011 In principiu trebuie sa vezi listing-ul generat de compilator, si pe baza insructiunilor asm sa calculezi perioada buclei do..loop. Apoi se calculeaza frecventa maxima detectata ca fiind: Fmax=1/2*Tloop, unde Tloop este perioada buclei. Codul nu mi se pare corect, nu detectezi nicicum palierul negativ al semnalului, si daca frecventa este mai mica decat cea limita, contorul se poate incrmenta de mai multe ori pentru acelasi impuls. Poate gresesc totusi, nu folosesc bascom, si nici Atmel. Link spre comentariu
Cilibiu Postat August 7, 2011 Autor Partajează Postat August 7, 2011 Pe pind.0 este legat o rezistenta de 1k la masa.Atmelu are quart de 8mhz, in main program do-loop nu am nici o intarziere bagata "wait", iar in main program am 400 randuri-comenzi, nu stiu in cat timp realizeaza o comanda! Dar ma gandesc ca totul depinde si de quart si ca ar fi formul asta: tcomanda=quart/400, unde tcomanda= in cat timp o realizeaza, quart unde este 8mhz, si 400 numarul de comenzi la total, deci ar veni tcomanda=800000/400, tcomanda=20khz , acum nu stiu daca am scris bine dar presupun, deci comanda va fi accesata de 20000 de ori intro secunda, am zis bine?Va rog corectatima daca am scris numa prosti! Link spre comentariu
francezu Postat August 7, 2011 Partajează Postat August 7, 2011 Eu faceam referire la bucla do...loop din codul pt counter, nu la bucla programului principal. Nu se calculeaza pe baza instructiunilor bascom ( limbaj de nivel inalt), pentru ca pot avea timp de executie variabil, in functie de parametrii, etc. Repet , trebuie sa vezi asm-ul generat de compilator. O instructiune asm se executa in unul sau mai multe cicluri masina, scrie in datasheet. Durata unui ciclu masina depinde de oscilatorul de tact, formula de calcul o gasesti tot in datasheet. Calculezi astfel durata buclei do..loop si cu formula din postul de mai sus afli frecventa limita.Mai exista o metoda: setezi compilatorul sa genereze fisiere cof/coff si folosesti Proteus pt simulare, avand astfel posibilitatea sa faci debug la nivel de cod sursa ( bascom). Mai departe setezi un breakpoint la inceputul buclei si vezi cat dureaza executia codului intre doua declansari succesive ale breakpoint-ului respectiv.Mai mult nu te pot ajuta, nu folosesc Atmel. Spor la calcule! Link spre comentariu
Cilibiu Postat August 7, 2011 Autor Partajează Postat August 7, 2011 Pai counterul este printre cele 400 de randuri, de acea am luat in calcul tot, eu aici am pus doar codul pentru counter.O sa vad in realitate cum e, este mai simplu in realitate,pun un generator de ton, setat la 300hz, si ii dau drumu pentru o secunda, in generator am sa setez tipul cat sa stea on, deci il voi seta la 1 secunda, iar dupa ce sa oprit generatorul vad pe afisaj daca am valoarea 300, asa e mai simplu!O sa mai caut si alte variante.Mersi de ajutor! Link spre comentariu
Liviu M Postat August 7, 2011 Partajează Postat August 7, 2011 Am reventi cu o intrebare legata de COUNTER!va reactiona bine? fara sa sara vreun inpuls?Cred ca cea mai potrivita solutie e folosirea intreruperilor.Banui ca printre pinii controllerului sunt si unii care sa seteze o intrerupere in cazul in care isi schimba starea. Nu-ti ramane decat ca atunci cand vine o intrerupere sa incrementezi o variabila si din cand in cand sa testezi variabila respectiva. Link spre comentariu
Cilibiu Postat August 7, 2011 Autor Partajează Postat August 7, 2011 Pai deja ajung ajung la codul de frecventmetru!Din primul prost si pana acum nu mia dat nimeni un exemplu de counter, asa ca mam decis sa gandesc singur si am gasit solutia asta, daca merge bine daca nu revin la plansa de lucru! Link spre comentariu
costyy86 Postat Aprilie 30, 2016 Partajează Postat Aprilie 30, 2016 Interesant topic. Ca sa nu mai deschid alt topic, M-am inspirat din acest topic pentru a face un Volt-Ampermetru cu display grafic,insa am nevoie de font 12x12 si nu gasesc niciunde,am incercat sa creez cu un soft, dar acesta nu salveaza in format .font. Softul este GLCD Font Creator 1.2.0. Ma puteti ajuta cu un fisier ceva? Multumesc. 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