Vraag:
Hoe u kunt voorkomen dat Arduino opnieuw wordt ingesteld nadat de seriële verbinding is verbroken
Cerin
2016-02-08 11:36:13 UTC
view on stackexchange narkive permalink

Als ik via een seriële console verbinding maak met een Arduino Uno om foutopsporingsverklaringen te lezen en vervolgens de verbinding verbreek, lijkt de Arduino te resetten. Hoe voorkom ik dat dit gebeurt?

Ik probeer een Arduino te programmeren om een ​​"shutdown" -signaal van een Raspberry Pi via serieel te ontvangen, waardoor de Arduino de stroom van de RPi afsnijdt. Dit zal echter ook de seriële verbinding verbreken en als de Arduino hierdoor wordt gereset, wordt de stroom weer geactiveerd.

Twee antwoorden:
Nick Gammon
2016-02-08 12:18:29 UTC
view on stackexchange narkive permalink

Er is een link op de Uno gemarkeerd met RESET-EN die de Atmega16U2 (of 8U2), die binnenkomende seriële data afhandelt, verbindt met de hoofdchip, de Atmega328P. Als je die schakel doorsnijdt (bijv. Met een mes), dan wordt hij niet gereset. Het uploaden van nieuwe sketches zal echter moeilijker zijn omdat je handmatig op de Reset-knop moet drukken wanneer de IDE begint met het uploaden van een nieuwe sketch.


Bord:

RESET_EN link


Schematisch:

Schematic


Een ding dat mensen doen wordt een condensator van 10 µF tussen RESET en GND geplaatst. Dat houdt genoeg stroom vast om de reset-puls te "doorstaan", en dat stopt het resetten van de kaart. U kunt altijd de condensator verwijderen om de kaart opnieuw te programmeren.

Ik heb dit op het schema gezien en nooit begrepen waarvoor het was. Ik begrijp dat het diagram bedoeld is om een ​​pad aan te duiden met een knipbare schakel.
Dus je zegt dat de seriële verbinding hard bedraad is om een ​​reset uit te voeren na het loskoppelen? Ik begrijp het resetten na het uploaden van een schets, maar waarom ook resetten na een niet-programmerende seriële verbinding?
Nee dat is het niet. Als uw besturingssysteem echter DTR laag brengt wanneer u de verbinding verbreekt, zal dat de resetpuls genereren. Verbreek je fysiek de verbinding of verbreek je de verbinding?
Geprobeerd om 10uF ecap in mijn Uno te plaatsen, lijkt helemaal niet te werken. in feite gaan alle gegevens die naar serieel worden geschreven helemaal niet door.
Cerin
2016-02-09 11:35:56 UTC
view on stackexchange narkive permalink

Ik vond de oplossing voor mijn probleem dit antwoord, dat voor mij werkt op zowel een normale laptop als Raspberry Pi zonder dat ik Arduino-hardware hoef aan te passen.



Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 3.0-licentie waaronder het wordt gedistribueerd.
Loading...