Toetsenbord Input validatie met behulp van State Machine programmering (6 / 7 stap)

Stap 6: Zet het allemaal samen...

  • De helper functies en minimale logica toevoegen aan de verklaringen van de schakelaar (states)

    • Ga stand by stand na de Braziliaanse diagram regels hierboven

       switch(state) { case INITIAL: // X if(validKeys0to9(key)) { pos = displayKey(key, pos); storeKey(key); state = VALUE1; } else { invalidFormat(); } break; case VALUE1: // XX if(validKeys0to9(key)) { pos = displayKey(key, pos); storeKey(key); state = VALUE2; } else if (validAtSign(key)) { // X@ pos = displayKey(key, pos); state = ATSIGN; } else { invalidFormat(); } break; case VALUE2: // XX@ if(validAtSign(key)) { pos = displayKey(key, pos); storeKey(key); state = ATSIGN; } else { invalidFormat(); } break; case ATSIGN: // X HH if(validKeys0to9(key)) { pos = displayKey(key, pos); storeKey(key); state = HOUR1; } else { invalidFormat(); } break; case HOUR1: // X XX if(validKeys0to9(key)) { pos = displayKey(key, pos); storeKey(key); state = HOUR2; } else if (validColon(key)) { // X XX pos = displayKey(key, pos); state = COLON; } else { invalidFormat(); } break; case HOUR2: // X XX if (validColon(key)) { // X XX pos = displayKey(key, pos); state = COLON; } else { invalidFormat(); } break; case COLON: // X XX if(validKeys0to5(key)) { pos = displayKey(key, pos); storeKey(key); state = MIN1; } else { invalidFormat(); } break; case MIN1: // X XX if(validKeys0to9(key)) { pos = displayKey(key, pos); storeKey(key); state = MIN2; } else { invalidFormat(); } break; case MIN2: // X XX if(validPoundSign(key)) { pos = displayKey(key, pos); storeKey(key); state = EXECUTE; } else { invalidFormat(); } break; case CLEAR: clearAll(); break; default: break; } // switch 

Gerelateerde Artikelen

Druksensor met behulp van de machines beschikbaar op Softlab

Druksensor met behulp van de machines beschikbaar op Softlab

Publiceerde ik een andere tutorial over hoe de mensen van Softlab hier in Umea een naaimachine voor het gebruik van geleidende draad aangepast. Dit leerprogramma zal tonen hoe maak je een druksensor met behulp van die machine. Ik gebruikte ook andere
Auto polijstmachine met behulp van boor machine

Auto polijstmachine met behulp van boor machine

bouwen van uw eigen auto polijstmachine met behulp van boor machine met lage kosten.Stap 1: Onderdelen en gereedschappen die nodig zijn Drill machineSponsSynthetische rubber, lijmDent removal vloeien voort uit de pop-a-dentSpray kan capschroevenmesSt
Grote brandweerman decoratie met behulp van Cricut Machine

Grote brandweerman decoratie met behulp van Cricut Machine

ik ben net klaar met het maken van deze 13" hoge brandweerman decoratie voor de verjaardagspartij van mijn kleinzoon op mijn Cricut machine.Stap 1: Dagelijks Paper Dolls Cricut Cartridge ik gebruikte deze brandweerman pagina (58) uit de dagelijkse pa
Hoe een backup van uw Mac met behulp van Time Machine in OS X 10.10 Yosemite

Hoe een backup van uw Mac met behulp van Time Machine in OS X 10.10 Yosemite

Wij zijn het uitvoeren van dit op de meest recente versie van Mac OS X Yosemite, maar het proces vrijwel hetzelfde in andere versies van Mac OS X is.Zorg ervoor dat u hebt een usb-, firewire- of thunderbolt externe harde schijf aangesloten op uw comp
VLC Media Player-besturingselement met behulp van externe IR

VLC Media Player-besturingselement met behulp van externe IR

Hallo jongens, dit instructable is voor al degenen die willen Bedien uw VLC mediaspeler of beheren van uw laptop met een IR-afstandsbediening of een draadloos toetsenbord uit de IR externe maken.U kunt dit gebruiken om te spelen, pauzeren, verhogen e
How to Talk aan iemand met behulp van Ham Radio

How to Talk aan iemand met behulp van Ham Radio

Ham radio is cool kan, maar het zeer zenuw wracking om te praten met iemand die het gebruikt. Praten met iemand met behulp van ham radio is algemeen bekend als een 'QSO' of een 'contact'. Hoewel het echt eng lijken kan in het begin zult u geen spijt
Het wijzigen van de fuse-bits AVR Atmega328p - 8-bit microcontroller met behulp van Arduino

Het wijzigen van de fuse-bits AVR Atmega328p - 8-bit microcontroller met behulp van Arduino

In dit instructable leert u hoe u kunt wijzigen van de fuse-bits van Atmega328p microcontroller. Ik ben met behulp van Arduino mega als programmeur aan programma Atmega328P-PU op breadboard. Het komt met een standaard 1MHz interne gekalibreerd oscill
Elektronische dobbelsteen met behulp van Attiny84

Elektronische dobbelsteen met behulp van Attiny84

Dit project is een elektronische dobbelstenen met behulp van een Attiny84 chip. De Attiny84 werkt als een Arduino, behalve het is een 14 pin chip en is minder geheugen heeft en er is geen ingebouwde programmeur. Ik zal laten zien hoe het uploaden van
Maak een Website met behulp van iWeb

Maak een Website met behulp van iWeb

Websites zijn een zeer gemakkelijke manier om het publiek te informeren over uw onderwerp van belang. In deze tutorial zullen we het creëren van een fitness-website met behulp van de iWeb-programma. U kunt het maken van een website over elk onderwerp
Child's stof Book (met behulp van LilyPad Arduino)

Child's stof Book (met behulp van LilyPad Arduino)

als een sewable (zacht) circuits project, ik heb een boek van Broadway thema stof gemaakt.  Ik werd geïnspireerd door een gepersonaliseerde stof boek met familielid foto's die mijn jonge neef ontvangen.  Ik gebruikte om te maken het boek oplichten en
Overschakelen van de modus Altoids iPOD lader met behulp van 3 'AA' batterijen

Overschakelen van de modus Altoids iPOD lader met behulp van 3 'AA' batterijen

het doel van dit project was om te bouwen van een efficiënte Altoids tin iPod (firewire) lader die compatibel is met 3 (oplaadbare) 'AA' batterijen. Dit project begon als een samenwerkingsverband met Sky PCB ontwerp en constructie, en ik op het circu
Ultrasone Mapmaker met behulp van de Arduino en MatLab

Ultrasone Mapmaker met behulp van de Arduino en MatLab

Vision is een van de meest opwindende zintuigen u op uw robot geven kan. De mogelijkheid om het waarnemen van obstakels staat een robot om een gefundeerde beslissing betreffende verdere verplaatsingen.Het is echter ook niet de gemakkelijkste zintuige
WiFi-afstandsbediening met behulp van ESP8266

WiFi-afstandsbediening met behulp van ESP8266

Laten we u zien hoe een ESP8266 gebruiken om een bekabelde nunchuk in een Wifi-nunchuk die vervolgens voor elk apparaat met WiFi-toegang bepalen kan.De ESP8266 is een zeer mooie microcontroller met WiFi ingebouwd. Het kan worden gekocht tegen lage ko
Hartslag meten apparaat met behulp van arduino

Hartslag meten apparaat met behulp van arduino

Dit project toont u hoe te ontwerpen en bouwen van een apparaat voor het meten van uw hartslag met behulp van onze mooie Arduino!Stap 1: Algemene informatie over dit project Een hartslagmeter is een persoonlijke controle apparaat dat maakt het mogeli