芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密

飞芯科技提供芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密逆向服务

单片机解密LPC1768/17XX之CAN控制器硬件查找

 单片机解密 函数名称: CAN_SetACCF()
*  参      数:  波特率
*  返      回: XX
*  函数功能:  接收滤波器状态
单片机解密
-*-------------------------------------------------------------------
void CAN_SetACCF(const unsigned int ACCFMode)
{
            
      switch (ACCFMode)  
            {
             case ACCF_OFF:         //  接收滤波器状态-复位/停止
    LPC_CANAF->AFMR = ACCFMode;//  不 缓 冲 区 接 收 报
文            
                        break;
                        
         case ACCF_BYPASS:         //  接收滤波器状态-复位/停止
             LPC_CANAF->AFMR = ACCFMode; //  所有接收的报文
存到接收缓冲区中
                        break;
                        //  接收滤波器状态-运行         //  硬件接收过滤
         case ACCF_ON: // ACCOFF\ACCBP\EFCAN=0 时,接收滤波
器处于工作模式
         case ACCF_FULLCAN: //  ,接收滤波器处于 FullCAN 工作模
式
                  LPC_CANAF->AFMR = ACCF_OFF;
                 CAN_SetACCF_Lookup();
                 LPC_CANAF->AFMR = ACCFMode;
                        break;            

                        default:            break;
            }
}

/*-------------------------------------------------------------------
函数名称: CAN_SetACCF()
*  参      数:  波特率
*  返      回: XX
*  函数功能:  接收滤波器状态
*                  
*-*------------------------------------------------------------------
void CAN_SetACCF_Lookup(void)
{
              unsigned int address = 0;
              unsigned int ID_high, ID_low;
              /* Set explicit standard Frame */     
              LPC_CANAF->SFF_sa = address;
            ID_low = (0x125 << 16);
            ID_high = 0x126;
         *((volatile uint32_t *)(LPC_CANAF_RAM_BASE + address))
= ID_low | ID_high;
            address += 4;   
              /* Set group standard Frame */
              LPC_CANAF->SFF_GRP_sa = address;
      ID_low = (0x125 << 16);             //  下边界
       ID_high = 0x129;                         /  上边界
         *((volatile uint32_t *)(LPC_CANAF_RAM_BASE + address))
= ID_low | ID_high;
            address += 4;   
             LPC_CANAF->EFF_sa = address;             //标准扩展帧
            LPC_CANAF->EFF_GRP_sa = address;     //  扩展帧组帧
                          /* Set End of Table */
         LPC_CANAF->ENDofTable = address;     //表结束地址
}


   
/*--------------------------------------------------------------------------------*-
*  函数名称: CAN_SetACCF_Lookup()
*  参      数:  波特率
*  返      回: XX
*  函数功能:  接收滤波器状态                  
*  说      明:  如果一个表格的起始地址等于下一个表格的起始
地址或表格终止寄存器的数值,
*       则该表格为空,在处理中将被忽略。
*       表格的大小由其前后 2 个表格起始地址寄存器的差值决
定。
*     例如,(SFF_GRP_sa) - (SFF_sa)为独立标准帧标识符查找表
格大小。
*   若其值为0,即 SFF_GRP_sa=SFF_sa,则独立标准帧标识符
查找表格大小为 0,
*    在查找时此表格将被忽略。查找表结束寄存器 ENDofTable
代表查找表结束地址,


联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.taihedz.cn
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信