| 
 
初级会员 
 
	积分148金钱148 注册时间2020-5-21在线时间62 小时 | 
 
1金钱 
| 将官方轮询例程can.c中的CAN_RX0_INT_ENABLE 置为1 开启中断模式, void USB_LP_CAN1_RX0_IRQHandler(void)
 {
 uint8_t rxbuf[8];
 uint32_t id;
 uint8_t ide, rtr, len;
 
 printf("id:%x\r\n", g_canx_rxheader.StdId);
 printf("ide:%d\r\n", g_canx_rxheader.IDE);
 printf("rtr:%d\r\n", g_canx_rxheader.RTR);
 printf("len:%d\r\n", g_canx_rxheader.DLC);
 printf("rxbuf[0]:%x\r\n", rxbuf[0]);
 printf("rxbuf[1]:%x\r\n", rxbuf[1]);
 printf("rxbuf[2]:%x\r\n", rxbuf[2]);
 printf("rxbuf[3]:%x\r\n", rxbuf[3]);
 printf("rxbuf[4]:%x\r\n", rxbuf[4]);
 printf("rxbuf[5]:%x\r\n", rxbuf[5]);
 printf("rxbuf[6]:%x\r\n", rxbuf[6]);
 printf("rxbuf[7]:%x\r\n", rxbuf[7]);
 }
 
 
 发现串口高频输出打印,应该是等到一帧就打印一帧的内容。是不是还需其他修改,比如添加清除can中断标记
 
 
 
 
 | 
 |