โดยพื้นฐานแล้วฉันแค่ต้องส่งข้อมูลบางอย่างไปยังไมโครคอนโทรลเลอร์ผ่าน USB จากนั้นไมโครโปรเซสเซอร์จะถอดรหัสข้อมูลและขับแถบไฟ LED ซึ่งทำงานที่ 5V ฉันมีปัญหาในการหาไมโครคอนโทรลเลอร์ที่เหมาะสมสำหรับงาน
ไมโครคอนโทรลเลอร์เพียงแค่ต้องมีพอร์ตอนุกรม 2 พอร์ตสำหรับการสื่อสารแบบ USB, พอร์ตอนุกรมสองพอร์ตสำหรับการสื่อสารด้วยแถบ LED และสามารถใช้งานที่ 5V ดูเหมือนว่าไม่จำเป็นต้องมี IC เฉพาะสำหรับการสื่อสาร USB เมื่อทั้งหมดที่ฉันต้องการคือการตั้งค่าพอร์ต COM แบบอนุกรม
ตัวอย่างเช่นต่อไปนี้เป็นตัวอย่างโค้ด Arduino ที่เขียนไบต์ไปยังแถบ 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);
}
}
ในการสลักข้อมูลที่คุณส่งค่าศูนย์ไปที่แถบ