找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2233|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32F1之3個串口配置 源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:663607 發(fā)表于 2021-8-2 01:36 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
注釋相關(guān)內(nèi)容即可
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"





  6. int main(void)
  7. {               
  8.          u16 t;
  9.         u16 t2;        
  10.         u16 t3;
  11.         u16 len;        
  12.         u16 len2;
  13.         u16 len3;
  14.         delay_init();                     //延時函數(shù)初始化         
  15.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  16.         uart_init(115200);         //串口初始化為115200
  17.          LED_Init();                             //LED端口初始化
  18.         KEY_Init();          //初始化與按鍵連接的硬件接口
  19.          while(1)
  20.         {
  21.                 if(USART_RX_STA&0x8000)
  22.                 {                                          
  23.                         len=USART_RX_STA&0x3fff;//得到此次接收到的數(shù)據(jù)長度
  24. //                        printf("\r\n您發(fā)送的消息為:\r\n\r\n");
  25.                         for(t=0;t<len;t++)
  26.                         {
  27.                                 USART_SendData(USART2, USART_RX_BUF[t]);//向串口1發(fā)送數(shù)據(jù)
  28.                                 while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  29.                         }
  30. //                        printf("\r\n\r\n");//插入換行
  31.                         USART_RX_STA=0;
  32.                 }
  33.                 if(USART_RX_STA2&0x8000)
  34.                 {                                          
  35.                         len2=USART_RX_STA2&0x3fff;//得到此次接收到的數(shù)據(jù)長度
  36. //                        printf("\r\n您發(fā)送的消息為:\r\n\r\n");
  37.                         for(t2=0;t2<len2;t2++)
  38.                         {
  39.                                 USART_SendData(USART3, USART_RX_BUF2[t2]);//向串口1發(fā)送數(shù)據(jù)
  40.                                 while(USART_GetFlagStatus(USART3,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  41.                         }
  42. //                        printf("\r\n\r\n");//插入換行
  43.                         USART_RX_STA2=0;
  44.                 }
  45.                 if(USART_RX_STA3&0x8000)
  46.                 {                                          
  47.                         len3=USART_RX_STA3&0x3fff;//得到此次接收到的數(shù)據(jù)長度
  48. //                        printf("\r\n您發(fā)送的消息為:\r\n\r\n");
  49.                         for(t3=0;t3<len3;t3++)
  50.                         {
  51.                                 USART_SendData(USART1, USART_RX_BUF3[t3]);//向串口1發(fā)送數(shù)據(jù)
  52.                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  53.                         }
  54. //                        printf("\r\n\r\n");//插入換行
  55.                         USART_RX_STA3=0;
  56.                 }
  57.                
  58. //                {
  59. //                        times++;
  60. //                        if(times%5000==0)
  61. //                        {
  62. //                                printf("\r\n戰(zhàn)艦STM32開發(fā)板 串口實驗\r\n");
  63. //                                printf("正點原子@ALIENTEK\r\n\r\n");
  64. //                        }
  65. //                        if(times%200==0)printf("請輸入數(shù)據(jù),以回車鍵結(jié)束\n");  
  66. //                        if(times%30==0)LED0=!LED0;//閃爍LED,提示系統(tǒng)正在運行.
  67. //                        delay_ms(10);   
  68. //                }
  69.         }         
  70. }

復(fù)制代碼

Keil代碼工程: USART123.7z (182.45 KB, 下載次數(shù): 15)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表