RC Quadrotor helikopter (15 / 37 steg)
Steg 10: Förbereda mikrokontroller
Om du inte har den Arduino IDE, ladda ner den och installera den. Jag använder version 0022.
Följande steg förklaras i detalj i denna wiki artikeln: http://code.google.com/p/ro-4-copter/wiki/GeneralSoftwareSetup
Denna sida är bara en riktigt kort sammanfattning av vad som redan är i ovanstående wiki artikel!
Arduino bootloader ska programmeras till mikrokontroller först. Detta steg kräver användning av en AVR programmerare. Dock efter bootloader är flashad till mikrokontroller, behöver du bara en USB-till-seriell kabel (till exempel en FTDI kabel) att ladda upp koden från Arduino IDE.
Starthanteraren (jag har bifogat den) ändras något eftersom jag använder ATmega644P istället för den vanliga Arduino ATmega328P. Filerna finns. Fuse-bits behöva skrivas till de korrekta värdena också.
AVRDUDE är det verktyg som vi använder till blixt den bootloader hex filen till mikrokontroller. AVRDUDE kommandona du behöver är
"avrdude - c programmer_name -p atmega644p - U flash:w:bootloader_filename.hex - U lfuse:w:0xFF:m - U hfuse:w:0xD8:m"
Var uppmärksam på programmer_name och bootloader_filename! Säkringarna är att få ATmega att använda 16 MHz resonator, ställa in storleken bootloader, aktiverar bootloader, inaktivera JTAG och aktivera SPI dataöverföring.
Också kopiera mappen bootloader "Ro4Copter_Boot" (minas till ge nytt namn den utan datum version) som .../arduino-0022/hardware/arduino/bootloaders/Ro4Copter_Boot.
Också hämta Arduino "core" Jag har förutsatt här (kallas Ro4Copter_Core, kom ihåg att byta namn på den utan den dag versionen) och Lägg den i katalogen "core" Arduino så du får .../arduino-0022/hardware/arduino/cores/ro4copter_core. Också ändra filen boards.txt för att inkludera en post om du vill använda denna kärna. Detta gör att Arduino IDE att kompilera för ATmega644P i stället för den ursprungliga Arduino ATmega328P. Var noga med att välja posten rätt styrelse inuti Arduino IDE menyerna. För mer detaljer om detta steg, kolla in wiki-sidan jag länkade ovan.
Posten board.txt:
Ro4Copter.Name=Ro4CopterRo4Copter.upload.Protocol=stk500
Ro4Copter.upload.maximum_size=57344
Ro4Copter.upload.Speed=57600
Ro4Copter.bootloader.low_fuses=0xFF
Ro4Copter.bootloader.high_fuses=0xD8
Ro4Copter.bootloader.extended_fuses=0xFF
Ro4Copter.bootloader.Path=Ro4Copter_Boot
Ro4Copter.bootloader.File=Ro4Copter_Boot_arduino.hex
Ro4Copter.bootloader.unlock_bits=0x3F
Ro4Copter.bootloader.lock_bits=0x0F
Ro4Copter.Build.MCU=atmega644p
Ro4Copter.Build.f_cpu=16000000L
Ro4Copter.Build.core=Ro4Copter_Core
Här är en skärmdump till Visa var alla dessa mappar är:
Skissen du måste kompilera föreskrivs i steg 26. Kompilera den och ladda upp den till ATmega644P använda startprogrammet senare.
De kommande stegen kommer att hjälpa dig förstå vad exakt koden gör. Hoppa över dem om du inte bryr dig.