Arduino eindige toestandsmachine en multitasks (1 / 5 stap)

Stap 1: De eerste statusmachine: 1 meester en 3 concurent slaven


De controle-interface:

Ik gebruik een arduino uno met een kleine interface (2 knoppen (ATU1, ATU2) voor trigger schakeloptie op en 3 LEDS (11, 12, 13) voor uitvoer actie) en een LCDKeypad.

De machines:

De microcontroller kunt een Master machine die 3 differents slaaf machines starten kan:

-de machine FB een led 1 Hz knipperen. Als ATU1 wordt geduwd, wordt het uitgeschakeld het FB-machine, als ATU1 wordt getrokken, op de FB machine herstarten

-de machine SB knipperen een led op een snellere frequentie met geen synchronisatie of interactie met de FB-machine. Als links (op de stijgende rand) wordt ingedrukt, wordt het uitgeschakeld de SB-machine, als SELECT is ingedrukt (op de stijgende rand), het opnieuw starten van de SB-machine.

-de pomp-machine die wordt uitgevoerd stoppen van een uitvoer- of een relais om te beginnen met een pomp. Als UP wordt ingedrukt (op de stijgende rand), de output is hoog, als ATU2 wordt ingedrukt (op de stijgende rand) de uitvoer is switched OFF.

Dit eenn inkapseling genoemd: wanneer u een inkapseling staat uitschakelt, elke ingekapselde Staten zijn uitschakelen op hetzelfde moment.

Wanneer u parallelle toestanden, in automatisering start, jij een divergentie of gelijktijdige Sequences of machines.

Het schema:

Vanwege het LCDkeypad schild, een heleboel pennen worden gebruikt: 4, 5, 6, 7, 8, 9, 10, pennen. De drukknoppen van het toetsenblok zijn analoog op pin A0.

Het blijft dus een paar hoeveelheid pinnen aan een controlesysteem. Dit de reden waarom ik heb toegevoegd een I2C i/o-uitbreiding circuit gebruikt in de volgende stappen. Je zal negeren bij deze stap: hou op je geest ATU1, ATU2, toetsenbord knoppen en de pin 11, 12, 13 digitale uitgangen.

Het programma:

Er zijn een heleboel reacties binnen.

De berichten worden weergegeven:

De eerste regel wordt weergegeven welke machine wordt gelanceerd.

De tweede regel wordt weergegeven als acties (munt verplaatsen uitvoert van staat tot staat).

Gerelateerde Artikelen

Staat van de machine en multitasking op arduino met SPI expanders

Staat van de machine en multitasking op arduino met SPI expanders

Vorige week vroeg ik een systeem aan pilot fireworks maken met een arduino. Het nodig ongeveer 64 uitgangen aan de branden. Een manier om het te doen is het gebruik van IC Expander. Dus 2 oplossingen zijn beschikbaar:-een I2C expander maar het omvorm
Arduino helikopterplatform voor mini Quad Copter

Arduino helikopterplatform voor mini Quad Copter

Gebruik deze helikopterplatform voor precisie landing opleiding of daag uw vrienden uit. Waarom niet instellen van een track en laat het Helipad tijd uw ronden?Als je dit instructable - gelieve stemming!Laten we eerlijk zijn - sinds je kreeg verslaaf
Arduino Run nauwkeurige vloeistof/poeder Dispenser systeem

Arduino Run nauwkeurige vloeistof/poeder Dispenser systeem

Doel: Maak iets te doen sommige meten voor u, of voor het koken of anderszins. Daarbij zal zij zowel vloeistoffen en poeders uit het zelfde Configuratiescherm. Een Arduino wordt gebruikt om het systeem te werken.Opmerking: Geen van ons (de ontwerpers
Arduino licht dimmer

Arduino licht dimmer

Un système qui imite les cycli du jour.Een systeem voor lichte simulatie dag met behulp van de RTC.Stap 1: InleidingCE-système va mensen d'imiter un lever de soleil (LV) et un coucher de soleil (CO), une fois par jour. Cet appareil est destiné surtou
Finite State Machine op een Arduino

Finite State Machine op een Arduino

Vandaag, zullen we een eindige toestandsmachine (FSM) uitvoeren op een Arduino. Dit kunt u systemen opzetten met een duidelijk omschreven gedrag op basis van verschillende Staten. U leert wat een eindig-statusmachine is en wat er goed voor.In een not
Sonic schroevendraaier stijl computerinterface

Sonic schroevendraaier stijl computerinterface

deze instructies zal het documenteren van de oprichting van een HCI-apparaat in de stijl van een sonische schroevendraaier.De belangrijkste componenten zijn twee RFD21733 transceivers en een Teensy 3.0.Een demonstratievideo van het werkende apparaat
Transfiguratie drukte: Controle

Transfiguratie drukte: Controle

Dit is het derde deel van onze Transfiguratie drukte van Amerika's grootste Makers wij eerst waren uitgeschakeld op de show, maar we altijd het gevoel de maker Gemeenschap zou waarderen onze inspanning en dacht dat ging in ons project.In tegenstellin
Eenvoudige zelfbalancerende Robot w / Galileo Gen 2

Eenvoudige zelfbalancerende Robot w / Galileo Gen 2

Na vrijwilligerswerk bij de lokale mini Maker Faire, en het krijgen van een kans om te spelen met de Intel Galileo Gen 2 Arduino board, was ik gemotiveerd om het vinden van een maker-project voor mezelf. Na een snel overzicht van de opties en mijn in
Automatisch afsluiten van draadloze muis (Prototype)

Automatisch afsluiten van draadloze muis (Prototype)

Disclaimer: Dit is een prototype en maakt uw draadloze muis "wired". Verder, afhankelijk van uw muis, kan het verliest zijn vermogen om te glijden over de tabel/mousepad.Voor onze laatste project in CPE 133 Digital Design op Cal Poly, The groep
BitRunner FPGA spel

BitRunner FPGA spel

Maak en speel uw eigen bits Runner Game. Geen console of vlezige computer vereist! Druk op de knop van de dodge binnenkomende hindernissen om te bereiken de hoogste score te ontwijken! Dit project is behoorlijk moeilijk, een uitdaging voor beginners,
Een eenvoudige hydrocultuur systeem met MediaTek LinkIt™ een

Een eenvoudige hydrocultuur systeem met MediaTek LinkIt™ een

Vandaag willen we een project op basis van het nieuwe bestuur Mediatek Linkit één beschrijven. Met dit board willen we een eenvoudig hydrocultuur systeem die kan realiseren:1) het maken van hydrocultuur voedingsstof oplossing:Dit zal worden gemaakt m
Cellulaire automaat ontwerp voor kruissteek iPhone Case

Cellulaire automaat ontwerp voor kruissteek iPhone Case

hier vindt u het ontwerp (en de broncode voor het) dat ik op voor mijn DIY iPhone 4 zaak besloot, zoals goed zoals sommige uiteinden en trucs op hoe te doen een schoon (en knoop-vrij!) naald-punt-project, dat ziet er cool ook.AchtergrondOngeveer een
Stap 8 FPGA Sequencer en Synthesizer

Stap 8 FPGA Sequencer en Synthesizer

In deze tutorial gaan we graag een stap 8 synthesizer voor onze FPGA-board. We zullen werken met de Digilient Nexys 2 board maar onze code kan worden gewijzigd voor andere boards. Dit project werd gebouwd door Tran van Lincoln en Joseph Coplon voor o
Obstakel vermijden spel

Obstakel vermijden spel

We waren voor deze toewijzing gegeven een Altera DE2-115 bord met een cycloon IV E FPGA en vertelde een project dat gebruik maakt van de hardware van de Raad van bestuur en de Verilog HDL-taal die we hebben geleerd in de klas maken. We dachten dat he