ATTINY 2013- podivné chování
Moderátor: Moderátoři
ATTINY 2013- podivné chování
AT TINY 2313 8MHz, pinD a pinA - použity jako vstupy uzemněby 15K odpory, portB - výstupy přes 1k odpory. C- kod je v příloze.
Pokud je MCU ve zkušebním bordu, vše funguje jak má, alespoň podle mne.
Pokud je MCU v reálném zařízení, chová se podivně. Jakmile se na pinech D1, D5 a hlavně D3 objeví jednička (značka //111) program nepochopitelně skočí do cyklu while - značka //222 i když tam nemá co skákat.
Napájení je blokované, vstup A2 též. Zákmity se na vstupech neobjevují. Pouze na výstupech PortB a na napájení je cca 20mV šum. Ten je ovšem ve zkušebním zapojení též. Vyzkoušel jsem i jiný ATTINY2013, bohužel se stejným výsledkem. Nepomůže ani snížená frekvence.
Budu vděčný za jakoukoliv realizovatelnou radu.
- Přílohy
-
regulacekotlu.txt- (5.7 KiB) Staženo 118 x
když se dá ta samá hodnota zvenčí na zem tak na pinu bude poloviční hodnota napájecího napětí, což je stav tak trochu nežádoucí.
Jeho vypnutí je možné v konfiguraci DDRx.y=0(input) a PORTx.y=0(noPU),
výchozí je in+PU
nebo PU vypnout globálně, pak při jedničce lítá v luftě.
Co se týče pinů a pullup rezistorů, tak toi je pochopitelně překlep, který jsem už opravil, zajímavé je, že to funguje i s tím špatným zápisem. Proč jsem nepoužil MCU s PU už dnes nevím, ale asi by to bylo lepší, ale už je jpozdě.
Logický ssoučin / bitový součin - správnější by bylo použití logického operátoru, s bitovým opoerátorem to chybu nehlásí a vyhodnocuje se tak jak jsem zymýšlel, tak jsem to tam holt nechal, ale opravím to.
Připojení vstupů a výstupů - zde tuším též zradu, ale zatím jsem chybu neobjevil.
Výstupy - relé jsou ovládána přes spínací tranzistory, triaky přes optočleny a výkon.FET přímo z MCU.
Vstupy jsou ovládány výstupy z komparátorů (OZ) přes PCB. Vše jsem kontroloval oscilem a nic jsem nezjistil.
Tak trochu nerozumím snímání stavu vstupů s 10ms odstupem ...... prosím, trochu polopatičtěji.
Opravím, odzkouším a poreferuji.
Zatím díky, pánové.