Arduino Nano PWM-stift fungerar inte

Jag bygger ett projekt med en Arduino Nano. I den använder jag stift 3 som PWM-utgång. Men om jag levererar värden lägre än 255 till den, matar stiftet inte ut någon spänning alls.

Enligt detta diagram är stift 3 PWM:

NANO pinout

Jag har testat det på två kort, det fungerar inte på någon av dem. Det är inte heller min skiss (jag testade den med en enkel analogWrite();).

Detta är koden:

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); } 

Vad kan vara orsaken till detta?

Kommentarer

  • Begär att detta flyttas till arduino stackexchange
  • @JorenVaes hur gör jag det?
  • Ingen kod visas. Vad i världen ska vi spekulera i då?
  • @Bort förlåt, lägg till koden.
  • Försök att ersätta #define E1 3 med #define E1 PD3 och se om det hjälper.

Svar

Försök att ersätta #define E1 3 med #define E1 PD3 och se om det hjälper.

PBx, PCx och PDx beteckningar är entydiga, så det är ganska säkert att använda dessa.

Kommentarer

  • Detta är helt fel råd. Arduino-funktioner tar Arduino-pin-nummer. I det här fallet råkade det bara fungera eftersom PD3 är #define d som 3 och Arduino-stiftnumret är också 3. Försök använda PB2 istället för Arduino-stift nummer 10 om du inte tror '. De är inte ens entydiga. Dessa beteckningar definieras precis som bitnumren (t.ex. PB3 är också 3).

Svar

Den tredje stiftet (stift 3) är inte en PWM-stift, det är RESET -stiften.

PWM-stiften är 6, 8, 9, 12, 13 och 14 (för Arduino Nano).

Se den här bilden :

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

Kommentarer

  • Förkortad URL omdirigerar till bilder. google.co.in/… så mycket poäng att ersätta den.
  • @Carolene enligt schemat som ges av OP, pin 3 betyder digital stift 3 = PORTD 3. Den del av ditt svar " PWM-stiften är 6, 8, 9, 12, 13 och 14 (för Arduino Nano) " är helt vilseledande.

Svar

Ersätt digitalWrite med analogWrite (pin, värde )

Kommentarer

  • Jag ' är inte säker på varför du tror att det skulle fungera. Läste du det accepterade svaret ovan eller kommentarerna under frågan?

Svar

Använd pinMode(NNN, OUTPUT) vid setup()?

Kommentarer

  • Hej Denis, och välkommen att stapla Exchange! Även om du kanske har rätt, vänligen utvidga ditt svar, eftersom det nu ser ut att vara mer lämpligt som en kommentar. Läs Hur skriver jag ett bra svar?
  • Detta är ett bra svar, PIN-LÄGE saknas.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *