USB-CDC PIC 18F4550 interrupciones

Ver el tema anterior Ver el tema siguiente Ir abajo

USB-CDC PIC 18F4550 interrupciones

Mensaje por smbr09 el Vie 8 Abr 2011 - 5:22

Hola a todos estoy realizando un pequeño proyecto con el PIC 18f4550 y la cx USB cdc, toda la comunicación anda muy bien pero el objetivo del proyecto es enviar un mensaje a la interfaz realizada en gambas cuando se active la interrupción int0, aqui es donde tengo errores no se como manejar la interrupción int0 junto con la comunicación USB ya q la primera ves funciona pero de ahi el PIC deja de funcionar.

He leido por ahi que hay prioridades en cuanto a las interrupciones ya q si comienza a analizar la interrupción deja en segundo plano a la cx USB(por lo tanto se desconecta como host) y luego ya no se puede volver a conectar.

Si alguien a realizado alguna aplicación de esta manera pido su ayuda gracias....

Adjunto el código, la función principal es que cundo llega un 1L a int0 me envie un mensaje

Código:
#include <18F4550.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
#use delay(clock=48000000)
#include <stdlib.h>

#include ".\include\usb_cdc.h"      /*// Descripción de funciones del USB.*/
#include ".\include\usb_desc_cdc.h" /*// Descriptores del dispositivo USB.*/

#INT_EXT                        // Interrupción Externa por RB0
 void IntRB0()
 {
 printf(usb_cdc_putc,"RB0 ACTIVADO \n\r");
 }

void main() {
  set_tris_a(0);
  enable_interrupts(Int_Ext);
  enable_interrupts(global);      //habilita interrupciones globales
  ext_int_edge(0,L_TO_H);
  usb_cdc_init(); // Configuramos al puerto virtual.
  usb_init(); // Inicializamos el stack USB.

  while(!usb_cdc_connected()) {} // espera a detectar una transmisión de la PC (Set_Line_Coding).
  do{
      output_toggle(pin_a2);
      delay_ms(500);

      }while (TRUE); // bucle infinito.
}
avatar
smbr09
Nuevo Usuario
Nuevo Usuario

Mensajes : 6
Fecha de inscripción : 23/02/2010

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.