Korak 3: Izrada koda za mjerenje brzine
Prilikom pokretanja programa postavit ćemo vrijednosti varijabli brzine u km/h i brzine u cm/s na vrijednost 0 te vrijednost varijable put na 72, a put nam je ekvivalentan opsegu kotača.
U beskonačnoj petlji vrtjet će se programski odsječak za mjerenje vremena kroz 10 okretaja, programski odsječak za računanje i pretvaranje brzine te na kraju naredbu za ispis vrijednosti brzine u km/h. Naravno, vrijeme između 10 okretaja kotača i brojač postavit ćemo na nulu jer svakim novim prolaskom kroz beskonačnu petlju „forever“ želimo izvoditi program kao da se prvi puta pokreće. While petlja služit će nam da bismo izbrojali točno 10 okretaja kotača. Svakim prolaskom kroz while petlju očitat će se vrijednost s digitalnog ulaza P2, odnosno je li kotač napravio puni krug. Ako jest, onda će se brojač povećati za 1 i digitalno očitanje će se vratiti na 0 kako bi bilo spremno za sljedeći prolazak kroz petlju, a program će se pauzirati na 100 ms i povećat ćemo varijablu „vrijeme decisekunde“ pomoću koje ćemo računati proteklo vrijeme. Naravno, ako kotač nije napravio puni krug, tada se uvjet if neće izvršiti i ponovno će se pokrenuti petlja while.
Zašto vrijeme u 100 ms? Ako uzmemo vrijednost od 1000 ms, što je ekvivalentno 1 sekundi, pauzirat ćemo program na puno vremena, a ako u tom međuvremenu od jedne sekunde kotač napravi puni krug, on neće biti zabilježen! Također pretpostavljamo da je izvođenje naredbi instantno. Vrijeme u „decisekundama“ lako ćemo pretvoriti u sekunde ako ga podijelimo s 10. Budući da je duljina puta, odnosno opseg kotača u centimetrima, i naša brzina koja se dobije pomoću izraza v=s/t također u cm/s, dijeljenjem sa 100 dobit ćemo brzinu u m/s. S obzirom na to da želimo u km/h, brzinu izraženu u m/s pomnožit ćemo s 3,6.
Blokovska shema koda