fgj

Dependencies:   mbed

Committer:
mexinguer
Date:
Mon Feb 06 13:19:02 2017 +0000
Revision:
0:50094f63b4b9
gsfd

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mexinguer 0:50094f63b4b9 1 #include "mbed.h"
mexinguer 0:50094f63b4b9 2 #include "C12832.h"
mexinguer 0:50094f63b4b9 3
mexinguer 0:50094f63b4b9 4 DigitalOut LED(D13);
mexinguer 0:50094f63b4b9 5 DigitalIn BP(PC_13,PullNone);
mexinguer 0:50094f63b4b9 6 AnalogIn pot1(PA_0);
mexinguer 0:50094f63b4b9 7 Serial pc(SERIAL_TX, SERIAL_RX);
mexinguer 0:50094f63b4b9 8 Ticker t;
mexinguer 0:50094f63b4b9 9 Timer timer;
mexinguer 0:50094f63b4b9 10
mexinguer 0:50094f63b4b9 11 int cpt=48, inactif;
mexinguer 0:50094f63b4b9 12 bool appui = false;
mexinguer 0:50094f63b4b9 13
mexinguer 0:50094f63b4b9 14 void isr_LED(void)
mexinguer 0:50094f63b4b9 15 {
mexinguer 0:50094f63b4b9 16 if(cpt>57)
mexinguer 0:50094f63b4b9 17 {
mexinguer 0:50094f63b4b9 18 cpt=48;
mexinguer 0:50094f63b4b9 19 pc.putc(012);
mexinguer 0:50094f63b4b9 20 }
mexinguer 0:50094f63b4b9 21 if(appui)
mexinguer 0:50094f63b4b9 22 {
mexinguer 0:50094f63b4b9 23 pc.putc(cpt);
mexinguer 0:50094f63b4b9 24 LED=!LED;
mexinguer 0:50094f63b4b9 25 cpt++;
mexinguer 0:50094f63b4b9 26 }
mexinguer 0:50094f63b4b9 27 }
mexinguer 0:50094f63b4b9 28
mexinguer 0:50094f63b4b9 29 int main()
mexinguer 0:50094f63b4b9 30 {
mexinguer 0:50094f63b4b9 31 pc.baud(38400);
mexinguer 0:50094f63b4b9 32 t.attach(&isr_LED,0.25);
mexinguer 0:50094f63b4b9 33
mexinguer 0:50094f63b4b9 34 while(1)
mexinguer 0:50094f63b4b9 35 {
mexinguer 0:50094f63b4b9 36 if(BP==0 && !appui)
mexinguer 0:50094f63b4b9 37 {
mexinguer 0:50094f63b4b9 38 appui=true;
mexinguer 0:50094f63b4b9 39 timer.reset();
mexinguer 0:50094f63b4b9 40 while(BP==0);
mexinguer 0:50094f63b4b9 41 timer.start();
mexinguer 0:50094f63b4b9 42 }
mexinguer 0:50094f63b4b9 43 inactif = timer.read_ms();
mexinguer 0:50094f63b4b9 44
mexinguer 0:50094f63b4b9 45 if(BP==0 && appui || inactif>10000)
mexinguer 0:50094f63b4b9 46 {
mexinguer 0:50094f63b4b9 47 appui=false;
mexinguer 0:50094f63b4b9 48 if(inactif>10000)
mexinguer 0:50094f63b4b9 49 {
mexinguer 0:50094f63b4b9 50 Timeout timer;
mexinguer 0:50094f63b4b9 51 t.attach(isr_LED,1);
mexinguer 0:50094f63b4b9 52 }
mexinguer 0:50094f63b4b9 53 timer.stop();
mexinguer 0:50094f63b4b9 54 inactif=0;
mexinguer 0:50094f63b4b9 55 cpt=48;
mexinguer 0:50094f63b4b9 56 while(BP==0);
mexinguer 0:50094f63b4b9 57 pc.putc(012);
mexinguer 0:50094f63b4b9 58
mexinguer 0:50094f63b4b9 59 }
mexinguer 0:50094f63b4b9 60 }
mexinguer 0:50094f63b4b9 61 }