Programmera Arduino över RFduino (3 / 4 steg)

Steg 3: Värd kod

I min setup, jag bifoga värden till min laptop och det kommer att tolka den avrdude kommandon, ladda upp hex och kontroll. ENHETEN är ansluten till målet Arduino UNO.

I en tidigare inkarnation av detta instructable, jag hade en mycket mer komplicerade kodstruktur att parsa och vidarekoppling avrdude ladda upp kommandon/begäran, ladda upp sidorna och kontroll sidorna. Sedan dess har jag upptäckt att avrdude använder olika protokoll för uppladdning till olika målenheter. Till exempel mikrochip MPIDE använder avrdude till programmet chipKIT styrelser, och protokollet är extremt olika! Min ursprungliga firmware var alltför specifik! Det heller inte något sätt att hantera enkla genomslag... Så,

Tillbaka till tangentbordet!

Jag använder en timer på den seriell in för att hitta slutet av varierande längd visas under uppladdning. Förutom varierande avr kommandon och begäranden, Arduino UNO uppladdningar och verifierar i 128 byte sidor och chipKIT uppladdningar och verifierar i 256 byte sidor. För att hantera 32 byte paket gränsen i RFduinoGZLL bibliotek, satt jag upp en 2D array buffert att samla seriella data. Min buffert är 10 nivåer djup, vilket är mer än tillräckligt för att hantera vad jag behöver i detta fall. För att hålla reda på saker, jag reservera första index för den första matrisen att hålla antalet paket som så småningom kommer in på radion. Typ av en kontrollsumma.

Fina är att denna RFduino firmware också kommer att hantera seriell överföring mellan mål och PC utan att veta om det belastande upp eller inte. Koden är mycket trevligare att titta på, och mer mångsidig. Rock!

En sak som kom upp var på enheten sida, jag kan inte använda funktionen serialEvent(). Förmodligen ryggar på grund av någon form av avbrott fråga med radio samtalet. Jag så istället röstningen den seriella porten i loop().

Jag är röstningen GPIO6 för att se när det går låg, betecknar mål återställa försök. Jag sedan skickar en speciell karaktär '$' enhet att sätta det är egen GPIO6 låg. Sedan, när värd GPIO6 går högt, det kommer att sända '#' tala om enheten för att uttrycka det är egen GPIO6 hög.

Massor fler kommentarer den bifogade uppförandekoden!

Därefter tar vi en titt på styrkod!

Se Steg
Relaterade Ämnen

Programmera Arduino Pro Mini använder Arduino Uno

Hej alla. Idag ska jag visa hur man programmerar arduino pro mini använder arduino uno.Om du redan hade en arduino uno och du nyligen köp arduino pro behöver mini då du inte köpa USB till seriell omvandlare för att programmera arduino pro mini efters...

Programmera Arduino Uno i C-språket

Hej vänner,I detta instructable, har jag visat hur man programmerar Arduino Uno i C-språket.Arduino använder sitt eget språk till programmet Arduino styrelser, eftersom dess programmeringsspråk som är lätt att förstå.Men den kan också programmeras i...

Programmera Arduino med mobiltelefon

i denna tutorial kommer jag att lära dig att programmera arduino använder mobiltelefondu behöverOTG kabelArduinoenMobiltelefonDu kan köpa OTG onlineSteg 1: Ansluta styrelse och mobiltelefonansluta den mhl PIN-kod till mobilenKvinnliga USB-porten går...

Hur man får in robotics, programmering, Arduino elektronik

Robotics integrera alla STEM fält och alltid gör varje unge galen. Det kan hjälpa barnen att få praktisk erfarenhet på mekanik, elektronik, kontroll system och datavetenskap.Men verkar alla robotar på marknaden vara dyrt, svårt att montera, problem t...

Android Arduino Bluetooth HC-05 - kontrollera Arduino över röst och knappar i App

Hej detta instructable är om Android - Arduino anslutning och kontrollera Arduino över röst och knappar i Android App, ha roligt att göra det och låter oss veta hur du gjorde och några förslag @ micky.patel41För vår Android App BlueUino i Play Storeh...

Åtkomst till Arduino över internet

Detta instructable är bara ett försök att ansluta din arduino till internet. Det finns så många liknande instructables som berättar hur du ska göra samma sak, här är lite mer detaljerad version, som jag trodde skulle hjälpa nybörjare som mig. Så låt...

Programmera Arduino Mini 05 med FTDI Basic

När du behöver en liten arduino med en bra mängd I/O pins, är Arduino Mini för dig. Detta är en av mina favorit mikrokontroller för bärbara tech projekt på grund av dess storlek.Steg 1: material Arduino MiniFTDI BasicManliga headersStartkablar eller...

Programmera Arduino Bootloader utan programmerare

OH NO! Du har knullat upp och nu Arduino bootloader på din "duino är borta! Vad du ska göra? Gå spendera pengar för en programmerare??? Väl inte! Har jag en lösning som endast kräver din ' duino och några kablar! Så det är inte slutet av världen, det...

Programmera Arduino Nano via Uno med ICSP

Hej vänner,I detta instructable, har jag visat att hur kan du programmera Nano via Uno.Som ni kan se i ovanstående bild, är min Arduino Nano USB kvinnliga pin bruten.Så måste jag hitta sätt att ladda upp skiss till den något sätt.En dag jag var Googl...

Programmera Arduino Uno

Jag har varit programmering min Arduino att skapa projekt i nästan 2 år nu. Först skulle jag bara använda kod skriven av andra människor till kompletta projekt, men efter att jag började förstå hur koden är inställd ville jag skriva min egen enkla ko...

Skicka SMS från Arduino över Internet med ENC28J60 och Thingspeak

Detta Instructable förklarar hur du skickar ett SMS från en Arduino använder Internet. Det finns många sätt att närma sig detta och jag kommer att förklara ett av de olika metoder som används för att utföra denna uppgift.Några viktiga punkter som beh...

Hur att programmera Arduino Bluetooth seriell kommunikation i Visual Basic Express 2010

Thär är olika Android Program/programvara för att styra din robot arduino bluetooth med din android. Men du kan inte hitta en att använda med din windows-dator. Så programmet jag en liten en i Visual Basic Express 2010. Hoppas det kan vara bra som en...

Programmera Arduino med en annan Arduino

Detta är min första Instructable. I detta Instructable ska jag visa dig hur man programmerar en Arduino med en annan Arduino. Inga drivrutiner behövs! Detta Instructable är också användbart för uppladdning skisser till kinesiska ArduinoSteg 1: Saker...

TinyISP-Attiny25/45/85 programmering Arduino UNO R3 kompatibel sköld

Trött på att alltid koppla upp bygeln trådarna att programmera din Attiny?Vad sägs om att göra en lätt Program Shield för Arduino att programmet din på liten!Av detta kommer vi att kunna Program våra tiny25/45/85 lätt genom att bara koppla upp din sk...

Logger för Arduino över Serial Port

Jag är lite trött på att använda följetong som logger - främst av två skäl: det stöder inte sprintf syntax och sträng sitter i RAM. Därför har jag genomfört nya bibliotek: https://github.com/maciejmiklas/ArdLogArdLog serverar enkel logger för Arduino...

Programmera arduino från raspberry pi

I denna tutorial kommer jag visa dig hur man programmerar arduino med raspberry pi.Allt du behöver är:Raspberry pi med internet-anslutningArduino unoAnslutning sladdSteg 1: Vad man ska göraGå till raspi lxterminal och typ i sudo lämplig-få installera...

En avancerad metod för Arduino & AVR programmering

Detta instructable är ett måste läsa för alla som är bekanta med core AVR chips och Arduino.Tja, mer konkret, när jag läste den instructable kommer du att kunna:1) vet väl skillnaden mellan AVR och Arduino.2) programmering Arduino med WinAVR & använd...

Programmera en ATtiny med Arduino

följer är anvisningar för programmering ATtiny mikrokontroller med Arduino IDE. På ren svenska är detta hur man programmerar 8-pin Atmel marker som vanligt en Arduino. Detta är cool eftersom ATtiny är mycket liten, och - Ja - detta kan du göra små sa...

Arduino trådlös programmering med XBee serie 1 eller 2

Hej. Detta Instructable kommer att guida dig genom processen att trådlöst programmering din Arduino använder två XBees. Jag har precis avslutat utforma en EEGEN radiosystemet med XBee moduler, så jag har blivit ganska flytande i programplaneringen oc...