如题:(就2个金币了 都给了)
利用原子哥的CAN 实验程序改动了一下,基本设置都没改 发现无法发送,
但是如果 我收到数据后 才可以发送
想问一下,为什么CAN接收到数据后才可以发送? 如果接收不到数据就一直无法发送?
具体程序如下:(配置函数都用的 原子哥的程序)
int main(void)
{
u8 key;
u8 i=0,t=0;
u8 cnt=0;
u8 canbuf[8] = {0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01};
u8 res;
NVIC_Configuration();
CAN_Mode_Init(CAN_SJW_1tq,CAN_BS2_8tq,CAN_BS1_9tq,5,CAN_Mode_Normal);//我这是400K 波特率
while(1)
{
uint8_t flag = Can_Receive_Msg(canbuf); // 这一直接收
uint8_t i,j;
for(i=0;i<255;i++)
{
for(j=0;j<255;j++);
}
res=Can_Send_Msg(canbuf,8); //这一直发送 但是如果上面接收的数据接收不到 这的发送 就一直发不出去
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
原子哥 这个为什收到数据才能发送成功啊
一周热门 更多>