Về cơ bản, tôi chỉ cần gửi một số dữ liệu tới vi điều khiển qua USB, sau đó bộ vi xử lý sẽ giải mã dữ liệu và điều khiển một dải đèn LED chạy ở 5V. Tôi đang gặp khó khăn trong việc tìm kiếm vi điều khiển phù hợp cho công việc.
Bộ vi điều khiển chỉ cần có 2 cổng nối tiếp để giao tiếp USB, hai cổng ra nối tiếp để giao tiếp với dải đèn LED và có thể hoạt động ở mức 5V. Dường như không cần thiết phải có IC chuyên dụng để liên lạc với USB khi tất cả những gì tôi cần là một cổng COM nối tiếp được thiết lập.
Ví dụ, đây là đoạn mã Arduino ghi một byte vào dải LPD8806:
void write8(uint8_t d) {
for (uint8_t i=0; i<8; i++) {
if (d & _BV(7-i))
digitalWrite(dataPin, HIGH);
else
digitalWrite(dataPin, LOW);
digitalWrite(clockPin, HIGH);
digitalWrite(clockPin, LOW);
}
}
Để chốt dữ liệu bạn gửi số không vào dải.