symbol aantal_metingen = 255 symbol aantal_gemeten = b2 symbol teller = b0 symbol temperatuurwaarde = b4 symbol opslag_wijzer = b1 symbol teller_w = w3 symbol temperatuurpin = 0 symbol keuzepin = pin7 symbol Vcc_DS18B20 = 0 symbol leds_uit = %00000000 symbol leds_aan = %11100000 symbol rood_aan = %00100000 klaarzetten: let opslag_wijzer = 0 let pins = leds_aan nap 7 let pins = leds_uit low Vcc_DS18B20 basis: if keuzepin = 1 then oversturen meten: gosub signaal_meting for aantal_gemeten = 0 to aantal_metingen pulsout 7, 10000 gosub temp_meten gosub temp_opslaan gosub pauzeren next gosub meting_klaar end oversturen: gosub signaal_versturen gosub signaal_versturing end ;======================================== ;======================================== signaal_meting: for teller = 1 to 10 let pins = leds_aan nap 5 let pins = leds_uit nap 5 next return signaal_versturen: for teller = 1 to 5 let pins = rood_aan nap 5 let pins = leds_uit nap 5 next return temp_meten: high Vcc_DS18B20 ; zet Vcc voor DS18B20 aan sleep 1 ; even wachten voor conversie readtemp temperatuurpin, temperatuurwaarde low Vcc_DS18B20 ; zet sensor weer uit return temp_opslaan: write opslag_wijzer, temperatuurwaarde let opslag_wijzer = opslag_wijzer + 1 return pauzeren: for teller = 1 to 73 pulsout 6, 2000 sleep 1 next return signaal_versturing: pause 1000 sertxd("tempwaarde:", 13, 10) for teller = 0 to aantal_metingen read opslag_wijzer, temperatuurwaarde let opslag_wijzer = opslag_wijzer + 1 sertxd(#temperatuurwaarde, 13, 10) next return meting_klaar: for teller_w = 1 to 500 high 5 nap 3 low 5 nap 6 next return