firmata

Odpovědět
frakor
Příspěvky: 2
Registrován: 04 kvě 2020, 03:05
Reputation: 0

firmata

Příspěvek od frakor » 04 kvě 2020, 03:20

Zdravím všechny arduino nadšence.
Řeším problém s arduino uno klon a standart firmata. Z pinů 2,3,4 nastavených jako input čtu logickou úroveň HI/LO po seriové lince a občas se přihodí, že na více pinech se objeví stejná úroveň. Na piny přivádím +5V kdy mají výchozí hodnotu logická 0, tedy bez pullup. Stane se nepravidelně pokud na pin2 přijde HIGH několikrát po sobě, že HIGH se objeví i na dalších pinech. Setkal se s tím někdo? Prosím o radu jak to ošetřit. Napadá mne při psaní zkusit pulldown odpor na každý pin. Jako klienta v pc puzivam johnny five node. Budu vděčný za každý užitečný podnět.

Uživatelský avatar
gilhad
Příspěvky: 779
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: firmata

Příspěvek od gilhad » 04 kvě 2020, 05:49

Pokud mas na pinech nejaka tlacitka, tak na nich MUSIS mit i pullup nebo pulldown, protoze pokud to neni sepnute, tak ten pin nema vnucenou hodnotu - plave - a nepripojeny pin se muze dle libosti precist jako 0/1 (a jednak je to "v poradku", protoze chyta nahodne sumy, jednak takovy pin muze zvedat odber obvodu, protoze se nahodne preklapi a tim nuti radu dalsich tranzistoru uvnitr se preklapet podle nej a to stoji vic energie, nez nepreklapeni se).

I nektere soucastky maji tu vlastnost, ze "jenom spinaji" at uz k zemi ci napajeni a "rozepnute" nechaji vystup plavat - casto se to oznacuje "open collector" a nebo HiZ (jakoze velky odpor) (u Arduina piny prepnute na vstup pomoci INPUT, nikoli INPUT_PULLUP) - a ma to dobry duvod, protoze jich takhle lze spojit vic na sbernici osetrenou jednim odporem a ta zustava v defaultnim stavu, dokud ASPON JEDNA soucastka nesepne (napriklad pro I2C). Pripadne jde takto vhodnym odporem nastavit, jak velky odber ma ta sbernice v klidu, nebo jak velky proud se musi pouzit k jejimu preklopeni (maly odpor = velky proud = velky odber = odolnejsi proti ruseni = potreba vykonnejsi soucastky = vetsi problem udrzet dost ostre hrany pro danou frekvenci, ale zase moznost jit na vyssi frekvence za cenu spotreby a drazsi elektroniky)

Pokud mas piny bez pullup/pulldown a nejsou k nicemu pripojene - tlacitko neni sepnute - tak maji pravo hlasit libovolnou hodnotu na vstupu a klidne pri kazdem cteni (taktu procesoru) jinou - nahodne ci dle libovolne vzorce bez jakekoli zaruky.

frakor
Příspěvky: 2
Registrován: 04 kvě 2020, 03:05
Reputation: 0

Re: firmata

Příspěvek od frakor » 04 kvě 2020, 07:05

Diky za objasneni problemu. Takze shrnuto : Mam tam pir cisla ktera spinaji +5V. pokud tedy input pin ošetřím odporem proti zemi mělo by se to celé umoudřit. pochopil jsem to správně?

Uživatelský avatar
gilhad
Příspěvky: 779
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: firmata

Příspěvek od gilhad » 04 kvě 2020, 13:34

Ano, pokud tam neni jeste nejaka dalsi chyba :)

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů