微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 如何一步一步建立CAN通讯

如何一步一步建立CAN通讯

时间:12-14 来源:互联网 点击:
分频器
#define ID3 00 //ID3
-----------------------------
初始化程序
uchar main_ch=0;
IO_Init(); //I/O口初始化
INT1_Init();
GET_add(); //获取地址,地址为0,反复获取地址,直到不为0。
NET_LED_on;
ERR_LED_on; //初始化中,点亮故障灯和通讯灯,
delay50ms(2);
dog();
delay50ms(2);
dog();
delay50ms(2);
dog();
CAN_Init(); //CAN初始化
NET_LED_off;
ERR_LED_off;
SEI();
CAN_first_send(); //CAN试发送
delay50ms(1);
dog();
void GET_add(void) //地址获取程序
{
uchar add_temp=0,add_temp1=0,add_temp2=0,add_temp3=0,addr_temp=0;
do
{
dog();
NET_LED_on;
ERR_LED_on;
add_temp1=PINC&0xc3;
add_temp2=add_temp1>>4;
add_temp1=add_temp1&0x03;
add_temp3=(PIND&0xe0)>>1;
add_temp=add_temp1+add_temp2+add_temp3;
add_temp=(~add_temp)&0x7f;
addr=add_temp;
delay50ms(2);
}
while(addr==0);

}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top