arduino bezpecny vystup
Moderátor: Moderátoři
arduino bezpecny vystup
Pouzil som na ovladanie dvoch rele výstupy 12 a 13, lebo boli najblizsie (arduino nano). Po zapnuti alebo v̶y̶p̶n̶u̶t̶i̶ po resete jedno rele na krátko zopne. Zrejme bootloader nieco skúša. Podľa datašitu by všetky výstupy mali byť po reštarte v stave vysokej impedancie. Ktoré výstupy z Arduina je bezpečné používať? Ako najjednoduchšie zabrániť nechcenému zopnutiu relé?
EDIT:
iné som myslel, iné som písal
EDIT:
iné som myslel, iné som písal
Naposledy upravil(a) samec dne 01 srp 2022, 12:33, celkem upraveno 1 x.
To vypadá na hardwerový problém. Při rozepnutí / sepnutí jde špička rušení vzduchem nebo po vodičích. Schéma + fotka napoví. Obecně se dělají rozmístění součástek na DPS tak, že rušivé věci jsou na opačném konci než senzitivní věci...
Jinak atmega328 má bity, ze kterých lze zjistit příčinu resetu... watchdog atd...
edit1: jak píšeš, bezprostředně po zapnutí jsou výstupy ve stavu Hi-Z/vysoká impedance, do té doby než bootloader předá řízení aplikaci. Pro některé tranzistory/vstupní obvody i toto stačí pro "sepnutí" relátka. Připoj osciloskop a hned uvidíš, kdy porucha nastane a jak dlouho trvá...
Jinak atmega328 má bity, ze kterých lze zjistit příčinu resetu... watchdog atd...
edit1: jak píšeš, bezprostředně po zapnutí jsou výstupy ve stavu Hi-Z/vysoká impedance, do té doby než bootloader předá řízení aplikaci. Pro některé tranzistory/vstupní obvody i toto stačí pro "sepnutí" relátka. Připoj osciloskop a hned uvidíš, kdy porucha nastane a jak dlouho trvá...
Tranzistor MMBT2222A, z procaku 1kΩ na bázu a z bázy 1kΩ na GND.
Pin D12 je zároveň MISO, D13 je zároveň SCK a oba sú vyvedené aj na ICSP. Neviem teraz, ktorý z nich to robí, ale myslím, že po reštarte tam bootloader čosi hľadá. Asi budem musieť použiť iný pin. Len neviem ktorý pin je bezpečný bez prekvapení.
Pin D12 je zároveň MISO, D13 je zároveň SCK a oba sú vyvedené aj na ICSP. Neviem teraz, ktorý z nich to robí, ale myslím, že po reštarte tam bootloader čosi hľadá. Asi budem musieť použiť iný pin. Len neviem ktorý pin je bezpečný bez prekvapení.
- pocitujlasku
- Příspěvky: 1757
- Registrován: 12 pro 2005, 01:00
u mcu byva zvykom spinat log. 0, prave preto, ze vacsina pinov po starte je " v lufte" - u atmega je ako input pin.
pin 13 sa mi zda, ze arduino pouziva pre led.
bezpecne piny mas v arduino dokumentacii, ja som nieco podobne riesil u esp a pomohlo dat odpor na - aby pin mal definovanu uroven a az sw ho davam do log. 1
pin 13 sa mi zda, ze arduino pouziva pre led.
bezpecne piny mas v arduino dokumentacii, ja som nieco podobne riesil u esp a pomohlo dat odpor na - aby pin mal definovanu uroven a az sw ho davam do log. 1
No vidis, a tak si sa bal
Potreboval som časovač spúšťaný kombináciou štyroch vstupov. Procesor som použil, aby to bolo čo najjednoduchšie s minimom súčiastok. Takže žiaden ďalší časovač tam dávať nebudem. Keby som vedel, že k relatkám budem potrebovať aj tranzistory, tak by som tam rovno dal optotriaky a ušetril by som si pol dňa môjho voľného času. A s ďalšími problémami sa z výkendovky stala popri práci výše dvoj-týždňová záležitosť. Je smutné, že nikde na internete nie sú pokope informácie k praktickej realizácii obvodov s Arduinom.
- pocitujlasku
- Příspěvky: 1757
- Registrován: 12 pro 2005, 01:00
Kde? Hľadal som, ale nič relevantne k Arduinu som nenašiel.pocitujlasku píše:bezpecne piny mas v arduino dokumentacii,
Problém robil pin 13, ten s LED. Prespájkoval som ho na pin 14(A0). Zdá sa, že teraz to funguje.
Viem, že existujú tisíce rôznych špeciálnych úplne najperfektnejších procesorov, ale ja nechcem strácať čas hľadaním vhodného procesora a potom strácať čas hľadaním informácií k nemu a potom to zložito navrhovať a odlaďovať. Potrebujem jednoduché, ľahko dostupné, univerzálne, overené, lacné riešenie, ktoré len vytiahnem zo šuflíka a na počkanie zapojím a naprogramujem. A ak nebude v šuflíku, tak zabehnem do najbližšej predajne so súčiastkami. A keď sa mi to po desiatich rokoch dostane naspäť do rúk s požiadavkou na zmenu funkcionality, tak to znova na počkanie preprogramujem. Preto Arduino.