Atope
/
PRACTICA3
ccvcv
Fork of PRACTICA3 by
main.cpp@1:591fea5f363b, 2017-11-10 (annotated)
- Committer:
- carlospomar
- Date:
- Fri Nov 10 08:48:12 2017 +0000
- Revision:
- 1:591fea5f363b
- Parent:
- 0:73a5b9689b80
- Child:
- 2:0ef1b1712e64
practica3
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
carlospomar | 0:73a5b9689b80 | 1 | #include "mbed.h" |
carlospomar | 1:591fea5f363b | 2 | // librería LCD |
carlospomar | 1:591fea5f363b | 3 | |
carlospomar | 1:591fea5f363b | 4 | #define vector 100 |
carlospomar | 1:591fea5f363b | 5 | //TextLCD (6 puertos, TextLCD::LCD16x2); rs,e,d4-d7 |
carlospomar | 0:73a5b9689b80 | 6 | |
carlospomar | 1:591fea5f363b | 7 | InterruptIn Sw (); //pulsador en el puerto |
carlospomar | 1:591fea5f363b | 8 | AnalogIn leer (); // leer del puerto |
carlospomar | 1:591fea5f363b | 9 | Ticker muestreo; |
carlospomar | 1:591fea5f363b | 10 | Ticker visualizar; |
carlospomar | 1:591fea5f363b | 11 | int contt=0; |
carlospomar | 1:591fea5f363b | 12 | int contm=0; |
carlospomar | 1:591fea5f363b | 13 | int dato=0, |
carlospomar | 1:591fea5f363b | 14 | int bufferlleno=0; |
carlospomar | 1:591fea5f363b | 15 | int flag; |
carlospomar | 1:591fea5f363b | 16 | float buffer1 [vector]; |
carlospomar | 1:591fea5f363b | 17 | float buffer2 [vector]; |
carlospomar | 1:591fea5f363b | 18 | float Vrms; |
carlospomar | 1:591fea5f363b | 19 | float suma; |
carlospomar | 1:591fea5f363b | 20 | float muestra; |
carlospomar | 0:73a5b9689b80 | 21 | |
carlospomar | 1:591fea5f363b | 22 | void temporizador |
carlospomar | 1:591fea5f363b | 23 | |
carlospomar | 1:591fea5f363b | 24 | { |
carlospomar | 1:591fea5f363b | 25 | if (flag) |
carlospomar | 1:591fea5f363b | 26 | { |
carlospomar | 1:591fea5f363b | 27 | |
carlospomar | 1:591fea5f363b | 28 | } |
carlospomar | 1:591fea5f363b | 29 | contt++; |
carlospomar | 1:591fea5f363b | 30 | if (contt==100) |
carlospomar | 1:591fea5f363b | 31 | { |
carlospomar | 1:591fea5f363b | 32 | contt =0; |
carlospomar | 1:591fea5f363b | 33 | flag =!flag; |
carlospomar | 1:591fea5f363b | 34 | bufferlleno=0; |
carlospomar | 1:591fea5f363b | 35 | } |
carlospomar | 1:591fea5f363b | 36 | } |
carlospomar | 1:591fea5f363b | 37 | |
carlospomar | 1:591fea5f363b | 38 | void boton() |
carlospomar | 1:591fea5f363b | 39 | { |
carlospomar | 1:591fea5f363b | 40 | dato++; |
carlospomar | 1:591fea5f363b | 41 | if (dato>1) { |
carlospomar | 1:591fea5f363b | 42 | dato = 0; |
carlospomar | 0:73a5b9689b80 | 43 | } |
carlospomar | 0:73a5b9689b80 | 44 | } |
carlospomar | 1:591fea5f363b | 45 | |
carlospomar | 1:591fea5f363b | 46 | void LCD() |
carlospomar | 1:591fea5f363b | 47 | { |
carlospomar | 1:591fea5f363b | 48 | lcd.cls(); |
carlospomar | 1:591fea5f363b | 49 | switch (dato) { |
carlospomar | 1:591fea5f363b | 50 | case 0; |
carlospomar | 1:591fea5f363b | 51 | lcdprintf(); //Vrms :\n%3.3f V,Vrms |
carlospomar | 1:591fea5f363b | 52 | break; |
carlospomar | 1:591fea5f363b | 53 | case 1; |
carlospomar | 1:591fea5f363b | 54 | lcdprintf(); // |
carlospomar | 1:591fea5f363b | 55 | break; |
carlospomar | 1:591fea5f363b | 56 | } |
carlospomar | 1:591fea5f363b | 57 | } |
carlospomar | 1:591fea5f363b | 58 | |
carlospomar | 1:591fea5f363b | 59 | int main() |
carlospomar | 1:591fea5f363b | 60 | { |
carlospomar | 1:591fea5f363b | 61 | |
carlospomar | 1:591fea5f363b | 62 | contador = 0 ; |
carlospomar | 1:591fea5f363b | 63 | |
carlospomar | 1:591fea5f363b | 64 | muestreo.attach_us (&temporizador,200); |
carlospomar | 1:591fea5f363b | 65 | visualizar.attach (&mostrar, 1); |
carlospomar | 1:591fea5f363b | 66 | Sw.rise(&boton); |
carlospomar | 1:591fea5f363b | 67 | |
carlospomar | 1:591fea5f363b | 68 | //printf("pwm set to %.2f %%\n", mypwm.read() * 100); |
carlospomar | 1:591fea5f363b | 69 | |
carlospomar | 1:591fea5f363b | 70 | while(1) { |
carlospomar | 1:591fea5f363b | 71 | if (bufferlleno) { |
carlospomar | 1:591fea5f363b | 72 | suma=0; |
carlospomar | 1:591fea5f363b | 73 | for (contm=0; contm<100: contm++) { |
carlospomar | 1:591fea5f363b | 74 | if (flag==1) { |
carlospomar | 1:591fea5f363b | 75 | muestra=buffer1[contm]; |
carlospomar | 1:591fea5f363b | 76 | } else { |
carlospomar | 1:591fea5f363b | 77 | muestra=buffer2[contm]; |
carlospomar | 1:591fea5f363b | 78 | } |
carlospomar | 1:591fea5f363b | 79 | } |
carlospomar | 1:591fea5f363b | 80 | } |
carlospomar | 1:591fea5f363b | 81 | |
carlospomar | 1:591fea5f363b | 82 | } |
carlospomar | 1:591fea5f363b | 83 | } |