Stap 3: Wat is Embrio?
Embrio is een nieuwe manier om je Arduino boards met behulp van een visuele benadering program. Een van de dingen die ik heb nooit graag over Arduino IDE immers leren te programmeren met gebeurtenissen is om terug te gaan naar de oude manier van programmeren in een lineaire methode. Embrio duurde een beetje terwijl voor mij om erachter te komen, maar het heeft het voordeel van meerdere taken tegelijk uitvoeren en ik heb niet om na te denken binnen de lus functie...
In Embrio die ik met de Input van een Controller beginnen instellen op digitale pin 3 hierdoor ons reageren op pin 3, waarna ik toegevoegd een boven of onder de agent en verbinding maken met de activering van de Input aan de boven of onder, dus als pin "actief" is het zal vuur uit de boven of onder, vervolgens we onderweg boven trigger verbinden met een timer en de gestarte en gestopte triggers verbinden met een switch agent dan verbindt met mijn Arduino-code dat gebruik Toon opdracht om te beginnen de piezo op een stijgende Toon en ook naar een Controller-Output ingesteld op digitale pin 7 deze tiggers de motor om op te komen, wanneer de timer is voltooid het branden uit de schakelaar waarmee een einde kwam de geluiden.
U Embrio kunt installeren en testen van deze code, maar zal niet zitten kundig voor opslaan op de arduino zonder de aanschaf van een licentie voor Embrio.
Je zou kunnen doen dit alles in de Arduino IDE en dat zou als volgt uitzien: (deze code werkt maar niet zo goed)
int inputPin = 3; // choose the input pin (for PIR sensor) int motorPin=7; int buzzPin=6; int pirState = LOW; // we start, assuming no motion detected int val = 0; // variable for reading the pin status void setup() { pinMode(inputPin, INPUT); // declare sensor as input pinMode(motorPin,OUTPUT); pinMode(buzzPin,OUTPUT); } void loop(){ val = digitalRead(inputPin); // read input value if (val == HIGH) { // check if the input is HIGH</p><p> // we have just turned on digitalWrite(motorPin,HIGH); //Spin motor tone(buzzPin,1000,50); //Make tone on speaker } else { digitalWrite(motorPin,LOW);// Motor off noTone(buzzPin); //Tone off } }