Proyecto de Tesis en Mecatrónica. Universidad Técnica del Norte. Ernesto Palacios <mecatronica.mid@gmail.com>
Dependencies: EthernetNetIf HTTPServer QEI_hw RPCInterface mbed
Diff: main.cpp
- Revision:
- 31:7e2cdd547cb2
- Parent:
- 30:413d1a6648b5
- Child:
- 32:4483d6c225e5
diff -r 413d1a6648b5 -r 7e2cdd547cb2 main.cpp --- a/main.cpp Wed Feb 05 18:55:37 2014 +0000 +++ b/main.cpp Sat May 03 00:14:17 2014 +0000 @@ -26,7 +26,13 @@ Serial pc( USBTX, USBRX ); //Comunicacion Serial directa al computador Serial RS_232(p13, p14); //Comunicacion Serial para MAX232 -QEIHW encoder( QEI_DIRINV_NONE, QEI_SIGNALMODE_QUAD, QEI_CAPMODE_2X, QEI_INVINX_NONE ); + +QEIHW encoder( QEI_DIRINV_NONE, // CW = postive; CCW = negative + QEI_SIGNALMODE_QUAD, // Absolute encoder + QEI_CAPMODE_2X, // PhA anb PhB + QEI_INVINX_NONE // Not inverted index + ); + Timer crono; // Reloj Interno de mbed DigitalOut pin_son( p7 ); // SON @@ -44,8 +50,8 @@ // Alarmas en los optoacopladores InterruptIn limite_1( p23 ); -DigitalIn limite_2( p24 ); -DigitalIn limite_3( p25 ); +InterruptIn limite_2( p24 ); +InterruptIn limite_3( p25 ); InterruptIn limite_4( p29 ); @@ -74,10 +80,16 @@ int main() { - limite_1.rise( &ISR_Alm_encoder ); // Alarma de colisión 1 - limite_2.rise( &ISR_Adv_encoder ); // Alarma de colisión 1 - limite_3.rise( &ISR_Adv_motor ); // Alarma de colisión 1 - limite_4.rise( &ISR_Alm_motor ); // Alarma de colisión 1 + pin_alm.fall( &ISR_Alarm ); // Entrada de la alarma driver + + // limite_1.rise( &ISR_Alm_encoder ); // Alarma de colisión 1 + // limite_2.rise( &ISR_Adv_encoder ); // Alarma de colisión 1 + // limite_3.rise( &ISR_Adv_motor ); // Alarma de colisión 1 + // limite_4.rise( &ISR_Alm_motor ); // Alarma de colisión 1 + + encoder.SetDigiFilter(480UL); // number of clock cycles the signal must be at high to sense it + encoder.SetMaxPosition(0xFFFFFFFF); // max number before overflow - may be changed for 360 or a multiple + //*************** Configura Red Ethernet **************************************************// @@ -161,10 +173,7 @@ setTimer2(); // Configurar PTO pin_son = 0; // Servo Apagado por defecto aout = 0.5; // Voltaje de salida 0V por defecto( +-10V! ) - - - pin_alm.fall( &ISR_Alarm ); // Entrada de la alarma driver - + while(1) {