找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2099|回復(fù): 1
收起左側(cè)

stm32串口三初始化源程序

[復(fù)制鏈接]
ID:821170 發(fā)表于 2020-9-20 15:51 | 顯示全部樓層 |閱讀模式
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"
  5. #include "beep.h"
  6. #include "key.h"
  7. #include "usart3.h"        



  8. int main(void)
  9. {

  10.         u8 t,key;
  11.         u8 len;        
  12.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
  13.         delay_init(168);                //延時(shí)初始化
  14.         uart_init(115200);        //串口初始化波特率為115200
  15.         usart3_init(115200);
  16.         LED_Init();                                  //初始化與LED連接的硬件接口
  17.         KEY_Init();        
  18.         while(1)
  19.         {
  20.                 key=KEY_Scan(0);
  21.                 if(USART3_RX_STA&0x8000)
  22.                 {                                          
  23.                         len=USART3_RX_STA&0x3fff;//得到此次接收到的數(shù)據(jù)長(zhǎng)度
  24.                         printf("\r\n您發(fā)送的消息為:\r\n");
  25.                         for(t=0;t<len;t++)
  26.                         {
  27.                                 USART_SendData(USART3, USART3_RX_BUF[t]);         //向串口1發(fā)送數(shù)據(jù)
  28.                                 while(USART_GetFlagStatus(USART3,USART_FLAG_TC)!=SET);//等待發(fā)送結(jié)束
  29.                         }
  30.                         printf("\r\n\r\n");//插入換行
  31.                         USART3_RX_STA=0;
  32.                 }
  33.                
  34.                 if(key)
  35.                 {
  36.                         switch(key)
  37.                         {
  38.                                 case WKUP_PRES:
  39.                                         printf("\r\n您發(fā)送的消息為:\r\n");
  40.                                         USART_SendData(USART3,'3');
  41.                                         break;
  42.                                 
  43.                                 case KEY0_PRES:
  44.                                         printf("\r\n您發(fā)送的消息為:\r\n");
  45.                                         USART_SendData(USART3,'2');
  46.                                 break;
  47.                         }
  48.                         printf("\r\n\r\n");//插入換行
  49.                 }
  50.         }
  51. }
復(fù)制代碼

USART3.7z

295.02 KB, 下載次數(shù): 11, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報(bào)

ID:821217 發(fā)表于 2020-9-20 18:09 | 顯示全部樓層
有沒有USART DMA方式的?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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