Mikroupravljaci, konstrukcijski zadatak
U prilogu se nalazi kod za simulaciju upravljanja semaforom, tj podešavanje brzine izmjene svjetla na semaforu ovisno o gustoći prometa. Kao senzor koji detektira gustoću prometa korišten je potenciometar koji je spojen na analogni ulaz. Maksimalna vrijednost napona na potenciometru odgovara maksimalnom ciklusu semafora. Očitavanje s analognog ulaza i korekcija trajanja ciklusa se odvija samo nakon pritiska tipkala od strane operatera, što se vrši pomoću hardverskog prekida. Samo paljenje i gašenje led dioda sukladno stanju semafora se vrši u funkcijama koje se nalazi u biblioteci my_library.h.
Diff: my_library.h
- Revision:
- 0:0f1f798f7d20
- Child:
- 1:46480da2ba4e
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/my_library.h Fri Jul 01 06:29:45 2022 +0000 @@ -0,0 +1,32 @@ +#include "mbed.h" + +DigitalOut RedLED(D15); //definiranje pina za crvenu ledicu +DigitalOut YellowLED(D14); //definiranje pina za žutu ledicu +DigitalOut GreenLED(D13); //definiranje pina za zelenu ledicu + +int Stanje; +void Upali_1(){ //Funkcija koja pali zeleno svjetlo + RedLED = 0; + YellowLED = 0; + GreenLED = 1; + Stanje = 1; + } +void Upali_2(){ //Funkcija koja pali žuto svjetlo + RedLED = 0; + YellowLED = 1; + GreenLED = 0; + Stanje = 2; + } +void Upali_3(){ //Funkcija koja pali crveno svjetlo + RedLED = 1; + YellowLED = 0; + GreenLED = 0; + Stanje = 3; + } +void Upali_0(){ //Funkcija koja pali žuto i crveno svjetlo + RedLED = 1; + YellowLED = 1; + GreenLED = 0; + Stanje = 0; + } + \ No newline at end of file