在线时间178 小时
UID3096266
注册时间2015-1-27
NXP金币0
TA的每日心情 | 郁闷 2021-3-10 19:44 |
---|
签到天数: 7 天 连续签到: 1 天 [LV.3]偶尔看看II
金牌会员
 
- 积分
- 2018
- 最后登录
- 2023-12-25
|
本帖最后由 MDebug 于 2016-5-20 08:26 编辑
最近热加工,各种干活,烧电焊啥的,所以没时间分享。。。
根据原理图可见,CAN模块使用的芯片是MC34901,CAN的接口对应的是PB18,PB19
CAN的初始化如下图所示:
- UART_QuickInit(UART1_RX_PE01_TX_PE00,9600);
- UART_CallbackRxInstall(HW_UART1, UART1_RX_ISR);//安装回应中断
- UART_ITDMAConfig(HW_UART1, kUART_IT_Rx, true);//开中断接收(DMA)
- CAN_QuickInit(CAN0_TX_PB18_RX_PB19, kCAN_500K);//初始化CAN,对应PB18,PB19
- CAN_CallbackInstall(HW_CAN0, CAN_ISR);//安装CAN接收中断
- CAN_ITDMAConfig(HW_CAN0,1, kCAN_IT_RX);//开启接收中断,设置为1号邮箱
- CAN_SetRxMB(HW_CAN0, 1, 0x7A8);
复制代码 发送函数。将数据第一时间发送出去。
- static void UART1_RX_ISR(uint16_t byteReceived)
- {
- UART_WriteByte(HW_UART1, byteReceived);//将数据第一时间发送
- }
复制代码
将收到的MSG打印出来,如图所示:
报文读取。没有诊断。。
|
|