完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
两个STM32串口通信,按键后将数据发送显示在另一方的LCD上,怎么发送一次,要按下复位键,对方才能显示??
您好: 我在学习中遇到了如下问题希望你能予以帮助,我将不胜感激。 两个STM32串口通信,按键后将数据发送显示在另一方的LCD上,怎么发送一次,要按下复位键,对方才能显示?? 串口助手加上发送新行在单个的STM32上能正确工作,但不发送新行,将不能结束接收,一直等待接收。 显示是LGDP4532驱动。软件环境是MDK3.8 具体实现代码在附件中。。。 读写函数: u8* Usart_read(void) { u8 *p,*q,t,len; len=0; p=q; if(USART_RX_STA&0x80) { len=USART_RX_STA&0x3f;//得到此次接收到的数据长度 for(t=0;t { *q=USART_RX_BUF[t]; USART1->DR=USART_RX_BUF[t]; while((USART1->SR&0X40)==0); } USART_RX_STA=0; } return p; } u8 Usart_write(u8 *p) { u8 len; len=0; for(;len<5;len++,p++) { USART_RX_BUF[len]=*p; USART1->DR=USART_RX_BUF[len]; while((USART1->SR&0X40)==0); } return len; } u8 Usart_scan(u8 *p) //1:zuoz, 2:youz, 3:qian, 4:hout, 5:ting, 0:没有信号 { u8 flag; flag=0; p++; if(*p=='1')flag=1; else if(*p=='2')flag=2; else if(*p=='3')flag=3; else if(*p=='4')flag=4; else if(*p=='5')flag=5; return flag; } 主函数: |
|
相关推荐
2个回答
|
|
int main(void)
{ u8 len,len1; u8 *buf; *buf=0; len=0; len1=0; Stm32_Clock_Init(9); //系统时钟设置 uart_init(72,9600); //串口初始化为9600 delay_init(72); //延时初始化 LCD_Init(); LED_Init(); //初始化与LED连接的硬件接口 ZUOYOU_Init(); //电机初始化 KEY_Init(); //按键初始化 while(1) { len1=KEY_Scan(0); if(len1) { switch(len1) { case KEY_1:Usart_write("1111");break; case KEY_2:Usart_write("2222");break; case KEY_3:Usart_write("3333");break; case KEY_4:Usart_write("4444");break; } len1=0; } buf=Usart_read(); if(*buf=='1'||*buf=='2'||*buf=='3'||*buf=='4'||*buf=='5') { LCD_ShowString(30,90,200,16,16,buf); len=Usart_scan(buf); switch(len) { case 0:LCD_ShowString(30,50,200,16,16,"xian zai shi ling ");break; case 1:LCD_ShowString(30,50,200,16,16,"zheng zai zuo zhuan");LED1=0;LED2=0;LED3=0;break; case 2:LCD_ShowString(30,50,200,16,16,"zheng zai you zhuan");LED1=0;LED2=0;LED3=0;break; case 3:LCD_ShowString(30,50,200,16,16,"zheng zai qian jin ");break; case 4:LCD_ShowString(30,50,200,16,16,"zheng zai hou tui ");break; case 5:LCD_ShowString(30,50,200,16,16,"zheng zai ting zhi ");break; default:LCD_ShowString(30,50,200,16,16,"chu cuo le ");break; } LCD_ShowString(30,70,200,16,16,buf); len=0; } } }
|
|
|
|
下载试试 看看效果如何
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-spi编程示例之spi编写程序
575 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第三十七章 image图像对比实验
554 浏览 0 评论
500 浏览 1 评论
482 浏览 0 评论
关于RT-Thread studio添加freemodbus控件失败的问题
817 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11641 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-8 15:26 , Processed in 0.800967 second(s), Total 75, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号