Referenční napětí
- SkullKeep
- Příspěvky: 291
- Registrován: 23 srp 2017, 18:51
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Proč? Jestli to udělá podle VCC 3,3V a AREF 2V tak bude mít velkou nepřesnost. Vím mám chybu v tom AVcc=Aref=Vcc±0,3V, takže při Vcc 3,3V může být maximálně Aref=AVcc= 3V-3,6V.
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Question :?:](./images/smilies/icon_question.gif)
![Arrow :arrow:](./images/smilies/icon_arrow.gif)
![Geek :geek:](./images/smilies/icon_e_geek.gif)
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Nějak ti nerozumím.
Abychom si to ujasnili, pro Arduino můžeme říct, že vždy platí AVCC=VCC protože jsou tyhle piny spojený dohromady.
Aref=AVcc= 3V-3,6V - fakt nevím, co tím chceš říct.
Pokud použiju interní 1. 1V tak na měření nebude mít AVCC vliv.
Abychom si to ujasnili, pro Arduino můžeme říct, že vždy platí AVCC=VCC protože jsou tyhle piny spojený dohromady.
Aref=AVcc= 3V-3,6V - fakt nevím, co tím chceš říct.
Pokud použiju interní 1. 1V tak na měření nebude mít AVCC vliv.
- SkullKeep
- Příspěvky: 291
- Registrován: 23 srp 2017, 18:51
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Právě toto nechápu datasheet píše ,že AVcc a Vcc není totožné pro ADC(Analog to Digital Converter). Proto nechápu proč AVcc musí být v ±0,3V+Vcc, když použiji Externí AVcc a Aref. A Ano pokud použiji vnitřní Aref 1,1V.
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Question :?:](./images/smilies/icon_question.gif)
![Arrow :arrow:](./images/smilies/icon_arrow.gif)
![Geek :geek:](./images/smilies/icon_e_geek.gif)
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
AVCC a VCC jsou dva vývody procesoru, které jsou běžně spojeny k sobě. V některých aplikacích může být k dosažení vyšší stability a nižšího šumu vhodné mít tyto napájecí vstupy odděleny. To ovšem není případ Arduina. A pak mezi nimi možná může být tebou deklarovaný rozdíl napětí. Děláš věci složitější než jsou. ![Smile :)](./images/smilies/icon_e_smile.gif)
![Smile :)](./images/smilies/icon_e_smile.gif)
- SkullKeep
- Příspěvky: 291
- Registrován: 23 srp 2017, 18:51
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Tj právě jsem se díval na návrh pro desku na čip ATmega32U4 s USB vstupem. Mám tam Avcc=Vcc a Aref přes kondík 22pF na zem. Ale pro měření jak to chtěl pavel1tu by bylo asi lepší udělat to Avcc=Vcc=Aref=3,3V přes přes low-pass filtr pro eliminaci rušení. A teď jsem se konečně dopídil použití vntiřního AVcc=1,1V a musí se Aref PIN uzemnit přes 22pF. A ještě nastavit REFSn bity v REGISTRU ADMUX a ještě pár dalších věcí udělat. Takže pro mne momentálně nepoužitelné.
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Question :?:](./images/smilies/icon_question.gif)
![Arrow :arrow:](./images/smilies/icon_arrow.gif)
![Geek :geek:](./images/smilies/icon_e_geek.gif)
- SkullKeep
- Příspěvky: 291
- Registrován: 23 srp 2017, 18:51
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Jenom drobnost čip ATmega328 a ATmega32U4 mají každý jinou velikost vnitřního AVcc. A taky Atmega328 má napětový rozsah napájení 1.8 - 5.5V zatím co ATmega32U4 má 2.7 - 5.5V.
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Question :?:](./images/smilies/icon_question.gif)
![Arrow :arrow:](./images/smilies/icon_arrow.gif)
![Geek :geek:](./images/smilies/icon_e_geek.gif)
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Je to tak jednoduché, když tam nedám blokovací kondenzátor , tak se nic neděje.
Přepíná se to prostě a jednoduše takto:
Přepíná se to prostě a jednoduše takto:
Kód: Vybrat vše
analogReference(INTERNAL); //1,1V pro ATmega168, ATmega328P
analogReference(INTERNAL1V1); // 1,1V pro MEGA
analogReference(INTERNAL2V56); // 2,56 pro MEGA
analogReference(DEFAULT); // zpátky na AVCC jako referenci
I
Žádné vnitřní AVCC neexistuje, je to pouze oddělené napájení analogové části procesoru.Jenom drobnost čip ATmega328 a ATmega32U4 mají každý jinou velikost vnitřního AVcc.
- pavel1tu
- Příspěvky: 2054
- Registrován: 26 říj 2017, 08:28
- Reputation: 0
- Bydliště: Trutnov
- Kontaktovat uživatele:
Re: Referenční napětí
Tak, občanky jste si už roztrhali ![Very Happy :-D](./images/smilies/icon_e_biggrin.gif)
zpět k mému problému.
Co chci měřit: napětí 0-1,65V
Ideální hodnota Uref : 1,7-2V
Takže:
Ucc - napájecí napětí - 3,3V
AVCC - propojím na Ucc
Aref - dám z referenčního švába 2,0000000V a nastavím ext. ref. napětí na 2,0000000V
mám to namyšlené správně ?
PS: když použiji interní Uref (1,1V), tak by to měřilo do 1,1V a napěťový dělič nechci.
děkuji
![Very Happy :-D](./images/smilies/icon_e_biggrin.gif)
zpět k mému problému.
Co chci měřit: napětí 0-1,65V
Ideální hodnota Uref : 1,7-2V
Takže:
Ucc - napájecí napětí - 3,3V
AVCC - propojím na Ucc
Aref - dám z referenčního švába 2,0000000V a nastavím ext. ref. napětí na 2,0000000V
mám to namyšlené správně ?
PS: když použiji interní Uref (1,1V), tak by to měřilo do 1,1V a napěťový dělič nechci.
děkuji
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"
Pavel1TU
"Správně napsaný kod lze číst jako knihu"
- SkullKeep
- Příspěvky: 291
- Registrován: 23 srp 2017, 18:51
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Ještě ne ,ale i na to dojde. Jinak tvému problému. AVcc a Aref musí být stejné.
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Question :?:](./images/smilies/icon_question.gif)
![Arrow :arrow:](./images/smilies/icon_arrow.gif)
![Geek :geek:](./images/smilies/icon_e_geek.gif)
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: Referenční napětí
Všechno je dobře, až na jednu maličkost. Arduino core nastaví po restartu defaultně referenci na AVcc(=Vcc). A na pinu Aref se objeví napětí AVcc. Když budeš mít připojenou externí referenci, tak to může vyhořet. Defaultně po resetu je registr ADMUX - bit REFS v ATmega328p nastaven na externi referenci, ale Arduino core to změní. Asi by to chtělo najít, kde se to dá v jádře nastavit, aby po resetu zůstal původní defaultní stav tj. externí reference. Ty to sice snadno změníš:
ale od zapnutí napájení to může trvat stovky mikrosekund a něco může jít do kytek. Reference, procesor nebo obojí.
Z datasheetu: Vref >= 1V && Vref <= AVcc a znovu zopakuji pro Arduino platí AVcc=Vcc
Kód: Vybrat vše
analogReference(EXTERNAL);
Ale no tak... řekněme že Aref je vstup a Vref je externí referenční napětí na něj přivedenoAVcc a Aref musí být stejné.
Z datasheetu: Vref >= 1V && Vref <= AVcc a znovu zopakuji pro Arduino platí AVcc=Vcc
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 23 hostů