ARDUINO Mega2560 – přepínání analogReference() za chodu programu
Úvodní stránka › Fórum › Hardware › Arduino › ARDUINO Mega2560 – přepínání analogReference() za chodu programu
- Toto téma obsahuje celkem 12 odpovědí. Do diskuze (3 diskutující) se naposledy zapojil uživatel posjirka a poslední změna proběhla před 7 roky a 4 měsíci.
-
AutorPříspěvky
-
31.5.2017 v 18:36 #11610mpczÚčastník
Zdravím,
narazil jsem na problém v jednoduchém ino.
Mám dva analogové vstupy a potřebuji na jednom z důvodu rozlišení 5V referenci a na druhém 1V1.
Při běhu programu se nedaří přepínat mezi referencemi, vypadá to, jako by se nepřeplo, chybu to nehodí žádnou.
Další problém je, že pokud se nastaví hned od začátku reference 1V1, přestane pochopitelně fungovat touch na LCD, což je dost nepříjemné.
Setkal se s tím už prosím někdo, existuje nějaké řešení jak přepínat správně reference?
Existuje postup, jak zjistit, která reference je v tuto chvíli aktivní?
Děkuji, mpcz, 31.may.20172.6.2017 v 7:23 #11647mpczÚčastníkZdravím,
tak nakonec jsem na to přišel po řadě pokusů. Nic složitého, je třeba:
1/ přehodit referenci na potřebnou, kterou deska umožňuje
2/ udělat jedno čtení ze vstupu, výsledek zahodit
3/ delay(5)
4/ další čtení jsou již OK
Odzkoušeno na mega2560, vše funguje, jak má.
mpcz, 02.06.20172.6.2017 v 12:08 #11654posjirkaÚčastníktrochu bych se bál co udělá AI pro touche panel když se mu změní refernce na 1,1V….
Lepší varianta je asi buď použít externí převodník pro nižší napětí, nebo se smířit s hrubší LBA.2.6.2017 v 12:24 #11655mpczÚčastníkZdravím,
no co na tohle říci, opravdu nevím. Proč myslíž, že jsem to řešil? No aby fungoval správně touch i ADC s RN 1V1. A když píši, že je vše OK, tak JE to OK.
Touch je přeplý na správné napětí a AD má také správné ref. napětí.
mpcz, 02.06.20172.6.2017 v 13:04 #11656posjirkaÚčastníkkdyž se podívaš na datasheet tak zjitíš, že přiřazuješ 1 refernci na všechny piny !!!
http://www.imgup.cz/image/LgXt3.6.2017 v 8:37 #11657mpczÚčastníkZdravím,
ano, to ano, ale ten titulek „přepínání ZA CHODU programu“ ti neříká nic?
mpcz, 03.06.20173.6.2017 v 13:44 #11658BlindPÚčastníka co trochu slusnosti ti nerika nic? :/
The first ADC conversion result after switching reference voltage source may be inaccurate, and the user is advised to discard this result.
3.6.2017 v 14:07 #11659mpczÚčastníkZdravím,
říká moc, měla by být úměrná situaci, ale pokud někdo opakovaně nabízí bláboly, umocněné navíc třemi vykřičníky, je vhodné ostatní varovat. Fóra slouží k tomu, aby tam našli lidé pomoc, ušetřili čas, ne naopak.
Co se týká toho tvého odkazu, (ten pán tam ale řeší poněkud odlišnou situaci) četl jsem i viděl varování na „několik“ vadných čtení po přehození reference na ofic. stránkách Arduina.
Moje zkušenost s přepínání dvou interních referencí je poněkud odlišná.
Celé se mi to jeví tak, že reference se samotným příkazem nepřepne, dojde k tomu až po prvním čtení z portu. To první je sice přesné, ale řízené původní referencí. Každé následné je již přesné (delay 5 ms), již podle nové reference, alespoň v mých poměrech jsem nezaznamenal žádné chyby. Toto jsem nevyčetl někde na webu, ale v praxi odzkoušel a aplikace, kde je to implementované funguje správně.
mpcz, 03.06.20173.6.2017 v 18:58 #11663BlindPÚčastníkPosjirka ma ale pravdu, podivej se jeste jednou na ten obrazek. Kdyz zmenis referenci ovlivni to vsechny piny a v TUTO chvili nebude fungovat touch shield (coz mozna nevadi, do te doby nez tapnes na display 🙂 ) A ze by posjirka psal blaboly se mi nezda, nema kristalovou kouli a ty jsi neposlal kod, takze se tezko radi…BP
3.6.2017 v 22:28 #11665posjirkaÚčastníkto mpcz: chlape, útočíš na mě sice hezky, ale možná by nebylo špatné zamyslet se sám na desbou. Obávám se, že nesmysly tu zavádíš pouze ty. Vcelku jasně ukazuješ, že nedokážeš správně technicky myslet a všechny parametry ženeš za datasheetem povolenou mez. Pokud si myslíš, že se svět ohne podle tebe … .
Já jsem ti slušně napsal řešení:
1, externí ADC převodník s nižší referencí
2, smířit se s nižším rozlišení LBA
Cokoliv jiného dříve nebo později bude znamenat zničení AT Megy. Správné řešení předučuje i dlouhou a spolehlivou funkci zařízení bez hledání duchů. Takové přímočaré řešení co navrhuješ ty bude fungovat na třeba 3 Arduin z 10 a i ty 3 časem odejdou, nebo se budou chovat podivně.
Dělej jak uznáš za vhodné, jen k tomu PROSÍM NESTRHUJ I OSTATNÍ, co nemají takovou hloubku znalostí a snaží se něco se naučit a porozumět tomu.3.6.2017 v 22:34 #11666posjirkaÚčastníkjen taková vsuvka: když jsem chodil ještě na střední tak mi připadali všeci ti HIFI šílenci jako magoři. Co si to dovolujou tvrdit, že zlacené konektory za 200kč hrajou líp než ty nikovaný za 10 kč. Vždyť to nemá na funkci zesilovače žádný vliv. Časem jsem pochopil, že nešlo o to co je teď, ale jak to bude fungovat za 5 let. Myslím, že tě čeká podobné prozření jako u mě před 20 lety … nikdo není neomylný, ale měl by dřív naslouchat než se hádat.
4.6.2017 v 13:03 #11667mpczÚčastníkZdravím,
ty bláboly se nedají ani poslouchat. Ještě navíc historka o konektoru ze střední…
Někomu asi nestačí, že problém sběrnice je vyřešen již léta a a chodí to bez „únavy“ a bez problému s napěťovou úrovní, který ostatně ani neexistuje. Pokud to léta chodí bez „odpálení“ a navíc je to podepřeno i teoretickou úvahou, je to pro mě dostatěčně jasné.
Pokud to někomu ještě nestačí, připojuji záznam z paměťového osciloskopu.
Vidí někdo někde datový provoz nad 3,3V? A pokud ho vidí pouze teoreticky, aby nějak tu svou teorii obhájil, ať ji trošku rozvede do podrobností, kde se tam těch 5V nabere.
Ale pěkně prosím, žádné historky o konektorech ze střední anebo o „unavení něčeho“.
Ostatně, zajímalo by mě, jestli autor těch tvrzení někdy na stole DUE/LCD2004 měl nebo jen sbírá na fórech a v datasch. rozumy a dále je bezmyšlenkovitě tranzituje.
Děkuji, mpcz, 04.06.2017
p.s. ocením, pokud na tento problém někdo jiný v budoucnu narazí a poděli se o zkušenosti a hlavně výsledekAttachments:
4.6.2017 v 21:43 #11669posjirkaÚčastníkmoje poslední reakce na toto vlákno :
komu není rady tomu není pomoci. -
AutorPříspěvky
- Pro reakci na toto téma se musíte přihlásit.