[PIC®/AVR®/dsPIC®产品] PIC18F25K80能进入休眠但不能被CAN总线活动唤醒

[复制链接]
3658|12
 楼主| cyhuaxiang 发表于 2017-7-23 14:17 | 显示全部楼层 |阅读模式
进入休眠配置部分:
    CANCON = 0x20;//禁止/休眠模式  
    while(CANSTATbits.OPMODE !=0x01);
    CAN_SetMode(CAN_MODE_STANDBY);//CAN收发器进入待机模式
    OSCCONbits.IDLEN = 0;//配置休眠模式
    Sleep();//进入休眠模式
    App_System_Init();


CAN总线唤醒配置部分:
    RXB0CON = 0x20;//只接收有效的标准标识符信息
    /* 初始化CAN的中断,PIR5为CAN的外围中断标志寄存器 */  
    PIR5=0X00;               // 清所有CAN中断标志   
    PIE5bits.RXB0IE = 1;     //使能接收缓冲器0的接收中断
    PIE5bits.WAKIE = 1;      //允许CAN总线活动唤醒中断
    IPR5bits.RXB0IP = 1;     // 接收缓冲器0的接收中断为高优先级   
    IPR5bits.WAKIP = 1;     //CAN总线活动唤醒中断为高优先级
    CAN_SetMode(CAN_MODE_NORMAL);//CAN收发器设置为正常模式

CAN中断服务程序:
void interrupt high_priority High_ISR(void)
{
    if(PIR5bits.WAKIF==1)//CAN总线活动唤醒中断
    {
        PIR5bits.WAKIF = 0;
    }
    if(PIR5bits.RXB0IF==1)//接收缓冲区0接收到报文
    {
        PIR5bits.RXB0IF=0;      // 清接收中断标志     
        ECAN_Receive(&g_tCanRxMsg);

        //........
    }
}
疑问1、如果CAN总线活动可以唤醒中断是先进入中断,然后执行Sleep后面的程序吗?疑问2、之所以不能唤醒是不是因为当OSCCONbits.IDEN = 0,CPU及外设全部关闭,所有时钟被禁止导致不能被唤醒?如下图




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| cyhuaxiang 发表于 2017-7-23 21:38 | 显示全部楼层
这是CAN总线活动唤醒的说明

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| cyhuaxiang 发表于 2017-7-23 22:09 | 显示全部楼层
问题解决,我在Sleep();前重新加了两句指令
PIR5bits.WAKIF = 0;//清除CAN总线活动唤醒中断标志
PIE5bits.WAKIE = 1;//允许CAN总线活动唤醒中断
这个配置在CAN初始化里已经加上了不知道为啥没起作用.
渔夫的烟斗 发表于 2017-7-28 13:50 | 显示全部楼层
想问下PIC18F66K80的CAN寄存器怎么配置?还有与USB_CAN调试的时候是选择LOOP 模式还是?
 楼主| cyhuaxiang 发表于 2017-7-30 19:54 | 显示全部楼层
渔夫的烟斗 发表于 2017-7-28 13:50
想问下PIC18F66K80的CAN寄存器怎么配置?还有与USB_CAN调试的时候是选择LOOP 模式还是? ...

寄存器配置可以参考PIC18F官方例程,USB_CAN调试用正常模式验证就可以
sxswt 发表于 2017-8-1 22:17 来自手机 | 显示全部楼层
cyhuaxiang 发表于 2017-7-30 19:54
寄存器配置可以参考PIC18F官方例程,USB_CAN调试用正常模式验证就可以

官方例程有说明吗,看芯片资料有的地方看得不明白。例程能给个链接吗
henglin 发表于 2017-8-15 10:07 | 显示全部楼层
这个芯片我已经用了几十万个 在我的产品上
henglin 发表于 2017-8-23 16:41 | 显示全部楼层
wangwang2018@ 发表于 2017-8-23 15:58
PIC18F25K80  我们正规Microchip
QQ:540016159    电话:13728787722

加我微信  
琉璃苣 发表于 2017-11-2 09:54 | 显示全部楼层
PIC18F25K80  Microchip 代理
QQ:3027681806    电话:15914129010
wzdtian 发表于 2019-4-4 15:59 | 显示全部楼层
这个硬件有要求吗?我外接用的TJA1051
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

53

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部