Sari la conținut
ELFORUM - Forumul electronistilor

Atmega328PU AREF


Gilbert Sparios

Postări Recomandate

Cand am inceput sa folosesc acest microcontroler, am vazut cam peste tot in scheme pinul AREF conectat la VCC impreuna cu AVCC. Capacitor de 100nF la masa din punctul comun. Si-am folosit in felul asta destul de multe proiecte pana cand astazi am gasit si in DS si in unele scheme si pe forumuri, cum ca AREF se conecteaza doar la masa printr-un capacitor de bypass de 100nF. Poate ca veti spune "cam tarziu te-ai uitat in DS". Adevarat, dar nu am avut prea multa experienta atunci si daca au functionat bine nu mi-am pus problema vreodata sa caut ceva ce nu avea problema..

 

Acum...nu mai stiu cum e de fapt bine. Si ce neajunsuri au proiectele care le-am facut in felul descris.

Am ajuns insa sa caut cand azi un proiect mi-a luat-o pe ulei din cauza unui ADC care citea valori ciudate, fata de restul. Care s-a rezolvat cu o simpla reconectare la tensiune dar....nu ma multumeste faptul ca s-a intamplat.

 

As vrea sa stiu cum conectati voi si unde pinul AREF? Evident, in cazul in care nu ati folosit surse de referinta.

Editat de Gilbert Sparios
Link spre comentariu
  • Răspunsuri 5
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Gilbert Sparios

    3

  • cimitavita

    2

Top autori în acest subiect

Daca nu folosesti ADC-ul , nu conteaza ce faci cu pinul AREF.
Poti sa-l legi la Vcc , Vss sau sa-l lasi liber.
Sau poti sa-i pui si un capacitor daca vrei  sa arate schema si cablajul altfel.


LE: sau poti sa-l folosesti pe post de resistenta Pull-down.:)
Neprogramat intern, pinul AREF se comporta ca o resistenta de 33k conectata la masa.

 

Editat de Vizitator
Link spre comentariu

Vezi datasheet ATMEGA328P, pagina 206 şi modul cum se selectează tensiunile din REFS0 şi REFS1 (acelasi datasheet pagina 217). 
Vezi şi alte microcontrolere ATMEGA unde se dau detalii mai multe.

 

Default, REFS0 şi REFS1 sunt 0
Dacă REFS0 = 0, pinul AREF este deconectat de la ADMUX şi îl poţi lega unde vrei. E preferabil să îl legi la Vcc.

 

Dar dacă REFS0 = 1, atunci pinul AREF nu îl mai legi nicăieri. Doar pui condesatorul de decuplare şi atât.


Cu REFS0 = 1 şi REFS1 = 0, pinul AREF este legat intern la AVcc, aşa că nu are rost să îl mai legi odată la Vcc (iar dacă îl legi la masă, faci buba :rade:). Trebuie doar condesatorul de decuplare şi atât.

 

Cu REFS0 = 1 şi REFS1 = 1, pinul AREF e conectat la referinţa înternă de 1,1V şi dacă îl legi la Vcc o să ai un consum în plus şi chiar poţi zăpăci referinţa internă de 1,1V. Şi în cazul ăsta se pune numai condesatorul de decuplare pe pinul AREF.

Editat de cimitavita
Link spre comentariu

folosind arduino IDE, toate proiectele ce nu au avut referință externa le-am lasat by default dar nu stiu valorile REFS0 si REFS1. 

 

O sa caut mai multe informații. Dar pana aflu complet.. REFS0/REFS1 sunt fusebiti sau din soft se preseteaza? 

 

bănuiesc poate greșit ca se schimba din soft cu analogReference()

 

L. E: cred ca am înțeles câte ceva.. in special ca daca nu am folosit analogReference() IN arduinoIDE AREF putea fi neconectat sau la Vcc tot aia e. 

 

Adică eroarea de azi nu are legătură cu legatul pinului AREF la Vcc. 

Editat de Gilbert Sparios
Link spre comentariu

da' greu e să citeşti.

La ATMEGA328, REFS1 si  REFS0 sunt bitii 7, respectiv 6, din ADMUX (adresa 7Ch) din memoria SFR sau regiştri cum o denumesc ăştia mai nou.

Tot în ADMUX ai ADLAR din care setezi modul cum convertorul AD îţi dă rezultatul, şi încă 4 biti din care stabileşti intrarea AD. Vezi pagina 217 şi 278, ATMEGA328P

Dar dacă nu te atingi de REFSx, la pornire ei sunt 0, iar referinţa internă e oprită. Programul nu trebuie să modifice biţii REFSx atunci când selectezi intrarea AD decât dacă modifici tensiunea de referinţă.

 

Fusebiti sunt cu totul în altă parte, şi nu au nici o legătură cu REFSx.

Link spre comentariu

mulțumesc de răspunsuri @cimitavita. 

ma întreb totuși ce oare s-a întâmplat acolo cu valorile alea.. pentru ca schema pentru fiecare intrare in analog este similara cu celalalte intrari.. niste NTC-uri legate la masa.. din păcate nu reușesc sa mai reproduc eroarea.. sa înțeleg ce si cum.. 

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