FC-04 ljud Sensor sköt sina gränser (2 / 14 steg)
Steg 2: Viktiga poster #2. Kör på "ON" avsnitt flera gånger
2. kör avsnittet "På" flera gånger innan du kör avsnittet "OFF"
Som jag nämnde i steg 1, var dela upp den på och av funktioner i sina egna sektioner i skriptet en stor bit av pussel med detta projekt. Genom att dela dem upp kan jag nu gå igenom funktionerna ON flera gånger innan du går någonstans nära OFF funktioner. Detta åstadkoms två saker för mig. 1. det slutar ljusdioderna flimrar på och av så snabbt att du får yr tittar på den. 2. lysdioder synkronisera mycket bättre eftersom varje LED har en chans att läsa sensorns värde flera gånger för att avgöra om det ska slå eller inte.
Uttrycket "om" och en variabel som heter "count" styr hur ofta ON uttalanden läses innan du går till uttalandena som OFF. Och var och en av uttalandena som OFF läses endast en gång innan skriptet cykler genom uttalanden av ON igen.
Så börjar hela skriptet med en märkt avsnittet som heter "CheckCount".
CheckCount: / / detta är "etikett"
om (count > 1100) goto ledsOFF; Hur många gånger ska köra ON uttalanden innan du kommer till avsnittet OFF
Det är inte ett stavfel, ON uttalanden läses 1,101 gånger innan någon lysdioder är avstängda. Men titta på en av filmerna och du ser hur snabbt detta sker.
count = (antal + 1); varje gång programmet växlar mellan ON uttalanden ökar det det aktuella värdet i "count" av 1.
Så om "count" inte är större än 1100 programmet ökar det aktuella värdet i greve av 1 och fortsätter till nästa avsnitt av funktioner som bara råkar vara "ledsON" funktioner. Sista i avsnittet "ledsON" är "goto CheckCount;". Detta innebär att återvända tillbaka CheckCount och börja igen. Detta fortsätter tills värdet av "räkningen" är större än 1100 då programmet går direkt till avsnittet i skriptet märkt "ledsOFF" (helt hoppa över avsnittet ledsON). Och det sista som händer under avsnittet ledsOFF är att återställa värdet av "räkningen" tillbaka till noll, börja hela processen om igen.