找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6538|回复: 0
收起左侧

简单的STM32串口发送数据在lcd屏显示的程序

[复制链接]
ID:592089 发表于 2019-7-29 16:19 | 显示全部楼层 |阅读模式
可以用于STM的32学习和调试,配合串口调试工具等上位机程序使用。

单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"
  5. #include "lcd.h"

  6. int main(void)
  7. {       
  8.         u8 t;
  9.         u8 len;       
  10.         u16 times=0;
  11.         u8 send[30];
  12. u8 a=30;
  13.         delay_init();                     //延时函数初始化       
  14.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2
  15.         uart_init(9600);         //串口初始化为9600
  16.         LED_Init();                           //初始化与LED连接的硬件接口
  17.         LCD_Init();
  18.         POINT_COLOR=RED;

  19.         while(1)
  20.         {
  21.                 if(USART_RX_STA&0x8000)
  22.                 {        LCD_ShowString(30,110,200,16,16,"                    ");                          
  23.                         len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度
  24.                         printf("\r\n您发送的消息为:\r\n");
  25.                         for(t=0;t<len;t++)
  26.                         {
  27.                                 USART1->DR=USART_RX_BUF[t];
  28.                                 sprintf((char*)send,"%c",USART_RX_BUF[t]);
  29.                                 LCD_ShowString(a,110,200,16,16,send);
  30.                                 while((USART1->SR&0X40)==0);//等待发送结束
  31.                                 a=a+10;
  32.                         }
  33.                         printf("\r\n\r\n");//插入换行
  34.                         USART_RX_STA=0;
  35.                         a=30;
  36.                 }else
  37.                 {
  38.                         times++;
  39.                         if(times%30==0)LED0=!LED0;//闪烁LED,提示系统正在运行.
  40.                         delay_ms(10);   
  41.                 }
  42.         }         
  43. }
复制代码

所有资料51hei提供下载:
a.7z (221.92 KB, 下载次数: 127)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表