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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7951|回復: 9
打印 上一主題 下一主題
收起左側

STM32F103 5個串口同時使用程序 測試成功!

  [復制鏈接]
跳轉到指定樓層
樓主
ID:232860 發表于 2017-9-13 13:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題,親測成功!
單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include "delay.h"
  3. #include "HX711.h"
  4. #include "usart.h"
  5. #include "usart2.h"
  6. #include "usart3.h"
  7. #include "usart4.h"
  8. #include "usart5.h"

  9. int main(void)
  10. {
  11.         u8 i;
  12.         u8 len1;
  13.         u8 len2;
  14.         u8 len3;
  15.         u8 len4;
  16.   u8 len5;

  17.         u16 times=0;

  18.         delay_init();

  19.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  20.         uart1_init(115200);
  21.         uart2_init(115200);
  22.         uart3_init(115200);
  23.         uart4_init(115200);
  24.         uart5_init(115200);

  25.         while(1)
  26.         {
  27.                 if(USART1_RX_STA&0x8000)
  28.                 {
  29.                         len1=USART1_RX_STA&0x3fff;
  30.                         for(i=0;i<len1;i++)
  31.                         {
  32.                                 USART_SendData(USART1, USART1_RX_BUF[i]);
  33.                                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
  34.                         }
  35.                         USART1_RX_STA=0;
  36.                 }else
  37.                 {

  38.                         if(times%200==0)
  39.                         {
  40.                                 u1_printf("This is u1\n");
  41.                         }


  42.                 }

  43.                 if(USART2_RX_STA&0x8000)
  44.                 {
  45.                         len2=USART2_RX_STA&0x3fff;
  46.                         for(i=0;i<len2;i++)
  47.                         {
  48.                                 USART_SendData(USART2, USART2_RX_BUF[i]);
  49.                                 while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET);
  50.                         }
  51.                         USART2_RX_STA=0;
  52.                 }else
  53.                 {

  54.                         if(times%200==0)
  55.                         {
  56.                                 u2_printf("This is u2\n");
  57.                         }
  58.                 }

  59.                 if(USART3_RX_STA&0x8000)
  60.                 {
  61.                         len3 = USART3_RX_STA&0x3fff;
  62.                         for(i = 0;i < len3;i++)
  63.                         {
  64.                                 USART_SendData(USART3, USART3_RX_BUF[i]);
  65.                                 while(USART_GetFlagStatus(USART3,USART_FLAG_TC)!=SET);
  66.                         }
  67.                         USART3_RX_STA=0;
  68.                 }else
  69.                 {
  70.                         if(times%200==0)
  71.                         {
  72.                                 u3_printf("This is u3\n");
  73.                         }
  74.                 }

  75.                 if(USART4_RX_STA&0x8000)
  76.                 {
  77.                         len4 = USART4_RX_STA&0x3fff;
  78.                         for(i = 0;i < len4;i++)
  79.                         {
  80.                                 USART_SendData(UART4, USART4_RX_BUF[i]);
  81.                                 while(USART_GetFlagStatus(UART4,USART_FLAG_TC)!=SET);
  82.                         }
  83.                         USART4_RX_STA=0;
  84.                 }else
  85.                 {
  86.                         if(times%200==0)
  87.                         {
  88.                                 u4_printf("This is u4\n");
  89.                         }
  90.                 }

  91.                 if(USART5_RX_STA&0x8000)
  92.                 {
  93.                         len5 = USART5_RX_STA&0x3fff;
  94.                         for(i = 0;i < len5;i++)
  95.                         {
  96.                                 USART_SendData(UART5, USART5_RX_BUF[i]);
  97.                                 while(USART_GetFlagStatus(UART5,USART_FLAG_TC)!=SET);
  98.                         }
  99.                         USART5_RX_STA=0;
  100.                 }else
  101.                 {
  102.                         if(times%200==0)
  103.                         {
  104.                                 u5_printf("This is u5\n");
  105.                         }
  106.                 }

  107.                 times++;
  108.                 delay_ms(10);
  109.         }
  110. }
復制代碼

所有資料51hei提供下載:
5個串口同時工作.rar (309.69 KB, 下載次數: 190)


評分

參與人數 2黑幣 +55 收起 理由
linuxcso + 5 贊一個!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:244321 發表于 2017-10-30 19:38 | 只看該作者
不是寫的F107嘛,為啥我打開是103啊
回復

使用道具 舉報

板凳
ID:104982 發表于 2018-5-5 09:28 | 只看該作者
想看看中斷怎么寫的
回復

使用道具 舉報

地板
ID:104982 發表于 2018-5-5 10:01 | 只看該作者
追評一下,目前找的多路串口程序中最有用的,請問大神測試過多路同時收發會不會有丟包?
回復

使用道具 舉報

5#
ID:375028 發表于 2018-7-29 16:29 | 只看該作者
ok,學習了。
回復

使用道具 舉報

6#
ID:380691 發表于 2018-7-30 09:17 | 只看該作者
我用103寫的串口程序,結果打印出來是亂碼,
不知道咋回事
回復

使用道具 舉報

7#
ID:219315 發表于 2020-5-29 15:13 | 只看該作者
這個范例很實用,收下了!!!
回復

使用道具 舉報

8#
ID:570410 發表于 2020-9-21 00:04 | 只看該作者
F103 還是 F107?
回復

使用道具 舉報

9#
ID:750420 發表于 2021-8-17 15:05 | 只看該作者
103的,浪費我五個黑幣
回復

使用道具 舉報

10#
ID:697494 發表于 2021-8-26 09:11 | 只看該作者
有參考價值,不錯。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产亚洲精品久久久久久牛牛 | 性欧美xxxx| h在线观看| 狠狠久 | 九九热精品免费 | 欧美精品 在线观看 | 午夜国产一级 | 国产一级毛片精品完整视频版 | 午夜精品一区二区三区在线观看 | 国产免费观看一级国产 | 亚洲免费在线 | 久久久影院 | 欧美日韩一区二区在线 | 欧美综合国产精品久久丁香 | 国产高清精品在线 | 麻豆av网| 亚洲美女一区 | 欧美aaa级| 91 久久 | 国产亚洲精品精品国产亚洲综合 | 91国产精品在线 | 伊人伊成久久人综合网站 | h片在线观看免费 | 成人av在线播放 | 欧美精品成人一区二区三区四区 | 久久99精品视频 | 日韩精品极品视频在线观看免费 | 色婷婷影院 | 亚洲精品视频在线看 | 国产精品a久久久久 | 成人av一区二区三区 | 福利片在线观看 | 日韩一区二区三区视频 | 久久精品小视频 | 一区二区三区在线 | 久久99国产精品 | 99热在线免费 | 欧美色图另类 | 成人区精品一区二区婷婷 | 99精品国产成人一区二区 | 四虎影院欧美 |