Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@1:a57db6defeb7, 2021-11-13 (annotated)
- Committer:
- filipf
- Date:
- Sat Nov 13 09:21:04 2021 +0000
- Revision:
- 1:a57db6defeb7
- Parent:
- 0:8f42a78545ac
Filip Fabri 2020/0414
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| filipf | 1:a57db6defeb7 | 1 | /* Prikazana vrednost ne odgovara onome što se moze čuti jer zuja.write() ne prima |
| filipf | 1:a57db6defeb7 | 2 | baš sve vrednosti. Na primer, na displeju nećemo videti razliku od 0.005 ali je |
| filipf | 1:a57db6defeb7 | 3 | cuti jer je displej na dve decimale. |
| filipf | 1:a57db6defeb7 | 4 | */ |
| filipf | 1:a57db6defeb7 | 5 | |
| filipf | 0:8f42a78545ac | 6 | //uboz biblioteka |
| filipf | 0:8f42a78545ac | 7 | #include "mbed.h" |
| filipf | 0:8f42a78545ac | 8 | |
| filipf | 0:8f42a78545ac | 9 | //definisanje direktiva |
| filipf | 0:8f42a78545ac | 10 | |
| filipf | 0:8f42a78545ac | 11 | //definisanje glavnih promenljivih |
| filipf | 1:a57db6defeb7 | 12 | AnalogIn pot1(PA_1); |
| filipf | 1:a57db6defeb7 | 13 | AnalogIn pot2(PA_0); |
| filipf | 1:a57db6defeb7 | 14 | PwmOut zuja(PA_11); |
| filipf | 1:a57db6defeb7 | 15 | InterruptIn taster(PC_9); |
| filipf | 0:8f42a78545ac | 16 | |
| filipf | 1:a57db6defeb7 | 17 | float frekvPoc = 5000; |
| filipf | 1:a57db6defeb7 | 18 | float frekv = frekvPoc*pot1.read() + 100; |
| filipf | 1:a57db6defeb7 | 19 | float i = 0.0; |
| filipf | 1:a57db6defeb7 | 20 | |
| filipf | 0:8f42a78545ac | 21 | BusOut Digits(PA_10, PA_9, PA_8, PB_10, PB_5, PB_4, PB_3, PB_6, PC_7); |
| filipf | 0:8f42a78545ac | 22 | int odNulaDo15[] = { 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90 }; |
| filipf | 1:a57db6defeb7 | 23 | int odNulaDo15Desetice[] = { 0xFF, 0x179, 0x124, 0x130, 0x119, 0x112, 0x102, 0x178, 0x100, 0x110 }; |
| filipf | 1:a57db6defeb7 | 24 | int desetice = 0; |
| filipf | 1:a57db6defeb7 | 25 | int jedinice = 0; |
| filipf | 1:a57db6defeb7 | 26 | int kreni = 0; |
| filipf | 1:a57db6defeb7 | 27 | |
| filipf | 1:a57db6defeb7 | 28 | |
| filipf | 1:a57db6defeb7 | 29 | //pomocne funkcije |
| filipf | 1:a57db6defeb7 | 30 | void prikaziJacinu(); |
| filipf | 0:8f42a78545ac | 31 | |
| filipf | 0:8f42a78545ac | 32 | //glavna funkcija |
| filipf | 0:8f42a78545ac | 33 | int main() { |
| filipf | 1:a57db6defeb7 | 34 | |
| filipf | 1:a57db6defeb7 | 35 | zuja.period( 1.0/( frekv ) ); |
| filipf | 1:a57db6defeb7 | 36 | zuja.write( pot2.read() ); |
| filipf | 1:a57db6defeb7 | 37 | taster.fall( &prikaziJacinu ); |
| filipf | 0:8f42a78545ac | 38 | |
| filipf | 0:8f42a78545ac | 39 | //glavna petlja |
| filipf | 0:8f42a78545ac | 40 | while(1) { |
| filipf | 1:a57db6defeb7 | 41 | |
| filipf | 1:a57db6defeb7 | 42 | frekv = frekvPoc*pot1.read() + 100; |
| filipf | 0:8f42a78545ac | 43 | |
| filipf | 1:a57db6defeb7 | 44 | zuja.period( 1/( frekv ) ); |
| filipf | 1:a57db6defeb7 | 45 | zuja.write( pot2.read() ); |
| filipf | 1:a57db6defeb7 | 46 | |
| filipf | 1:a57db6defeb7 | 47 | if (kreni==0) {Digits = 0x17F;wait_ms(20);continue;} |
| filipf | 1:a57db6defeb7 | 48 | else { Digits = odNulaDo15[jedinice];} |
| filipf | 0:8f42a78545ac | 49 | wait_ms(10); |
| filipf | 1:a57db6defeb7 | 50 | Digits = odNulaDo15Desetice[desetice]; |
| filipf | 0:8f42a78545ac | 51 | wait_ms(10); |
| filipf | 0:8f42a78545ac | 52 | } |
| filipf | 1:a57db6defeb7 | 53 | } |
| filipf | 1:a57db6defeb7 | 54 | void prikaziJacinu() { |
| filipf | 1:a57db6defeb7 | 55 | kreni = 1; |
| filipf | 1:a57db6defeb7 | 56 | |
| filipf | 1:a57db6defeb7 | 57 | jedinice = (int)(pot2.read()*100)%10; |
| filipf | 1:a57db6defeb7 | 58 | desetice = floor( (pot2.read()*10) ); |
| filipf | 0:8f42a78545ac | 59 | } |