Kontrollera lamporna över USB med VUSB (1 / 10 steg)
Steg 1: V-USB
Vad är problemet?
Många AVR mikrokontroller har en UART, vilket gör seriell kommunikation med andra marker eller en dator via serieporten. Dock inte många nyare datorer är utrustade med en seriell port dessa dagar, monterade i stället med USB-portar. Det är möjligt att kommunicera med en AVR chip via USB med hjälp av en konvertering chip som FTDI FT232RL hittade på Arduino, men om du använder en styrelse eller en kabel, du lägger till kostnaden och komplexiteten i projektet. Om bara fanns det ett enkelt sätt att prata med AVR chip direkt via USB...
Ange V-USB
Så vad är V-USB? Från deras hemsida (http://www.obdev.at/products/vusb/index.html):
V-USB är en bara programvara genomförandet av en låg hastighet USB-enhet för Atmel's AVR® microcontrollers, gör det möjligt att bygga USB-maskinvara med nästan alla AVR® mikrokontroller, som inte kräver någon ytterligare chip.
Låter bra! Så vad behöver vi att komma igång?
- En kopia av V-USB-koden, som du kan ta från företagets Hämta sida eller deras github sida.
- En version av filen usbconfig.h , modifierad för vårt särskilda projekt (mer om detta senare).
- En AVR microcontroller med minst 2 kB Flash minne, 128 byte RAM, som kan köras på 12 MHz, 15 MHz, 16 MHz eller 20 MHz (med en kristall) eller på 12,8 MHz eller 16,5 MHz (med en inre RC-oscillator).
Att välja en mikrokontroller
Utöver kraven ovan måste våra microcontroller också 3 PWM kanaler, att kontrollera varje RGB-färger. Jag valde att använda ATmega168 eftersom jag hade en lögnaktig runt omkring, men det finns ett par olika alternativ (t.ex. ATtiny2313). Om du väljer en annan mikrokontroller, måste du ändra den angivna firmware koden.