Mạch điều khiển 16 chanel PWM PCA9685
Mạch điều khiển 16 chanel PWM PCA9685
- Hàng trong kho: 29
- Nhà sản xuất: Nhập khẩu
- Khối lượng: 0.10kg
- Mã kho: 2120
- Vị trí: 1F21
Số lượng đã bán: 31
Lượt xem: 210
91.800đ
Giá chưa bao gồm VAT: 85.000đ
1. Giới thiệu tổng quan
Mạch điều khiển 16 channel PWM PCA9685 là giải pháp tối ưu giúp xuất ra đồng thời 16 xung PWM từ 16 cổng khác nhau thông qua giao tiếp I2C. Sản phẩm hỗ trợ điều khiển đồng thời 16 RC Servo hoặc Dimmer thiết bị, tương thích hoàn toàn với Arduino, mang lại độ bền cao và chất lượng gia công tốt.
2. Thông số kỹ thuật
- IC chính: PCA9685
- Điện áp sử dụng: 2.3 ~ 5.5VDC
- Số kênh PWM: 16 kênh
- Tần số PWM: 40 ~ 1000Hz
- Độ phân giải PWM: 12bit
- Giao tiếp: I2C (chấp nhận mức Logic TTL 3 ~ 5VDC)
- Kích thước: 62.5mm x 25.4mm x 3mm
3. Ứng dụng
- Điều khiển nhiều động cơ RC Servo cho Robot cánh tay máy
- Hệ thống Dimmer điều chỉnh độ sáng 16 thiết bị đồng thời
- Các dự án tự động hóa cần xuất nhiều tín hiệu PWM độc lập
4. Hướng dẫn kiểm tra (Test)
Các bước kiểm tra nhanh:
- Chuẩn bị: Mạch PCA9685, vi điều khiển Arduino, cáp kết nối, nguồn cấp phụ cho Servo (nếu cần) và đồng hồ VOM.
- Thao tác: Cấp nguồn 3.3V/5V cho mạch, kết nối giao tiếp I2C (SDA, SCL) với Arduino, nạp code test và đo điện áp hoặc xung ra tại các chân kênh PWM.
- Kết quả: Các kênh xuất xung PWM ổn định, Servo chuyển động đúng góc hoặc thiết bị điều khiển thay đổi cường độ theo chương trình.
* Lưu ý an toàn: Kiểm tra kỹ cực tính nguồn điện trước khi cấp vào mạch, tránh cấp quá áp cho phép và cẩn thận với tĩnh điện khi thao tác trên bảng mạch.
Sơ đồ kết nối & Code test mẫu (Arduino/ESP)
Kết nối chân:
- VCC nối với 5V (Arduino)
- GND nối với GND (Arduino)
- SDA nối với A4 (hoặc chân SDA trên Arduino)
- SCL nối với A5 (hoặc chân SCL trên Arduino)
C/C++ (Arduino/ESP)
#include
#include
// Khởi tạo đối tượng PCA9685 với địa chỉ mặc định 0x40
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();
void setup() {
Serial.begin(9600);
Serial.println("16 channel PWM PCA9685 Test");
pwm.begin();
// Đặt tần số PWM cho servo (khoảng 50Hz)
pwm.setPWMFreq(60);
}
void loop() {
// Điều khiển servo ở kênh 0 xoay từ góc tối thiểu đến tối đa
for (uint16_t pulselen = 150; pulselen < 600; pulselen++) {
pwm.setPWM(0, 0, pulselen);
delay(10);
}
delay(500);
for (uint16_t pulselen = 600; pulselen > 150; pulselen--) {
pwm.setPWM(0, 0, pulselen);
delay(10);
}
delay(500);
} mach dieu khien 16 chanel pwm pca9685



























-250x250.jpg)











