Nenad Tepavac 2020/0028

Dependencies:   mbed Adafruit_GFX 19E042PIM_MB_PINS

main2.txt

Committer:
ostoja
Date:
2022-01-17
Revision:
0:981049ce9511

File content as of revision 0:981049ce9511:

/*
* Nenad Tepavac 2020/0028
* Etf Beograd
*/

/*
* Biblioteke
*/
#include "mbed.h"
#include "mb_pins.h"
/*
* Makroi
*/
//11000000
#define NULA 0xC0
#define KEC 0xF9
#define DVA 0xA4
#define TRI 0xB0
#define CTR 0x99
#define PET 0x92
#define SES 0x82
#define SEAM 0xF8
#define OSAM 0x80
#define DE 0x90


BusOut display(PA_10, PA_9, PA_8,PB_10,PB_5, PB_4, PB_3, PB_6, PC_7);
PwmOut buzzer(MB_BUZZ);
InterruptIn sw(BUTTON1);
//sw2 se koristi jer je sw1 vezan za buzzer na ploci
InterruptIn btn(PC_8);

AnalogIn pot1(MB_POT1);
AnalogIn pot2(MB_POT2);

//AnalogOut b5(PA_11);

//DigitalIn swd(PC_8);

int c = 0;
int b = 0;
int b2 = 0;
int s = 0;
    
void buzz(){
    buzzer.period((float)(pot2 + 1) / 1000);
    buzzer.write(1 - pot1 * 0.1);
    wait_ms(500);
    buzzer.write(0);
}
    
void displaywrite(){
    c = (int)(pot1 * 10);
    switch(c){
        case 0:
            display.write(NULA);
            break;
        case 1:
            display.write(KEC);
            break;
        case 2:
            display.write(DVA);
            break;
        case 3:
            display.write(TRI);
            break;
        case 4:
            display.write(CTR);
            break;
        case 5:
            display.write(PET);
            break;
        case 6:
            display.write(SES);
            break;
        case 7:
            display.write(SEAM);
            break;
        case 8:
            display.write(OSAM);
            break;
        case 9:
            display.write(DE);
            break;
    }  
} 
    
int main(){
    display.write(NULA);
    
    sw.rise(&buzz);
    btn.rise(&displaywrite);
    
    while(true){}
}