![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Drugi test iz PIM-a Milan Takic 2020/0690
main.cpp
- Committer:
- milant
- Date:
- 2021-11-13
- Revision:
- 0:208b1e7384da
File content as of revision 0:208b1e7384da:
/* Drugi test iz PIM-a Milan Takic 2020/0690 13.11.2021 */ //uvezivanje biblioteka #include "mbed.h" //definisanje makroa #define A PA_10 #define B PA_9 #define C PA_8 #define D PB_10 #define E PB_5 #define F PB_4 #define G PB_3 #define SEL_1 PB_6 #define SEL_2 PC_7 #define PWM_PERIOD 15 #define V_MULTIPLIER 3.3f #define DUTY_CYCLE 0.5f #define MULTIPLIER 5 //globalne promenljive BusOut display(A,B,C,D,E,F,G); DigitalOut select1(SEL_1); DigitalOut select2(SEL_2); AnalogIn pot1 (PA_0); AnalogIn pot2 (PA_1); InterruptIn sw1(PC_9); PwmOut buzzer(PA_11); const int digit[] = {0b1000000, 0b1111001, 0b0100100, 0b0110000, 0b0011001, 0b0010010, 0b0000010, 0b1111000, 0b0000000, 0b0010000}; int i = 0; int j = 0; int flag = 0; //deklaracija funkcija void ISR_sw1(); //glavna funkcija int main(){ select1.write(1); select2.write(1); sw1.fall(&ISR_sw1); buzzer.period_ms(PWM_PERIOD); while(true){ buzzer.write(pot1.read()); i = pot1.read()*10; j = pot1.read()*10; if(flag){ select2.write(1); select1.write(0); display = digit[i]; wait_us(100); select1.write(1); select2.write(0); display = digit[j]; wait_us(100); flag = 0; } } } void ISR_sw1(){ flag = 1; } // :(