stm32实验CAN收发实验

2019-05-17 12:35

#include \#include \#include \#include \#include \#include \#include \#include \#include \#include \#include \#include \#include \ #include \#include \#include \#include \#include \

#include \ #include \

#include \ #include \

int main(void) {

u8 key; u8 i=0,t=0; u8 cnt=0; u8 canbuf[8]; u8 res;

u8 mode=1;//CAN工作模式;0,普通模式;1,环回模式

Stm32_Clock_Init(9); //系统时钟设置 uart_init(72,9600); delay_init(72); LED_Init(); LCD_Init();

//串口初始化为9600 //延时初始化

//初始化与LED连接的硬件接口 //初始化LCD

usmart_dev.init(72); //初始化USMART KEY_Init();

//按键初始化

CAN_Mode_Init(1,8,7,5,mode);//CAN初始化,波特率450Kbps

POINT_COLOR=RED;//设置字体为红色

LCD_ShowString(60,50,200,16,16,\LCD_ShowString(60,70,200,16,16,\

LCD_ShowString(60,90,200,16,16,\LCD_ShowString(60,110,200,16,16,\LCD_ShowString(60,130,200,16,16,\

LCD_ShowString(60,150,200,16,16,\显示提示信

//显示当前

POINT_COLOR=BLUE;//设置字体为蓝色

LCD_ShowString(60,170,200,16,16,\

计数值

LCD_ShowString(60,190,200,16,16,\

LCD_ShowString(60,250,200,16,16,\

//提示发送的数据

//提示接收到的数

while(1)

{

key=KEY_Scan(0);

if(key==KEY_RIGHT)//KEY0按下,发送一次数据 {

for(i=0;i<8;i++) {

canbuf[i]=cnt+i;//填充发送缓冲区

if(i<4)LCD_ShowxNum(60+i*32,210,canbuf[i],3,16,0X80); //显示数据

else LCD_ShowxNum(60+(i-4)*32,230,canbuf[i],3,16,0X80); //显示数据

}

res=Can_Send_Msg(canbuf,8);//发送8个字节

if(res)LCD_ShowString(60+80,190,200,16,16,\//提示发送失败

else LCD_ShowString(60+80,190,200,16,16,\//提示发送成功

}else if(key==KEY_UP)//WK_UP按下,改变CAN的工作模式 {

mode=!mode;

CAN_Mode_Init(1,8,7,5,mode);//CAN普通模式初始化,普通模

式,波特率450Kbps

POINT_COLOR=RED;//设置字体为红色 if(mode==0)//普通模式,需要2个开发板 {

LCD_ShowString(60,130,200,16,16,\

}else //回环模式,一个开发板就可以测试了. {

}

}

LCD_ShowString(60,130,200,16,16,\

POINT_COLOR=BLUE;//设置字体为蓝色

key=Can_Receive_Msg(canbuf); if(key)//接收到有数据 {

LCD_Fill(60,270,130,310,WHITE);//清除之前的显示 for(i=0;i

if(i<4)LCD_ShowxNum(60+i*32,270,canbuf[i],3,16,0X80); //显示数据

else LCD_ShowxNum(60+(i-4)*32,290,canbuf[i],3,16,0X80); //显示数据 }

}

} t++; delay_ms(10); if(t==20) { }

LED0=!LED0;//提示系统正在运行 t=0; cnt++;

LCD_ShowxNum(60+48,170,cnt,3,16,0X80);

//显示数据

}


stm32实验CAN收发实验.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2014行政法在线测试习题答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: