Wkunl

Hoe je arduino software in C schrijven

De Arduino hardware-processing platform is ubiqutous geworden binnen de technologie hobbyist gemeenschap, en niet-techneuten gelijk krijgen om het te weten omdat het zo eenvoudig te gebruiken. Echter, kunnen ervaren programmeurs ook profiteren van deze fysieke-computing-platform met pre-en-klare code, maar kan worden gefrustreerd door de overdreven-simplistische GUI die wordt geleverd met Arduino software.

Deze tutorial zal u tonen hoe u volledige controle over uw Arduino te nemen door te laten zien hoe je de C + +-code Arduino biedt u, en gebruik (of wijzigen) deze code naar je eigen C + +-programma's voor de Arduino platforms te creëren, met behulp van de Eclipse C + + IDE nemen, de AVR-GCC compiler, en avrdude om uw programma's te downloaden om hardware

Stappen

Hoe je arduino software in C schrijven. Download alle benodigde software en bestanden.
Hoe je arduino software in C schrijven. Download alle benodigde software en bestanden.
  1. 1
    Download alle benodigde software en bestanden. Dit omvat:
    • De nieuwste Arduino softwarepakket waarbij alle vooraf gemaakte C + + bestanden arduino lopen te maken, evenals de eenvoudige Java GUI gericht op niet-programmeurs omvat. Zodra de andere bestanden worden geïnstalleerd, dit is het enige bestand dat je nodig hebt vanaf nu!
    • AVR-GCC, die de compiler voor de AVR-serie microcontrollers (hart van een Arduino). Voor Windows-gebruikers, krijgen WinAVR
    • De Eclipse C + + Taal IDE, waar u gaat doen uw codering en het uploaden van de code op uw Arduino! Eclipse vereist dat u de Java Runtime Environment geïnstalleerd
    • De AVR-Eclipse plugin, die de functionaliteit van de Eclipse IDE moet je Arduino te praten biedt
  2. 2
    Pak de bestanden voor uw Eclipse IDE in zijn eigen speciale map. Vervolgens, pak de bestanden voor de AVR-Eclipse plugin in dezelfde map (of kopieer de inhoud naar die map).
  3. 3
    Maak een C + +-project in Eclipse, en gebruik de volgende instellingen;
    • Maak het soort project een "AVR Kruis Doelprogramma"
    • Zorgen "Debug" is UN-GECONTROLEERD bij het selecteren Build configuraties (en zorgen voor "de markt" is aangevinkt)
    • Toen hem werd gevraagd voor hardware details, zorg ervoor dat u de juiste frequentie (typisch 16.000.000 Hz) en de juiste microcontroller te selecteren, afhankelijk van uw arduino soort
  4. 4
    Pak de nieuwste versie van de Arduino software van hun website. Kopieer de volledige '\ hardware \ arduino \ cores \ arduino' map in je project map. Nu dat Eclipse is geïnstalleerd en de plugin is geconfigureerd, vanaf nu is dit de enige map die nodig is om nieuwe Arduino projecten op te starten vanaf nul!
  5. 5
    Maak een van de belangrijkste. H bestand die leegte setup (), int main () en leegte loop () verklaart. omvatten "WProgram.h" (met aanhalingstekens) in deze header ook; dit koppelingen aan alle arduino code.
    LET OP: Vanaf Arduino 1.0, bevatten "Arduino.h" in plaats van "WProgram.h".
    Deze wijzigingen zijn aangebracht in de 2011/11/30 release van Arduino 1.0, volgens de revisions.txt bestand dat wordt geïnstalleerd met de IDE.
  6. 6
    Fix compiler-fouten in arduino software. Vanaf arduino v0018, zal deze ook de volgende wijzigingen;
    • main.cpp; delete "# include <WProgram.h>" aan de bovenkant, en zorgen ervoor dat uw "main.h" wordt in plaats daarvan opgenomen
    • Tone.cpp, veranderen de laatste twee omvat, <wiring.h> & <pins_arduino.h>, om offertes in plaats van beugels hebben ("wiring.h" & "pins_arduino.h")
    • Print.h, de functie declaratie "leegte functie (int inputs) = 0;" moet worden gewijzigd in "leegte functie (int inputs);", of met andere woorden schrappen van de "= 0" dus het is niet een pure-virtuele functie

Tips

  • Om uw programma's om hardware te downloaden, moet u avrdude configureren in uw project instellingen om de juiste seriële poort, 57600baud, en configuratie-instelling van de 'Arduino' gebruiken
  • Zorg ervoor dat je niet bouwen onder de 'debug' configuratie! Het kan extra fouten veroorzaken
  • Ontdek uw weg weet in de code zal enige tijd duren, er zijn een aantal fouten die de tijd nemen om te sporen.