版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CAN的应用非常广泛,现在很多单片机都内部集成了CAN控制器,今天结合瑞萨RA2单片机的CAN控制器模块,给大家描述一下其应用案例。瑞萨RA2L1系列MCU简介RA2L1产品组基于Arm®
Cortex®-M23核心(现今Arm®
Cortex-M系列中功耗最低的CPU)。这款产品采用优化的制程和瑞萨电子的低功耗工艺技术,是业界一流水平的超低功耗微控制器。RA2L1产品组能够支持1.6V至5.5V宽电压工作,CPU时钟频率最高48MHz,且运行模式电流和待机模式电流更低。RA2L1产品群配备了增强型电容式触摸感应单元(CTSU2)、CAN控制器局域网总线,串行通信接口、高精度模拟电路和定时器。产品封装从48引脚到100引脚。一控制器局域网CAN模块简介控制器局域网(CAN)模块使用基于消息的协议在电磁噪声应用中的多个从机和主机之间接收和传输数据。该模块符合ISO11898-1(CAN2.0A/CAN2.0B)标准,最多支持32个邮箱,可配置为普通邮箱和FIFO模式下的发送或接收。支持标准(11位)和扩展(29位)消息格式。CAN模块需要额外的外部CAN收发器。CAN模块框图注意事项:CAN需要外部高速晶体作为时钟源,使用CAN模块前需要先配置好外部高速时钟。CAN模块参数规格二RA2L1CAN通信应用例程使用官方e2
studio开发工具创建RA2L1工程,并添加CAN外设模块底层应用。
配置CAN模块参数(包括通信速率、引脚配置等)。
三CAN应用参考代码#defineWAIT_TIME(500U)//waittimevalue#defineCAN_MAILBOX_NUMBER_TX(0U)//mailboxnumber#defineCAN_MAILBOX_NUMBER_RX(1U)#defineCAN_FRAME_TRANSMIT_DATA_BYTES(8U)//datalength#defineZERO(0U)/*Privateglobalvariables*//*Flags,setfromCallbackfunction*/staticvolatileboolb_can_tx=false;//CANtransmissionstatusstaticvolatileboolb_can_rx=false;//CANreceivestatusstaticvolatileboolb_can_err=false;//CANerrorstatus/*CANframesfortxandrx*/staticcan_frame_tg_can_tx_frame;//CANtransmitframestaticcan_frame_tg_can_rx_frame;//CANreceiveframevoidhal_entry(void){/*TODO:addyourowncodehere*/fsp_err_terr=FSP_SUCCESS;uint32_ttime_out=WAIT_TIME;//timeoutuint8_tcan_tx_msg[CAN_FRAME_TRANSMIT_DATA_BYTES]={0,1,2,3,4,5,6,7};uint8_tcan_rx_msg[CAN_FRAME_TRANSMIT_DATA_BYTES]={0};/*InitializestheCGCmodule.*/err=R_CGC_Open(&g_cgc0_ctrl,&g_cgc0_cfg);/*Handleanyerrors.Thisfunctionshouldbedefinedbytheuser.*/assert(FSP_SUCCESS==err);/*StarttheCGC_CLOCK_MAIN_OSC.*/err=R_CGC_ClockStart(&g_cgc0_ctrl,CGC_CLOCK_MAIN_OSC,NULL);assert(FSP_SUCCESS==err);/*InitializeCANmodule*/err=R_CAN_Open(&g_can_ctrl,&g_can_cfg);/*Errortrap*/if(FSP_SUCCESS!=err){__asm("BKPT#0\n");}g_can_tx_frame.id=CAN_MAILBOX_NUMBER_TX;g_can_tx_frame.type=CAN_FRAME_TYPE_DATA;g_can_tx_frame.data_length_code=CAN_FRAME_TRANSMIT_DATA_BYTES;/*copythetxdataframewithTX_MSG*/memcpy((uint8_t*)&g_can_tx_frame.data[ZERO],(uint8_t*)&can_tx_msg[ZERO],CAN_FRAME_TRANSMIT_DATA_BYTES);err=R_CAN_Write(&g_can_ctrl,CAN_MAILBOX_NUMBER_TX,&g_can_tx_frame);/*Errortrap*/if(FSP_SUCCESS!=err){err=R_CAN_Close(&g_can_ctrl);if(FSP_SUCCESS!=err){__asm("BKPT#0\n");}}while(1){/*checkifreceiveflagisset*/if(true==b_can_rx){/*Resetflagbit*/b_can_rx=false;g_can_rx_frame.data[CAN_FRAME_TRANSMIT_DATA_BYTES-1]=g_can_rx_frame.id;/*Transmittherxdataframeasacknowledgingthedatatransferissuccessful*/err=R_CAN_Write(&g_can_ctrl,CAN_MAILBOX_NUMBER_TX,&g_can_rx_frame);/*Errortrap*/if(FSP_SUCCESS!=err){err=R_CAN_Close(&g_can_ctrl);if(FSP_SUCCESS!=err){__asm("BKPT#0\n");}}/*waitfortransmitflagbittoset*/while((true!=b_can_tx)&&(time_out--));if(0==time_out){__asm("BKPT#0\n");}/*Resetflagbit*/b_can_tx=false;}}}voidcan_callback(can_callback_args_t*p_args){switch(p_args->event){caseCAN_EVENT_TX_COMPLETE:{b_can_tx=true;//setflagbitbreak;}caseCAN_EVENT_RX_COMPLETE:{b_can_rx=true;//copythereceiveddatatorx_framememcpy(&g_can_rx_frame,p_args->p_frame,sizeof(can_frame_t));break;}caseCAN_EVENT_MAILBOX_MESSAGE_LOST://overwrite/overrunerroreventcaseCAN_EVENT_BUS_RECOVERY://BusrecoveryerroreventcaseCAN_EVENT_ERR_BUS_OFF://errorBusOffeventcaseCAN_EVENT_ERR_PASSIVE://errorpassiveeventcaseCAN_EVENT_ERR_WARNING://errorwarn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026贵州黔南州三都县中国移动公司招聘14人备考题库带答案详解(考试直接用)
- 2026浙江省财开集团有限公司社会招聘备考题库及一套参考答案详解
- 2026年低功耗智能计算项目可行性研究报告
- 2026江西省抚州市直属学校招聘硕士研究生60人备考题库附答案详解(研优卷)
- 2026年卫星健康监控系统项目可行性研究报告
- 2026江苏淮安淮阴工学院招聘工作人员120人备考题库附答案详解(满分必刷)
- 2026浙江杭州市西湖区西庐幼儿园招聘幼儿教师1人备考题库(非事业)附答案详解(能力提升)
- 2026河南省科学院激光制造研究所招聘20人备考题库附答案详解(夺分金卷)
- 2026河南南阳市书院高中教师招聘4人备考题库带答案详解(巩固)
- 2026湖南常德市柳叶湖旅游度假区开发公益性岗位备考题库及答案详解(基础+提升)
- 钻探施工安全培训
- 博士组合物使用指南
- 高校辅导员队伍建设基本情况报告
- 《相变储热供暖工程技术标准》
- 安装防雨棚合同协议书
- DL∕T 1917-2018 电力用户业扩报装技术规范
- 光伏维修维保合同
- CJJ 82-2012 园林绿化工程施工及验收规范
- 黑龙江商业职业学院单招《语文》考试复习题库(含答案)
- 变压器借用合同范本
- 新员工廉洁从业培训课件
评论
0/150
提交评论