![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
fgj
Dependencies: mbed
main.cpp@0:50094f63b4b9, 2017-02-06 (annotated)
- Committer:
- mexinguer
- Date:
- Mon Feb 06 13:19:02 2017 +0000
- Revision:
- 0:50094f63b4b9
gsfd
Who changed what in which revision?
User | Revision | Line number | New 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 | } |