Sari la conținut
ELFORUM - Forumul electronistilor

Voltmetru/Ampermetru cu PIC 16F877A


Postări Recomandate

Sa ne lamurim: tu vrei sa coMpilezi. Trebuie creat un proiect in MikroC.Poti pune codul din pagina 31 in proiectul de ti l-am atasat eu. Doar sa denumesti fisierul exact cum i-am zis eu.Eu sunt la munca, nu pot compila acuma.Ca sa am codul, ala de merge de la pagina 31, pune aici linkul sau numarul de post.

Link spre comentariu

Merci Liviu, caci de la OP ... si eu am fost naiv sa-i cer sa creeze un proiect si sa coMpileze.

 

Codul asta nu pare diferit de cel de l-am coMpilat inainte.

 

Robert78, daca iar nu merge cu temperatura, fiind o comunicatie 1 wire care este dependenta de frecventa (poate nu in MikroC), poate mai confirmi odata valoarea quartzului tau.

VA16F877aRev2.rar

Link spre comentariu

acuma e ok si temperature si adc-ul si cred ca afisarea temperaturii gresita cu primul soft copilat venea de la rezolutie deoarece in primul soft care l-am atasat eu rezolutia era cu 12bit(const unsigned short TEMP_RESOLUTION = 12;   // Resolution of used DS18x20 sensor) iar in softul postat la pagina 31 rezolutia este de 9bit( "const unsigned short TEMP_RESOLUTION = 9;   // Resolution of used DS18x20 sensor") Si la montaj am folosit sensor de temperatura DS1820 care cum am citit in datashet are rezolutia de 9-bit.

Multumesc pentru ajutor si imi cer scuze daca am fost uneori cam stresant

acuma e ok si temperature si adc-ul si cred ca afisarea temperaturii gresita cu primul soft copilat venea de la rezolutie deoarece in primul soft care l-am atasat eu rezolutia era cu 12bit(const unsigned short TEMP_RESOLUTION = 12;   // Resolution of used DS18x20 sensor) iar in softul postat la pagina 31 rezolutia este de 9bit( "const unsigned short TEMP_RESOLUTION = 9;   // Resolution of used DS18x20 sensor") Si la montaj am folosit sensor de temperatura DS1820 care cum am citit in datashet are rezolutia de 9-bit.

Multumesc pentru ajutor si imi cer scuze daca am fost uneori cam stresant

Link spre comentariu

Ai testat si scurtul? E bun pragul?Nu ai fost stresant, ci doar ti-a trebuit timp sa raspunzi. Daca ai raspuns. Important e sa dai cat mai multa informatie.Imi pare bind ca esti multumit. Sa-l stapanesti sanatos!LE: ceva merita precizat. Am inteles care e diferenta intre == si = in C gratie schimbului de mesaje din postul Raspberry Pi cu PWM. Multumesc Liviu si matzah. Zic asta ca sa inteleaga oricine, cum cu cunostinte sumare de C poti intelege si modifica un cod. Totul e sa vrei si sa citesti, din cand in cand. In final ajungi sa faci tu coduri simple. Cam asa incepe totul, cu pasi mici.

Editat de thunderer
Link spre comentariu

am raspuns tirziu deoarece nu am avut net.Scuze inca odata.

Da e ok acum totul. De acea am si cerut ajutor pe forum pentru ca vreau sa invat sa ma un pic de habar cu programarea cel putin sa pot copila un soft schimbarea unui mesaj de intimpinare la inceput si in timp poate sa fac si eu un cod mai simplu.Dar de ce nu pot eu copila deocamdata tot nu inteleg nu o fi bun programul pe care il am?? MikroC Pro For Pic v.6.0.0

Ori imi da erori o gramada ori acaesta eroare;

0 1501 Specified search path does not exist: 'C:Program FilesMikroelektronikamikroC PRO for PICdefs' 0 1501 Specified search path does not exist: 'C:Program FilesMikroelektronikamikroC PRO for PICUsesP16' 0 1501 Specified search path does not exist: 'E:MikroCVA16F877a' 0 1139 Available RAM: 352 [bytes], Available ROM: 8192 [bytes] 0 122 Compilation Started __Lib_Delays.c123 123 Compiled Successfully __Lib_Delays.c0 126 All files Preprocessed in 16 ms 0 122 Compilation Started MyProject.c574 123 Compiled Successfully MyProject.c0 127 All files Compiled in 78 ms 0 1144 Used RAM (bytes): 88 (25%)  Free RAM (bytes): 264 (75%) Used RAM (bytes): 88 (25%)  Free RAM (bytes): 264 (75%)0 1144 Used ROM (program words): 4345 (53%)  Free ROM (program words): 3847 (47%) Used ROM (program words): 4345 (53%)  Free ROM (program words): 3847 (47%)0 125 Project Linked Successfully MyProject.mcppi0 128 Linked in 265 ms 0 129 Project 'MyProject.mcppi' completed: 484 ms 0 103 Finished successfully: 28 Feb 2015, 15:02:50 MyProject.mcppi

 

ce nu fac bine oare ??? 

Link spre comentariu

Am inteles care e diferenta intre == si = in C

== si = sunt o sursa importanta de erori in C, pentru ca e usor sa scrii if (a=0) in loc de if (a==0) ;  fiind ambele expresii corecte, compilatorul nu genereaza erori (eventual warnings).

Una din metodele folosibile pentru evitarea lor e ca atunci cand testezi cu o constanta sa "scrii invers" (cum a facut core in topicul cu butonul):

if (0 == a)

Expresia de mai sus e corecta (compari o constanta cu un numar) si compilatorul e multumit, pe cand expresia:

if (0=a)

genereaza eroare la compilare pentru ca nu poti aloca o valoare unei constante.

Trucul de mai sus nu functioneaza in cazul a doua variabile, alocarea fiind OK in ambele sensuri.

 

@ROBERT78 - cred ca ai probleme cu instalarea mikroc. Din mesajele de eroare, nu gaseste unele biblioteci (search path does not exist).

Editat de Liviu M
Link spre comentariu

Pai erorile lui Robert sunt relative la locatiile pe PC ale programului. Ale lui nu sunt ca ale mele (normal, nu?!). Dar in final coMpileaza bine din ce vad eu.Liviu, ca de obicei imi faci placerea sa-mi dai explicatii pertinente. Multumesc!ROBERT: te rog corecteaza COMPILA in loc de COPILA.

Editat de thunderer
Link spre comentariu

locatiile pe PC ale programului. Ale lui nu sunt ca ale mele

I-ai trimis tot proiectul tau? In cazul asta, sunt sanse sa ajute un clean inainte de compilare (nu stiu cum se genereaza unul in mikroc).@VM: merci, nu stiam pagina. Nu mai stiu de unde am invatat "conditiile yoda". Editat de Liviu M
Link spre comentariu

Am vrut sa vad ce ar putea sa nu mearga asa ca:

- am descarcat ultima varianta de mikroc de la mikroe de pe site (am fost placut impresionat de dimensiunea fisierului, de la microchip trebuie descarcate cateva sute de mega)

- am instalat mikroc. Am avut grija sa instalez toate bibliotecile de functii

- am pornit mikroc

- am creat un proiect nou. Cand m-a intrebat, am ales controllerul (16F877), am ales frecventa quarzului am trecut mai departe cand m-a pus sa import fiesier, am pus numele proiectului testElforum

- cand m-a intrebat, am fost de acord sa configurez chipul (tipul de oscilator (HS), watchdog...) si am apasat ok

- in fereastra testElforum.c am sters codul pus acolo de mikroc, am copiat codul de la pagina 31 si l-am introdus in fereastra testElforum.c

- am compilat proiectul si... mi-a dat demo limit, da' in rest n-au fost probleme cu codul.

Link spre comentariu

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 cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări