Jovan Jovanovic 2019/0469

Dependencies:   19E042PIM_MB_PINS

Revision:
0:01c4b34da6d2
diff -r 000000000000 -r 01c4b34da6d2 main2.txt
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main2.txt	Mon Jan 17 16:12:11 2022 +0000
@@ -0,0 +1,99 @@
+// biblioteke za uvoz:
+#include "mbed.h"
+ 
+//makroi:
+   
+#define WAITTIME_MS 1
+ 
+
+const int n = 5000;
+const int k = -4995;
+ 
+//Pinovi:
+#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 SEL1 PB_6
+#define SEL2 PC_7
+#define SW1 PC_9
+#define POT1 PA_0
+#define POT2 PA_1
+#define BUZZ PA_11
+#define LD2 PB_15
+ 
+//Promenjive:
+PwmOut buzzer (BUZZ);
+InterruptIn sw1 (SW1);
+AnalogIn pot1 (POT1);
+AnalogIn pot2 (POT2);
+BusOut display (A,B,C,D,E,F,G);
+BusOut select (SEL2,SEL1);
+ 
+
+
+
+ 
+//Definisanje funkcija:
+
+ 
+
+void konvertor (int num){
+    switch(num){
+        case 0:display = 0b1000000;break;   
+        case 1:display = 0b1111001;break;   
+        case 2:display = 0b0100100;break;   
+        case 3:display = 0b0110000;break;   
+        case 4:display = 0b0011001;break;   
+        case 5:display = 0b0010010;break;   
+        case 6:display = 0b0000010;break;   
+        case 7:display = 0b1111000;break;   
+        case 8:display = 0b0000000;break;   
+        case 9:display = 0b0010000;break;   
+        default:display = 0x7f;    break;
+    
+    }
+}
+ 
+
+void ispisi(int num){
+    int j = num%10,d = num/10;
+    if(d==0)
+        konvertor(-1);
+    else
+        konvertor(d);
+    select = 0b01;
+    wait_ms(WAITTIME_MS);
+    konvertor(j);
+    select = 0b10;
+    wait_ms(WAITTIME_MS);
+    
+}
+
+void ISR_sw1(){
+
+        ispisi(pot1* 10);
+} 
+
+
+ 
+//Glavna funkcija:
+int main(){
+   
+    
+  
+    
+    
+    
+    while(1){
+        
+        buzzer=pot1.read(); 
+        buzzer.period_us(n + k*pot2.read());
+        wait_ms(50);
+        
+        sw1.fall(&ISR_sw1);
+    }
+}
\ No newline at end of file