久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3056|回復: 0
收起左側

STM32單片機串口發送指令控制LED源代碼

[復制鏈接]
ID:329190 發表于 2020-10-29 19:00 | 顯示全部樓層 |閱讀模式
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"


  5. int main(void)
  6. {        
  7.         u8 t;
  8.         u8 len;        
  9.         u16 times=0;
  10.     u8 com;
  11.     u8 count=5;
  12.         
  13.         Stm32_Clock_Init(9); //系統時鐘設置
  14.         delay_init(72);             //延時初始化  
  15.         uart_init(72,115200);//串口初始化為115200
  16.         LED_Init();        //初始化與LED連接的硬件接口
  17.         printf("\r\nhello world!\r\n");
  18.         while(1)
  19.         {

  20.                 if(USART_RX_STA&0X8000)
  21.                 {                                          
  22.                         //數據接收完整后進行發送的過程
  23.                         len=USART_RX_STA&0x3fFF;//得到此次接收到的數據長度
  24.                         if(len==1){
  25.                                 printf("\r\n數據的長度=%d\n",len);
  26.                                 printf("\r\n您發送的消息為:\r\n\r\n");
  27.                                 while((USART1->SR & 0x40) != 0x40);   //置位TE將使得USART在第一個數據幀前發送一空閑幀
  28.                                 for(t=0;t<len;t++)
  29.                                 {
  30.                                         USART1->DR=USART_RX_BUF[t];
  31.                                         com=USART_RX_BUF[t];
  32.                                         while((USART1->SR&0X40)==0);//等待發送結束
  33.                                 }
  34.                                 printf("\r\n\r\n");//插入換行
  35.                                 USART_RX_STA=0;
  36.                                 
  37.                                 switch(com){
  38.                                     case 0x30:
  39.                                                 //LED1變換,發送命令‘0’
  40.                                                 LED1=!LED1;
  41.                                                 delay_ms(20);
  42.                                                 break;
  43.                                         case 0x31:
  44.                                                 //LED1和LED2閃爍,發送命令‘1’
  45.                                              do{
  46.                                                    LED1=0;
  47.                                                    LED2=1;
  48.                                                    delay_ms(20);
  49.                                                    LED1=1;
  50.                                                    LED2=0;
  51.                                                    delay_ms(20);
  52.                                                    count--;
  53.                                                  }while(count);
  54.                                                  if(count==0) count=5;
  55.                                                 break;
  56.                                 
  57.                                 }
  58.                    }else{
  59.                           printf("\r\n發送的指令錯誤,請重新發送\r\n");
  60.                           USART_RX_STA=0;
  61.                    }
  62.                 }else
  63.                 {
  64.                         times++;
  65.                         if(times%5000==0)
  66.                         {
  67.                                 printf("\r\nALIENTEK NANO STM32開發板 串口實驗\r\n");
  68.                                 printf("正點原子@ALIENTEK\r\n\r\n\r\n");
  69.                         }
  70.                         if(times%200==0)printf("請輸入數據,以回車鍵結束\r\n");  
  71.                         if(times%30==0)LED0=!LED0;//閃爍LED,提示系統正在運行.
  72.                         delay_ms(10);   
  73.                 }
  74.         }         
  75. }
復制代碼


KEIL.7z

79.65 KB, 下載次數: 25, 下載積分: 黑幣 -5

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久国产 | 国产免费黄色 | www.4hu95.com四虎| 日韩在线一区二区 | 国产在线黄色 | 一区二区三区免费看 | 狠狠干在线 | 国产亚洲视频在线观看 | 亚洲欧美综合网 | 一区二区免费看 | 久久在线精品 | 毛片精品| 好吊视频一区二区三区四区 | 日本伊人网 | 国产日韩欧美日韩大片 | 四虎色播 | 青青青视频在线 | 国产成人小视频 | 亚洲日本中文字幕 | 日本成人一区二区三区 | 91精品又粗又猛又爽 | 亚洲午夜18毛片在线看 | 国产一区2区 | 中文av网站| 影音先锋在线视频 | 亚洲精品成a人在线观看 | 日韩毛片免费看 | 亚洲乱色 | 亚洲免费高清 | 黄色片中文字幕 | 亚洲男人av | 黄色av免费看 | 欧美成人精品一区二区三区 | 成人午夜激情 | 欧洲一区二区 | 91精品国产99久久久久久红楼 | 午夜大片| 中文字幕理伦片免费看 | 亚洲午夜激情 | www..com黄 | 福利视频网址导航 |