Si je télécharge un croquis qui envoie des données série, je vois immédiatement les LED TX / RX clignoter une fois le croquis téléchargé. Si je démarre ensuite le moniteur série, l'esquisse semble redémarrer.
Une simple esquisse minimale qui montre ce comportement:
void setup()
{
Serial.begin(9600);
Serial.println("Setup");
}
void loop()
{
Serial.println("Loop");
delay(1000);
}
Testé avec plusieurs cartes et versions Mac et Windows de l'IDE.
Exemple de sortie - il revient à "Setup" lorsque j'ouvre le moniteur série:
Pourquoi est-ce?
serial
arduino-ide
Cybergibbons
la source
la source
Réponses:
L'Arduino utilise les signaux RTS (Request To Send) (et je pense que DTR (Data Terminal Ready) ) pour se réinitialiser automatiquement. Si vous obtenez un terminal série qui vous permet de modifier les paramètres de contrôle de flux, vous pouvez modifier cette fonctionnalité.
Le terminal Arduino ne vous donne pas beaucoup d'options et c'est la valeur par défaut. D'autres vous permettront d'en configurer beaucoup plus. Régler le contrôle de flux sur aucun vous permettra de vous connecter / déconnecter de la série sans réinitialiser votre carte. il est très utile pour le débogage lorsque vous souhaitez pouvoir simplement brancher le connecteur et voir la sortie sans avoir à recommencer l'esquisse.
Une autre façon de désactiver la réinitialisation automatique consiste à placer une résistance de rappel sur la broche de réinitialisation.
Désactivation de la réinitialisation automatique sur la connexion série
la source
La vérité est toujours dans les fiches techniques, les schémas et le code:
L'Arduino UNO utilise en fait la
/DTR
ligne pour déclencher une réinitialisation, comme vous pouvez le voir sur la fiche technique suivante:la source
Cela résout le problème
la source