Arduino Nano segítségével építek egy projektet. Ebben a 3. tűt használom PWM kimenetként. Ha azonban 255-nél alacsonyabb értékeket adok meg neki, akkor a tű egyáltalán nem ad ki feszültséget.
A diagram szerint a 3. érintkező PWM:
Két táblán teszteltem, egyiken sem működik. Ez sem az én vázlatom (egyszerű analogWrite();
-vel teszteltem).
Ez a kód:
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); }
Mi lehet ennek az oka?
Megjegyzések
- Kérje meg, hogy az arduino stackexchange-be kerüljön
- @JorenVaes hogyan tudom ezt megtenni?
- Nincs kód. Miről kellene akkor spekulálnunk?
- @Bort sajnálom, hozzáadta a kódot.
- Próbálja meg kicserélni a #define E1 3-ot #define E1 PD3-ra, és hátha ez segít.
Válasz
Próbáld meg a #define E1 3
szót helyettesíteni #define E1 PD3
és nézze meg, hogy ez segít-e.
A PBx
, PCx
és a PDx
megnevezések egyértelműek, ezért ezek használata nagyjából biztonságos fogadás.
Megjegyzések
Válasz
A harmadik tű (3. tű) nem PWM tű, hanem a RESET
tű.
A PWM csapok 6, 8, 9, 12, 13 és 14 (Arduino Nano esetén).
Lásd ezt a képet :
mg src = “https://i.stack.imgur.com/8flVu.png” alt = “Nano pinout” title = “Nano pinout”>
Megjegyzések
- A rövidített URL átirányít képekre. google.co.in/… , így nincs sok értelme annak cseréjére.
- @Carolene az OP vázlata szerint, 3. tű jelentése: 3-as pin = PORTD 3. Válaszának része " A PWM csapok 6, 8, 9, 12, 13 és 14 (Arduino Nano esetén) " teljesen félrevezető.
Válasz
Cserélje le a digitalWrite-t analógWrite-re (pin, érték )
Megjegyzések
- Nem vagyok biztos benne, miért gondolod, hogy ez működne. Olvastad a fenti elfogadott választ vagy a kérdés alatti megjegyzéseket?
Válasz
Használd a pinMode(NNN, OUTPUT)
itt: setup()
?
Megjegyzések
- Szia Denis, és üdvözlöm a Stack Exchange-hez! Bár lehet, hogy igazad van, kérlek, bővítsd a válaszodat, mert a jelenlegi állapotában jobban megfelelne megjegyzésként. Kérjük, olvassa el az Hogyan írhatok jó választ?
- Ez jó válasz, hiányzik a PIN-MÓD.
PD3
#define
d értéke 3, és az Arduino PIN-száma is 3. Próbálja meg használni aPB2
a 10-es Arduino tű helyett, ha nem hiszel '. Nem is egyértelműek. Ezeket a jelölőket csak bitszámként definiálják (pl.PB3
is 3).