Brzi početak
Ovaj modul upravlja do 16 servoa ili PWM izlaza putem I2C-a. Spojite ga, instalirajte biblioteku za svoju platformu i pokrenite najmanji primjer kako biste vidjeli pomak kanala.
Programirate kontroler spojen na ovaj breakout. Sam breakout se ne flasha.
- Arduino
- MikroPython
1. Spojite breakout ploču
Umetnite Qwiic kabel u bilo koji Qwiic priključak na ploči i odgovarajući priključak na vašem kontroleru. Nije potrebno lemljenje, a drugi Qwiic priključak je slobodan za spajanje još jedne Qwiic ploče.
| Kontroler | Pajlovani 16-kanalni 12-bitni PCA9685 breakout za PWM i servo pogon |
|---|---|
| Qwiic priključak | Bilo koji Qwiic priključak |

Ovaj primjer zahtijeva samo Qwiic vezu. Vijačni priključak (ili V+ pin priključka) treba vlastito napajanje samo kada pogonite pravi servo ili PWM opterećenje, a ne za ovaj prvi test.
2. Instalirajte biblioteku
Instalirajte Soldered PCA9685 PWM Servo Driver pomoću Upravitelja biblioteka (Library Manager) u Arduino IDE-u ili ga preuzmite iz izvornog koda u nastavku.
🔗Pajlirani PWM servo pogon PCA9685
Verificirana Arduino biblioteka u komitu 1f3aa5a
Savjet: preuzimanje s Githuba. Na GitHub stranici biblioteke kliknite na zeleni gumb Code i odaberite Download ZIP, a zatim je dodajte u Arduino IDE pomoću Skica → Uključi biblioteku → Dodaj .ZIP biblioteku....
3. Pokrenite prvi primjer
Ovo je Basic_PWM.ino, vlastiti primjer biblioteke. Podiže sirovi PWM omjer na kanalu 0 od potpunog isključenja do potpunog uključivanja, iznova i iznova.
#include "PCA9685-SOLDERED.h"
PCA9685 pwm;
void setup()
{
pwm.begin();
pwm.setPWMFreq(1000); // fast PWM for LEDs/general outputs, not servos
}
void loop()
{
for (uint16_t duty = 0; duty <= 4095; duty += 32)
{
pwm.setPWM(0, 0, duty);
delay(20);
}
}
4. Provjerite rezultat
Nema serijskog izlaza. Priključite LED diodu (s odgovarajućim otpornikom) ili sondu osciloskopa na izlazni pin (OUT) kanala 0, a njezina svjetlina ili udio u vremenu se ponovno i ponovno povećava, pri čemu je potrebno nešto više od 2,5 sekundi po ciklusu.
5. Ako ne radi
Nastavite s Otklanjanje poteškoća i ponovno isprobajte ovaj najmanji primjer nakon svake promjene.
1. Spojite breakout ploču
Umetnite Qwiic kabel u bilo koji Qwiic konektor na ploči i odgovarajući konektor na vašem kontroleru. Nije potrebno lemljenje, a drugi Qwiic konektor je slobodan za spajanje druge Qwiic ploče.
| Kontroler | Spajana breakout ploča za PWM i servo pogon PCA9685, 16-kanalna, 12-bitna |
|---|---|
| Qwiic konektor | Bilo koji Qwiic konektor |

Modul automatski otkriva I2C pinove (SCL 22, SDA 21) na ESP32, ESP8266 i
Soldered Dasduino CONNECTPLUS ploče. Na bilo kojoj drugoj ploči, stvorite vlastiti
objekt machine.I2C i proslijedite ga konstruktoru.
2. Instalirajte modul
Instalirajte Soldered PCA9685 MicroPython Library pomoću mpremote-a, koristeći
naredbu iz README-a modula:
mpremote mip install github:SolderedElectronics/Soldered-PCA9685-MicroPython-Library
Na Windowsu:
python -m mpremote mip install github:SolderedElectronics/Soldered-PCA9685-MicroPython-Library
🔗Pajčani PCA9685 MicroPython biblioteka
Verificirani MicroPython modul u commitu 611d14a
Savjet: preuzimanje s Githuba. Bez mpremote-a, otvorite .py datoteku modula
datoteku na GitHubu i kliknite Preuzmi sirovu datoteku, zatim je otvorite u Thonnyju i upotrijebite
Datoteka → Spremi kao... → MicroPython uređaj da biste je kopirali na ploču.
3. Pokrenite prvi primjer
Ovo je pca9685-basicPWM.py, vlastiti primjer modula. On postupno povećava sirovi PWM
udio ciklusa na kanalu 0 od potpunog isključenog do potpunog uključivanja, iznova i iznova.
from pca9685 import PCA9685
from utime import sleep_ms
pwm = PCA9685()
pwm.setPWMFreq(1000) # fast PWM for LEDs/general outputs, not servos
while True:
for duty in range(0, 4096, 32):
pwm.setPWM(0, 0, duty)
sleep_ms(20)
4. Provjerite rezultat
Nema serijskog izlaza. Priključite LED diodu (s odgovarajućim otpornikom) ili sondu osciloskopa na izlazni pin (OUT) kanala 0, a njezina svjetlina ili udio u vremenu (duty cycle) se ponavljano povećava, pri čemu je potrebno nešto više od 2,5 sekundi po ciklusu.
5. Ako ne radi
Nastavite s Otklanjanjem poteškoća i ponovno isprobajte ovaj najmanji primjer nakon svake promjene.