Sari la conținut
ELFORUM - Forumul electronistilor

Utiliz iesirilor din PORTA impreuna cu citirea ADC pe PIN0


claudio

Postări Recomandate

Am o nedumerire: pe un ATmega32 cand se foloseste ADC, imi este restrictionat accesul la tot portul A?Mai exact, am implementat un senzor de lumina conectat la PORTA pin 0 adica la ADC0.Toate functioneaza ok, pana sa integrez functia in proiectul mare.Acolo am o intrerupere de tip CTC (ISR(TIMER1_COMPA_vect)) care imi activeaza succesiv cate o iesire din portul A (exceptand PIN0), dar o ia tare razna.O idee de unde sa incep debugging?

Link spre comentariu
  • Răspunsuri 3
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • claudio

    2

  • Liviu M

    1

  • benutzu

    1

Zile populare

Top autori în acest subiect

Am gasit greseala :da dar poate cineva sa-mi explice si de ce o lua razna uC-ul? :jytuiyu

 

deci am definit la inceputul programului variabila adc_temp

uint16_t adc_temp[]={};

apoi in functia pentru calculare media am facut:

for (uint8_t adc_index=0; adc_index<20; adc_index++)	{		adc_temp[adc_index]=adc_temp[adc_index+1];	}

abia dupa ce am definit astfel variabila mi-a mers:

uint16_t adc_temp[20];
Link spre comentariu

Dimensiunea unui vector se poate da, la declarare, in doua moduri:

tip vector[dimensiune]; 
sau

tip vector[] = {"elemente initializate, separate prin virgula"};

In cel de-al doilea caz, dimensiunea vectorului e dat de numarul de elemente intre acolade. In cazul tau intre acolade ai fix 0 elemente, asa ca probabil ai un vector caruia compilerul nu-i aloca nici un fel de memorie (si se comporta ca un pointer spre cine stie ce colt de memorie).

Cel putin asa-mi iese mie cand vad codul tau, dar mai asteapta si alte pareri (care, de altfel, ma intereseaza si pe mine).

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