jak nastavit pin jako zem?

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: jak nastavit pin jako zem?

Příspěvek od petan » 21 lis 2017, 11:19

To jankop: Však jsem myslel, že se pull-up tranzistor používá pouze pokud je pin nastaven jako vstup. Jak jsem psal, že je sepnuto hradlo, tak jsem myslel výstup Logic a ne ten internal pull-up.

Předtím jsem to nijak zvlášť nezkoumal, tak jsem myslel že výstup pracuje pouze v módu sink. Při log. 0 na výstupu je tranzistor jednoduše odpojen - výstup je v režimu vysoké impedance - proto ten pull-down.
Teď jsem koukal do datasheetu a je tam napsáno: Each output buffer has symmetrical drive characteristics with both high sink and source capability. Jestli to teda chápu dobře, tak máš pravdu. Škoda, že v datasheetu není přesně nakresleno zapojení I/O pinu.

zbysek
Site Admin
Příspěvky: 125
Registrován: 22 úno 2017, 15:18

Re: jak nastavit pin jako zem?

Příspěvek od zbysek » 21 lis 2017, 12:06

Zajímalo by mě, jestli je z vaší diskuse lastope1 nějak moudrý :)
Zkusím to tedy shrnout.

Pokud chcete, aby byla na pinu zem, nastavte jeho logickou úroveň na LOW.

Kód: Vybrat vše

digitalWrite(pin, LOW);
Když máme dva piny (pin1 a pin2) a chceme mezi nimi měnit polaritu, stačí použít:

Kód: Vybrat vše

// jeden směr
digitalWrite(pin1, LOW);
digitalWrite(pin2, HIGH);

// druhý směr
digitalWrite(pin1, HIGH);
digitalWrite(pin2, LOW)
Takto použít dva piny je možné, pokud máte něco velice nenáročného - například chcete použít charlieplexing pro LEDky, chcete řídit malý maticový displej (i když tam už je to na zvážení), apod.

Pokud chcete řídit nějaké zařízení, které potřebuje větší proud, budete muset použít nějaký externí obvod - například h-můstek.
Pak můžete třeba ovládat polaritu na vstupech motoru a měnit tak směr jeho otáčení apod.

Interní pullup a pulldown rezistory se k tomuto nehodí, mimo jiné i proto, že jsou připojené jenom v případě, že je pin nastavený jako výstup.

Odpovědět

Kdo je online

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