STM32的can通信,发不出数据

2019-10-12 13:57发布

#include <stm32f10x_lib.h> #include "sys.h" #include "usart.h" #include "delay.h" #include "led.h" #include "key.h" #include "exti.h" #include "can.h"
int main(void) {     u8 key;     u8 i=0,t=0;     u8 cnt=0;     u8 canbuf[8];     u8 res;     u8 mode=0;//CAN工作模式;0,普通模式;1,环回模式     Stm32_Clock_Init(9); //系统时钟设置     delay_init(72); //延时初始化     uart_init(72,9600); //串口初始化     LED_Init(); //初始化与LED 连接的硬件接口     flag=CAN_Mode_Init(1,8,9,4,mode);//CAN初始化,波特率500Kbps      if(flag==0)  for(i=0;i<=2;i++)    //检验can是否完成初始化,用灯指示 {     LED0=0;     LED1=1;     delay_ms(300);     LED0=1;     LED1=0;     delay_ms(300); }     if(flag!=0) for(i=0;i<=2;i++) {     LED0=1;     LED1=0;     delay_ms(300); }     LED0=1;     LED1=1;  
while(1) { for(i=0;i<8;i++) { canbuf=cnt+i;//填充发送缓冲区 } res=Can_Send_Msg(canbuf,8);//发送8个字节 if(res==0)   LED0=res; else LED1=!res;              //开发板上LED1亮(即发不出数去)为什么发送不出去。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 delay_ms(1000); } }

硬件连接:迷你版上外接can收发器模块,利用示波器看TX引脚~~~~结果显示为:发不出数据,怎么解决?
急求!!!can程序用的是战舰版上的,自己稍加修改了下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。