genera un PWM con ancho de pulso variable a traves del touchcapacitive integrado en la tarjeta kl25z
Dependencies: TSI TextLCD mbed
main.cpp@0:ae7305f55ecf, 2013-12-11 (annotated)
- Committer:
- amarincan
- Date:
- Wed Dec 11 13:11:15 2013 +0000
- Revision:
- 0:ae7305f55ecf
se modifico una funcion private to public
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
amarincan | 0:ae7305f55ecf | 1 | #include "mbed.h" |
amarincan | 0:ae7305f55ecf | 2 | #include "TSISensor.h" |
amarincan | 0:ae7305f55ecf | 3 | #include "TextLCD.h" |
amarincan | 0:ae7305f55ecf | 4 | |
amarincan | 0:ae7305f55ecf | 5 | |
amarincan | 0:ae7305f55ecf | 6 | float value=0,valuev=0; |
amarincan | 0:ae7305f55ecf | 7 | TextLCD lcd(PTB10, PTB11, PTE2, PTE3, PTE4, PTE5); // rs, e, d4-d7 |
amarincan | 0:ae7305f55ecf | 8 | |
amarincan | 0:ae7305f55ecf | 9 | int main(void) { |
amarincan | 0:ae7305f55ecf | 10 | |
amarincan | 0:ae7305f55ecf | 11 | //lcd.writeCommand(0x0E); |
amarincan | 0:ae7305f55ecf | 12 | |
amarincan | 0:ae7305f55ecf | 13 | |
amarincan | 0:ae7305f55ecf | 14 | PwmOut led(LED_BLUE); |
amarincan | 0:ae7305f55ecf | 15 | PwmOut pin(PTD4); |
amarincan | 0:ae7305f55ecf | 16 | float p=0.003; |
amarincan | 0:ae7305f55ecf | 17 | led.period(p); |
amarincan | 0:ae7305f55ecf | 18 | //pin.pulsewidth(p); |
amarincan | 0:ae7305f55ecf | 19 | pin.period(p); |
amarincan | 0:ae7305f55ecf | 20 | lcd.printf("Periodo=%gs",p); |
amarincan | 0:ae7305f55ecf | 21 | lcd.locate(0,1); |
amarincan | 0:ae7305f55ecf | 22 | lcd.printf("cycle duty=0"); |
amarincan | 0:ae7305f55ecf | 23 | TSISensor tsi; |
amarincan | 0:ae7305f55ecf | 24 | led = 1; |
amarincan | 0:ae7305f55ecf | 25 | int d; |
amarincan | 0:ae7305f55ecf | 26 | while (true) { |
amarincan | 0:ae7305f55ecf | 27 | value=tsi.readPercentage(); |
amarincan | 0:ae7305f55ecf | 28 | if(value!=valuev && value!=0) |
amarincan | 0:ae7305f55ecf | 29 | { |
amarincan | 0:ae7305f55ecf | 30 | |
amarincan | 0:ae7305f55ecf | 31 | // pin = 1.0 - value; |
amarincan | 0:ae7305f55ecf | 32 | pin.write(1.0 - value); |
amarincan | 0:ae7305f55ecf | 33 | led.write(value); |
amarincan | 0:ae7305f55ecf | 34 | d=(1-value)*100; |
amarincan | 0:ae7305f55ecf | 35 | lcd.locate(0,1); |
amarincan | 0:ae7305f55ecf | 36 | lcd.printf(" "); |
amarincan | 0:ae7305f55ecf | 37 | lcd.locate(0,1); |
amarincan | 0:ae7305f55ecf | 38 | lcd.printf("cycle duty=%d",d); |
amarincan | 0:ae7305f55ecf | 39 | valuev=value; |
amarincan | 0:ae7305f55ecf | 40 | } |
amarincan | 0:ae7305f55ecf | 41 | // wait(0.1); |
amarincan | 0:ae7305f55ecf | 42 | |
amarincan | 0:ae7305f55ecf | 43 | } |
amarincan | 0:ae7305f55ecf | 44 | } |