Quentin LAM
/
ex21_PWM1
Exo
main.cpp@0:eabaa36e66b0, 2018-05-29 (annotated)
- Committer:
- Quent1nl
- Date:
- Tue May 29 14:14:42 2018 +0000
- Revision:
- 0:eabaa36e66b0
EX21
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Quent1nl | 0:eabaa36e66b0 | 1 | #include "Nboard.h" |
Quent1nl | 0:eabaa36e66b0 | 2 | #include "IHM.h" |
Quent1nl | 0:eabaa36e66b0 | 3 | |
Quent1nl | 0:eabaa36e66b0 | 4 | IHM ihm; |
Quent1nl | 0:eabaa36e66b0 | 5 | PwmOut led1(PA_7); |
Quent1nl | 0:eabaa36e66b0 | 6 | int main() |
Quent1nl | 0:eabaa36e66b0 | 7 | { |
Quent1nl | 0:eabaa36e66b0 | 8 | |
Quent1nl | 0:eabaa36e66b0 | 9 | int per=1000, position ; |
Quent1nl | 0:eabaa36e66b0 | 10 | float duty=0.25; |
Quent1nl | 0:eabaa36e66b0 | 11 | led1.period_ms(per); |
Quent1nl | 0:eabaa36e66b0 | 12 | led1.write(duty); |
Quent1nl | 0:eabaa36e66b0 | 13 | position =ihm.JOG_read(); |
Quent1nl | 0:eabaa36e66b0 | 14 | led0=1; |
Quent1nl | 0:eabaa36e66b0 | 15 | while(1) { |
Quent1nl | 0:eabaa36e66b0 | 16 | switch(position) { |
Quent1nl | 0:eabaa36e66b0 | 17 | case 0x08 : |
Quent1nl | 0:eabaa36e66b0 | 18 | if(duty<=0.9) { |
Quent1nl | 0:eabaa36e66b0 | 19 | duty=duty+0.1; |
Quent1nl | 0:eabaa36e66b0 | 20 | } |
Quent1nl | 0:eabaa36e66b0 | 21 | break; |
Quent1nl | 0:eabaa36e66b0 | 22 | case 0x01 : |
Quent1nl | 0:eabaa36e66b0 | 23 | if(duty>=0.1) { |
Quent1nl | 0:eabaa36e66b0 | 24 | duty=duty-0.1; |
Quent1nl | 0:eabaa36e66b0 | 25 | } |
Quent1nl | 0:eabaa36e66b0 | 26 | break; |
Quent1nl | 0:eabaa36e66b0 | 27 | case 0x10 : |
Quent1nl | 0:eabaa36e66b0 | 28 | per=per+500; |
Quent1nl | 0:eabaa36e66b0 | 29 | break; |
Quent1nl | 0:eabaa36e66b0 | 30 | case 0x02 : |
Quent1nl | 0:eabaa36e66b0 | 31 | per=per-500; |
Quent1nl | 0:eabaa36e66b0 | 32 | break; |
Quent1nl | 0:eabaa36e66b0 | 33 | |
Quent1nl | 0:eabaa36e66b0 | 34 | |
Quent1nl | 0:eabaa36e66b0 | 35 | |
Quent1nl | 0:eabaa36e66b0 | 36 | } |
Quent1nl | 0:eabaa36e66b0 | 37 | led1.period_ms(per); |
Quent1nl | 0:eabaa36e66b0 | 38 | led1.write(duty); |
Quent1nl | 0:eabaa36e66b0 | 39 | ihm.LCD_gotoxy(0,0); |
Quent1nl | 0:eabaa36e66b0 | 40 | ihm.LCD_printf("%f %hd ",duty,per); |
Quent1nl | 0:eabaa36e66b0 | 41 | } |
Quent1nl | 0:eabaa36e66b0 | 42 | } |