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.
my_library.h@0:0f1f798f7d20, 2022-07-01 (annotated)
- Committer:
- julijacapjak
- Date:
- Fri Jul 01 06:29:45 2022 +0000
- Revision:
- 0:0f1f798f7d20
- Child:
- 1:46480da2ba4e
Mikroupravljaci, konstrukcijski zadatak
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
julijacapjak | 0:0f1f798f7d20 | 1 | #include "mbed.h" |
julijacapjak | 0:0f1f798f7d20 | 2 | |
julijacapjak | 0:0f1f798f7d20 | 3 | DigitalOut RedLED(D15); //definiranje pina za crvenu ledicu |
julijacapjak | 0:0f1f798f7d20 | 4 | DigitalOut YellowLED(D14); //definiranje pina za žutu ledicu |
julijacapjak | 0:0f1f798f7d20 | 5 | DigitalOut GreenLED(D13); //definiranje pina za zelenu ledicu |
julijacapjak | 0:0f1f798f7d20 | 6 | |
julijacapjak | 0:0f1f798f7d20 | 7 | int Stanje; |
julijacapjak | 0:0f1f798f7d20 | 8 | void Upali_1(){ //Funkcija koja pali zeleno svjetlo |
julijacapjak | 0:0f1f798f7d20 | 9 | RedLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 10 | YellowLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 11 | GreenLED = 1; |
julijacapjak | 0:0f1f798f7d20 | 12 | Stanje = 1; |
julijacapjak | 0:0f1f798f7d20 | 13 | } |
julijacapjak | 0:0f1f798f7d20 | 14 | void Upali_2(){ //Funkcija koja pali žuto svjetlo |
julijacapjak | 0:0f1f798f7d20 | 15 | RedLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 16 | YellowLED = 1; |
julijacapjak | 0:0f1f798f7d20 | 17 | GreenLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 18 | Stanje = 2; |
julijacapjak | 0:0f1f798f7d20 | 19 | } |
julijacapjak | 0:0f1f798f7d20 | 20 | void Upali_3(){ //Funkcija koja pali crveno svjetlo |
julijacapjak | 0:0f1f798f7d20 | 21 | RedLED = 1; |
julijacapjak | 0:0f1f798f7d20 | 22 | YellowLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 23 | GreenLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 24 | Stanje = 3; |
julijacapjak | 0:0f1f798f7d20 | 25 | } |
julijacapjak | 0:0f1f798f7d20 | 26 | void Upali_0(){ //Funkcija koja pali žuto i crveno svjetlo |
julijacapjak | 0:0f1f798f7d20 | 27 | RedLED = 1; |
julijacapjak | 0:0f1f798f7d20 | 28 | YellowLED = 1; |
julijacapjak | 0:0f1f798f7d20 | 29 | GreenLED = 0; |
julijacapjak | 0:0f1f798f7d20 | 30 | Stanje = 0; |
julijacapjak | 0:0f1f798f7d20 | 31 | } |
julijacapjak | 0:0f1f798f7d20 | 32 |