标题:
STM32F103 5个串口同时使用程序 测试成功!
[打印本页]
作者:
linux100
时间:
2017-9-13 13:53
标题:
STM32F103 5个串口同时使用程序 测试成功!
如题,亲测成功!
单片机源程序如下:
#include "stm32f10x.h"
#include "delay.h"
#include "HX711.h"
#include "usart.h"
#include "usart2.h"
#include "usart3.h"
#include "usart4.h"
#include "usart5.h"
int main(void)
{
u8 i;
u8 len1;
u8 len2;
u8 len3;
u8 len4;
u8 len5;
u16 times=0;
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
uart1_init(115200);
uart2_init(115200);
uart3_init(115200);
uart4_init(115200);
uart5_init(115200);
while(1)
{
if(USART1_RX_STA&0x8000)
{
len1=USART1_RX_STA&0x3fff;
for(i=0;i<len1;i++)
{
USART_SendData(USART1, USART1_RX_BUF[i]);
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
}
USART1_RX_STA=0;
}else
{
if(times%200==0)
{
u1_printf("This is u1\n");
}
}
if(USART2_RX_STA&0x8000)
{
len2=USART2_RX_STA&0x3fff;
for(i=0;i<len2;i++)
{
USART_SendData(USART2, USART2_RX_BUF[i]);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET);
}
USART2_RX_STA=0;
}else
{
if(times%200==0)
{
u2_printf("This is u2\n");
}
}
if(USART3_RX_STA&0x8000)
{
len3 = USART3_RX_STA&0x3fff;
for(i = 0;i < len3;i++)
{
USART_SendData(USART3, USART3_RX_BUF[i]);
while(USART_GetFlagStatus(USART3,USART_FLAG_TC)!=SET);
}
USART3_RX_STA=0;
}else
{
if(times%200==0)
{
u3_printf("This is u3\n");
}
}
if(USART4_RX_STA&0x8000)
{
len4 = USART4_RX_STA&0x3fff;
for(i = 0;i < len4;i++)
{
USART_SendData(UART4, USART4_RX_BUF[i]);
while(USART_GetFlagStatus(UART4,USART_FLAG_TC)!=SET);
}
USART4_RX_STA=0;
}else
{
if(times%200==0)
{
u4_printf("This is u4\n");
}
}
if(USART5_RX_STA&0x8000)
{
len5 = USART5_RX_STA&0x3fff;
for(i = 0;i < len5;i++)
{
USART_SendData(UART5, USART5_RX_BUF[i]);
while(USART_GetFlagStatus(UART5,USART_FLAG_TC)!=SET);
}
USART5_RX_STA=0;
}else
{
if(times%200==0)
{
u5_printf("This is u5\n");
}
}
times++;
delay_ms(10);
}
}
复制代码
所有资料51hei提供下载:
5个串口同时工作.rar
(309.69 KB, 下载次数: 190)
2017-9-13 15:56 上传
点击文件名下载附件
如题
下载积分: 黑币 -5
作者:
xuannian
时间:
2017-10-30 19:38
不是写的F107嘛,为啥我打开是103啊
作者:
linuxcso
时间:
2018-5-5 09:28
想看看中断怎么写的
作者:
linuxcso
时间:
2018-5-5 10:01
追评一下,目前找的多路串口程序中最有用的,请问大神测试过多路同时收发会不会有丢包?
作者:
steven_roc
时间:
2018-7-29 16:29
ok,学习了。
作者:
Yoda
时间:
2018-7-30 09:17
我用103写的串口程序,结果打印出来是乱码,
不知道咋回事
作者:
jach09
时间:
2020-5-29 15:13
这个范例很实用,收下了!!!
作者:
xiaotian426
时间:
2020-9-21 00:04
F103 还是 F107?
作者:
wyqf
时间:
2021-8-17 15:05
103的,浪费我五个黑币
作者:
near0312
时间:
2021-8-26 09:11
有参考价值,不错。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1