Ljubivoj Cvitas
/
v2
Vježba 2
main.cpp@0:02f125c03944, 2013-11-19 (annotated)
- Committer:
- cvitas
- Date:
- Tue Nov 19 18:47:21 2013 +0000
- Revision:
- 0:02f125c03944
Vje?ba 2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
cvitas | 0:02f125c03944 | 1 | #include "mbed.h" |
cvitas | 0:02f125c03944 | 2 | |
cvitas | 0:02f125c03944 | 3 | DigitalOut myled(LED1); |
cvitas | 0:02f125c03944 | 4 | AnalogIn Ain(p20); //defines analog input on Pin 20 |
cvitas | 0:02f125c03944 | 5 | |
cvitas | 0:02f125c03944 | 6 | BusOut Seg1 (p5,p6,p7,p8,p9,p10,p11,p12); // ABCDEFGDp, p5 je LSB |
cvitas | 0:02f125c03944 | 7 | |
cvitas | 0:02f125c03944 | 8 | char SegConvert(char SegValue) { // function "SegConvert" |
cvitas | 0:02f125c03944 | 9 | char SegByte=0x00; |
cvitas | 0:02f125c03944 | 10 | switch (SegValue) { // DpGFEDCBA |
cvitas | 0:02f125c03944 | 11 | case 0: SegByte = 0xC0; break; // 00111111 |
cvitas | 0:02f125c03944 | 12 | case 1: SegByte = 0xF9; break; // 00000110 |
cvitas | 0:02f125c03944 | 13 | case 2: SegByte = 0xA4; break; // 01011011 |
cvitas | 0:02f125c03944 | 14 | case 3: SegByte = 0xB0; break; // 01001111 |
cvitas | 0:02f125c03944 | 15 | case 4: SegByte = 0x99; break; // 01100110 |
cvitas | 0:02f125c03944 | 16 | case 5: SegByte = 0x92; break; // 01101101 |
cvitas | 0:02f125c03944 | 17 | case 6: SegByte = 0x82; break; // 01111101 |
cvitas | 0:02f125c03944 | 18 | case 7: SegByte = 0xF8; break; // 00000111 |
cvitas | 0:02f125c03944 | 19 | case 8: SegByte = 0x80; break; // 01111111 |
cvitas | 0:02f125c03944 | 20 | case 9: SegByte = 0x90; break; // 01101111 |
cvitas | 0:02f125c03944 | 21 | } |
cvitas | 0:02f125c03944 | 22 | return SegByte; |
cvitas | 0:02f125c03944 | 23 | } |
cvitas | 0:02f125c03944 | 24 | char prikaz; |
cvitas | 0:02f125c03944 | 25 | float Aout; |
cvitas | 0:02f125c03944 | 26 | |
cvitas | 0:02f125c03944 | 27 | int main() { |
cvitas | 0:02f125c03944 | 28 | while(1) { |
cvitas | 0:02f125c03944 | 29 | for (char i=0; i>9;i++){ |
cvitas | 0:02f125c03944 | 30 | prikaz = SegConvert(i); |
cvitas | 0:02f125c03944 | 31 | Seg1= prikaz; |
cvitas | 0:02f125c03944 | 32 | wait(1.5); |
cvitas | 0:02f125c03944 | 33 | } |
cvitas | 0:02f125c03944 | 34 | Aout=Ain; //transfer analog in value to analog out |
cvitas | 0:02f125c03944 | 35 | Aout = Aout * 10.0; |
cvitas | 0:02f125c03944 | 36 | char ch = (char)Aout; |
cvitas | 0:02f125c03944 | 37 | Seg1= SegConvert(ch); |
cvitas | 0:02f125c03944 | 38 | wait(0.5); |
cvitas | 0:02f125c03944 | 39 | |
cvitas | 0:02f125c03944 | 40 | } |
cvitas | 0:02f125c03944 | 41 | } |