Autor Tema: Problemas con configuración Bus-CAN en PIC18f458  (Leído 1758 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado miguel215_ON

  • PIC10
  • *
  • Mensajes: 1
Problemas con configuración Bus-CAN en PIC18f458
« en: 18 de Octubre de 2004, 04:38:00 »
Muy buenas y muchas gracias de antemano.
Estoy trabajando con el bus-CAN implementado en el PIC18F458.
He conseguido poner en funcionamiento el bus con las notas de aplicacion de microchip. (te lo dan todo echo excepto un par de errores que tiene el archivo can18xxx.c)
Donde me estoy quedando colgado es a la hora de utilizar los filtros implementados en el pic.
Supuestamente están configurados y activados en la función CANinitialize(...) pero dejan pasar todos los "id" que envío aunque no debieran.

Aquí os dejo parte del programa donde se inicializan los filtros.
Si me podeis indicar si están bien configurados, o.....   si hay que activarlos en alguna otra parte del programa........ me sería de gran ayuda...


void CANInitialize(BYTE SJW,
                    BYTE BRP,
                    BYTE PHSEG1,
                    BYTE PHSEG2,
                    BYTE PROPSEG,
                    enum CAN_CONFIG_FLAGS config)
{
     BYTE FilterConfig1;
     BYTE FilterConfig2;

     //Para introducir parámetros de configuración del módulo CAN,
    // Debe estar en modo CONFIG
    CANSetOperationMode(CAN_OP_MODE_CONFIG);   

    // Now set the baud rate.
    CANSetBaudRate(SJW,
                    BRP,
                    PHSEG1,
                    PHSEG2,
                    PROPSEG,
                    config);
.
.
.
.
.
 
    CANSetMask(CAN_MASK_B1, 0xFFFF, CAN_CONFIG_STD_MSG);            
    CANSetMask(CAN_MASK_B2, 0xFFFF, CAN_CONFIG_STD_MSG);   

.
.
.
.

 
    CANSetFilter(CAN_FILTER_B1_F1, 0, FilterConfig1);
    CANSetFilter(CAN_FILTER_B1_F2, 1, FilterConfig1);
    CANSetFilter(CAN_FILTER_B2_F1, 2, FilterConfig2);
    CANSetFilter(CAN_FILTER_B2_F2, 3, FilterConfig2);
    CANSetFilter(CAN_FILTER_B2_F3, 4, FilterConfig2);
    CANSetFilter(CAN_FILTER_B2_F4, 5, FilterConfig2);
       
    // Restore to Normal mode.
    CANSetOperationMode(CAN_OP_MODE_NORMAL);   

}


 

Desconectado arqui_lester

  • PIC10
  • *
  • Mensajes: 25
Re: Problemas con configuración Bus-CAN en PIC18f458
« Respuesta #1 en: 23 de Mayo de 2008, 14:31:30 »
yo estoy trabajando sobre lo mismo

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Problemas con configuración Bus-CAN en PIC18f458
« Respuesta #2 en: 23 de Mayo de 2008, 15:02:52 »
Podras buscar y poner aqui el codigo de la funcion CANSetFilter() ??
Alli debe haber constantes, ademas permite saber que son los argumentos que les esta pasando el programa... :mrgreen:
Yo uso el CCS, por eso no conozco lo de Microchip...
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.


 

anything