初级会员

- 积分
- 103
- 金钱
- 103
- 注册时间
- 2017-7-1
- 在线时间
- 23 小时
|
2金钱
如题:(就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); //这一直发送 但是如果上面接收的数据接收不到 这的发送 就一直发不出去
}
|
|