La broche PWM de lArduino Nano ne fonctionne pas

Je construis un projet en utilisant un Arduino Nano. Dans celui-ci, jutilise la broche 3 comme sortie PWM. Cependant, si je lui fournit des valeurs inférieures à 255, la broche ne fournit aucune tension du tout.

Selon ce schéma, la broche 3 est PWM:

NANO pinout

Je lai testé sur deux cartes, il ne fonctionne sur aucune des deux. Ce nest pas non plus mon croquis (je lai testé avec un simple analogWrite();).

Voici le code:

void setup() { // put your setup code here, to run once: #define E1 3 // Enable Pin for motor 1 #define E2 10 // Enable Pin for motor 2 #define I1 4 // Control pin 1 for motor 1 #define I2 2 // Control pin 2 for motor 1 #define I3 A1 // Control pin 1 for motor 2 #define I4 A0 // Control pin 2 for motor 2 } void loop() { // put your main code here, to run repeatedly: // I use differential steering, speed is important analogWrite(E1, 100); // Run in full speed analogWrite(E2, 100); // Run in full speed // always go forward digitalWrite(I1, LOW); digitalWrite(I2, HIGH); digitalWrite(I3, LOW); digitalWrite(I4, HIGH); } 

Quelle pourrait en être la raison?

Commentaires

  • Demander à ce que cela soit déplacé vers le stackexchange arduino
  • @JorenVaes comment faire?
  • Aucun code affiché. Sur quoi diable sommes-nous censés spéculer alors?
  • @Bort désolé, a ajouté le code.
  • Essayez de remplacer #define E1 3 par #define E1 PD3 et voyez si cela aide.

Réponse

Essayez de remplacer #define E1 3 par #define E1 PD3 et voyez si cela aide.

Les PBx, PCx et les désignations PDx sont sans ambiguïté, donc leur utilisation est une valeur sûre.

Commentaires

  • Ce sont des conseils absolument faux. Les fonctions Arduino prennent les numéros de broches Arduino. Dans ce cas, cela a fonctionné car PD3 est #define d comme 3 et le numéro de broche Arduino est également 3. Essayez dutiliser PB2 au lieu de la broche Arduino numéro 10 si vous ne me croyez pas '. Ils ne sont même pas sans ambiguïté. Ces désignateurs sont simplement définis comme les nombres de bits (par exemple, PB3 vaut également 3).

Réponse

La troisième broche (broche 3) nest pas une broche PWM, cest la broche RESET.

Les broches PWM sont 6, 8, 9, 12, 13 et 14 (pour Arduino Nano).

Voir cette image :

mg src = « https://i.stack.imgur.com/8flVu.png » alt = « Nano pinout » title = « Nano pinout »>

Commentaires

  • URL raccourcie redirige vers les images . google.co.in/… donc pas grand chose à le remplacer.
  • @Carolene selon le schéma donné par lOP, broche 3 signifie broche numérique 3 = PORTD 3. La partie de votre réponse " Les broches PWM sont 6, 8, 9, 12, 13 et 14 (pour Arduino Nano) " est complètement trompeur.

Réponse

Remplacez digitalWrite par analogWrite (pin, value )

Commentaires

  • Je ' ne sais pas pourquoi vous pensez que cela fonctionnerait. Avez-vous lu la réponse acceptée ci-dessus ou les commentaires sous la question?

Réponse

Utilisez pinMode(NNN, OUTPUT) at setup()?

Commentaires

  • Bonjour Denis, et bienvenue à Stack Exchange! Bien que vous ayez raison, veuillez développer votre réponse, car dans sa forme actuelle, elle serait plus appropriée comme commentaire. Veuillez lire Comment rédiger une bonne réponse?
  • Cest une bonne réponse, le MODE PIN est manquant.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *