Sto costruendo un progetto utilizzando un Arduino Nano. In esso, sto usando il pin 3 come uscita PWM. Tuttavia, se fornisco valori inferiori a 255, il pin non emette alcuna tensione.
Secondo questo diagramma, il pin 3 è PWM:
 Lho testato su due schede, non funziona su nessuna delle due. Non è nemmeno il mio schizzo (lho testato con un semplice analogWrite();). 
Questo è il codice:
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); } 
Quale potrebbe essere la ragione di ciò?
Commenti
- Richiedi che venga spostato nello stackexchange di arduino
 - @JorenVaes come faccio?
 - Nessun codice mostrato. Su cosa diamine dovremmo speculare allora?
 - @Bort scusa, ha aggiunto il codice.
 - Prova a sostituire #define E1 3 con #define E1 PD3 e vedi se aiuta.
 
Risposta
 Prova a sostituire #define E1 3 con #define E1 PD3 e vedi se questo aiuta. 
 Il PBx, PCx e le designazioni PDx non sono ambigue, quindi utilizzarle è praticamente una scommessa sicura. 
Commenti
Risposta
 Il terzo pin (pin 3) non è un pin PWM, è il pin RESET. 
I pin PWM sono 6, 8, 9, 12, 13 e 14 (per Arduino Nano).
Vedi questa immagine :
mg src = “https://i.stack.imgur.com/8flVu.png” alt = “Nano pinout” title = “Nano pinout”>
Commenti
- URL abbreviato reindirizza a immagini. google.co.in/… quindi non ha molto senso sostituirlo.
 - @Carolene secondo lo schema fornito dallOP, pin 3 significa pin digitale 3 = PORTD 3. La parte della tua risposta " I pin PWM sono 6, 8, 9, 12, 13 e 14 (per Arduino Nano) " è completamente fuorviante.
 
Answer
Sostituisci digitalWrite con analogWrite (pin, valore )
Commenti
- Non ' non sono sicuro del motivo per cui pensi che funzioni. Hai letto la risposta accettata sopra o i commenti sotto la domanda?
 
Risposta
 Usa pinMode(NNN, OUTPUT) in setup()? 
Commenti
- Ciao Denis e benvenuto a Stack Exchange! Sebbene tu possa avere ragione, per favore amplia la tua risposta, perché così comè sarebbe più adatta come commento. Leggi Come scrivo una buona risposta?
 - Questa è una buona risposta, manca la MODALITÀ PIN.
 
 
PD3è#defined come 3 e anche il numero pin di Arduino è 3. Prova a usarePB2invece del pin numero 10 di Arduino se non ' mi credi. Non sono nemmeno univoche. Questi designatori sono definiti semplicemente come numeri di bit (ad es.PB3è anche 3).