Arduino Over RFduino Program (3 / 4 stap)

Stap 3: Host Code

In mijn setup, ik ben de gastheer van mijn laptop koppelen en het zal ontleden de avrdude opdrachten, upload hex en verificatie. Het apparaat is aangesloten op de target Arduino UNO.

In een eerdere incarnatie van dit instructable, ik had een veel meer gecompliceerde codestructuur om te ontleden en Pass Through-de avrdude opdrachten/verzoeken upload, upload's en verificatie. Sindsdien heb ik ontdekt dat de avrdude verschillende protocollen gebruikt voor het uploaden naar verschillende doelapparaten. Bijvoorbeeld, de Microchip MPIDE gebruikt avrdude programma chipKIT boards, en het protocol is zeer verschillend! Mijn originele ingebouwde programmatuur was ook specifieke! Ook hoefde het niet enigerlei wijze van behandeling van eenvoudige pass-through... Dus,

Terug naar het toetsenbord!

Ik ben met behulp van een timer op de seriële input om het einde van de variërende lengte berichten vinden tijdens het uploaden. Naast verschillende avr opdrachten en verzoeken, Arduino UNO uploads en controleert op 128 byte's en chipKIT uploads en controleert op 256 byte's. Om de limiet van 32 byte packet in RFduinoGZLL bibliotheek beheren, troep mij opwaarts een 2D-matrix buffer seriële gegevens te verzamelen. Mijn buffer is 10 niveaus diep, dat is meer dan genoeg om te verwerken wat ik nodig heb in dit geval. Om bij te houden dingen, ben ik de eerste index van de eerste matrix te houden van het aantal pakketten dat uiteindelijk op de radio komt reserveren. Soort een controlesom.

Het aardige ding is dat deze RFduino firmware ook seriële pass-through tussen de doelgroep en de PC behandelen zal zonder te weten als het het uploaden van of niet. De code is veel leuker om naar te kijken, en veelzijdiger. Rock!

Een ding dat kwam was aan de kant van het apparaat, ik ben niet in staat om de serialEvent()-functie te gebruiken. Waarschijnlijk steunt als gevolg van één of ander soort interrupt probleem met de oproep van de radio. Ik ben dus in plaats daarvan, de seriële poort in de loop polling.

Ik ben de GPIO6 om te zien wanneer het gaat laag polling, betekenende doel reset poging. Ik ben dan het verzenden van een speciaal teken '$' apparaat te zetten is het eigen GPIO6 laag. Vervolgens, wanneer de HOST GPIO6 gaat hoog, stuurt het '#' te vertellen apparaat om het eigen GPIO6 hoog is.

Veel meer opmerkingen in de bijgevoegde code!

Volgende, we zullen een kijkje nemen op de apparaatcode!

Gerelateerde Artikelen

Registreerapparaat voor Arduino Over seriële poort

Registreerapparaat voor Arduino Over seriële poort

Ik ben beetje moe van het gebruik van seriële als logger - voornamelijk om twee redenen: het sprintf syntaxis niet ondersteunt en tekenreeks worden vastgehouden in RAM. Om deze reden die ik heb uitgevoerd nieuwe bibliotheek: https://github.com/maciej
VBNET controle van ARDUINO over TCP RS232

VBNET controle van ARDUINO over TCP RS232

PROJET PUPITRE SERIËLE VIA TCPVB NET / XPORT (LAN) ou CSW M85 (WIFI LAN) ouCIE M10 (LAN) / ARDUINOInleiding:Met dit project zal u zitten kundig voor pilot uitgangen van een arduino met een virtuele vb.net pusbutton of een schakelaar voor digitale of
Android Arduino Bluetooth HC-05 - Arduino controle over stem en knoppen in App

Android Arduino Bluetooth HC-05 - Arduino controle over stem en knoppen in App

Hey dit instructable is over Android - Arduino verbinding en controle Arduino over stem en knoppen in de Android App, veel plezier met het maken en laat ons weten hoe je deed en suggesties @ micky.patel41Voor de BlueUino van onze Android App in de Pl
Slimme telefoon gecontroleerde LED-verlichting met behulp van HC-05 en Arduino UNO

Slimme telefoon gecontroleerde LED-verlichting met behulp van HC-05 en Arduino UNO

Bluetooth Module HC-05 is een van de meest gebruikte stuk van hardware waarmee u kunt snel prototype uw ideeën waarvoor een draadloze controle/connective-element. Dit project is een zeer snelle demonstratie van hoe wij kunnen deze module met een ardu
GOduino III - de breadboard-vriendelijke Arduino gebaseerde robot controller

GOduino III - de breadboard-vriendelijke Arduino gebaseerde robot controller

UPDATES16 nov 2012 gekenmerkt op DangerousPrototypes.com http://goo.gl/N4DIC3 oktober 2012: heb ik een PCB-adapter om te helpen positie IR & ultrasone sensoren 90 graden naar breadboard ter ondersteuning van GOduino III robot projecten ontworpen1 sep
Arduino OLED 128 X 64 IIC seriële Display: afdrukken van tekst en bewegende beelden

Arduino OLED 128 X 64 IIC seriële Display: afdrukken van tekst en bewegende beelden

Heb je zelf een OLED-display voor Arduino gekocht maar weet niet hoe aan de slag? Niet zo eenvoudig als je dacht te gebruiken? Probeer dit uit!U leert aan kabellengte tot uw OLED-display en aan het communiceren via seriële (I2C). We gaan ter dekking
RC zender voor USB-Gamepad met behulp van Arduino

RC zender voor USB-Gamepad met behulp van Arduino

Waarom moet ik dit doen?Als het gaat om vliegen RC vliegtuigen die gebruikmaakt van een simulator kunnen zijn een geweldige manier om je vaardigheden tijdens het laagseizoen of zelfs voor te bereiden voor uw eerste vlucht. Het grote nadeel aan het ge
Arduino animatronics-Maak uw geweldige kostuums meer awesome!

Arduino animatronics-Maak uw geweldige kostuums meer awesome!

Hier is hoe te het licht, geluid en actie toevoegen aan uw favoriete Halloween-project met behulp van de opensource Arduino microcontroller. Arduino is gemakkelijk te leren te gebruiken en het opent een hele nieuwe wereld voor kostuum bouwers en sche
Wat is een Arduino? Waarom moet ik een eigen?

Wat is een Arduino? Waarom moet ik een eigen?

Als u zich afvraagt welke een Arduino board is? En hoe het kan u helpen om uw eigen project doen. Dan is dit bericht is voor jou een duidelijk beeld van wat er te krijgen.Arduino is een Raad van Bestuur één micro-controller en het is een open-source
Arduino RC auto met lange afstand en aangepaste zender.

Arduino RC auto met lange afstand en aangepaste zender.

Hallo! Dit is mijn eerste instructable.Daarin zal ik u tonen hoe te maken van een RC auto met Arduino en de draadloze nrf24l01 +-module, of hoe om te upgraden een goedkope 27 MHz RC auto.De oude RC auto, die van I het chassis, en de heli Controller n
Hoe Breadboard Arduino Compatible.

Hoe Breadboard Arduino Compatible.

Het is geen geheim dat rond oomlout HQ we zijn enorme fans van de open bron van Arduino micro-controller. De pre-en-klare Duemilanove bestuur is een verbazingwekkende prototyping-platform, maar soms zijn leuk om te maken iets voor jezelf. Wat volgt i
Arduino UNO als programmeur van AtMega328P

Arduino UNO als programmeur van AtMega328P

Na ontvangst van mijn eerste Arduino UNO, besefte ik spoedig dat het onpraktisch om een UNO gebruiken voor elk project zal zijn. Net als bij de familie van de Microchip van MCU's, wilde ik een makkelijke manier om programma zelfstandige circuits en c
RFduino iBeacon Welcome Home

RFduino iBeacon Welcome Home

Geplaatst op 6 mei 2014Bekijk de RFduino van vinger-tip formaat, Arduino compatibele, draadloze ingeschakelde micro controller:http://www.rfduino.com/product/rfd90101-rfduino-2PC-dev-kit/Gebruik uw RFduino als een iBeacon! Snelle en eenvoudige instal
KIM Uno - een 6502 KIM-1 Computer op Arduino

KIM Uno - een 6502 KIM-1 Computer op Arduino

De KIM-Uno is een opensource-replica van de klassieke 1976 KIM-1 computer. Zakformaat 6502 codering!Het verdubbelt omhoog als een programmeerbare rekenmachine 6502 schaakt en is een vrij goede machinetaal leermiddel. Kosten: over $12 in de handel ver