要个计算机与单片机的串口通信上位机C语言程序

 我来答
亢瑾瑜千淑
2020-03-21 · TA获得超过3.1万个赞
知道大有可为答主
回答量:1.2万
采纳率:32%
帮助的人:678万
展开全部
兄弟,下面是我自己写的,希望给你帮助,把数据用Send_One_Uart()这个函数直接发送到串口就行了!最后求采纳,哈哈!
//-----头文件
#include
//-----定义全局变量
unsigned
char
Temp;
/***************************************************
**
函数名称:
UART_Init
**
功能描述:
串口初始化函数
**

入:无
**

出:

**

明:

****************************************************/
void
UART_Init(void)
{
SCON
=
0x50;
//-----SCON:
模式
1,
8-bit
UART,
使能接收
TMOD
|=
0x20;
//-----TMOD:
timer
1,
mode
2,
8-bit
重装
TH1
=
0xFD;
//-----TH1:
重装值
9600
波特率
晶振
11.0592MHz
TR1
=
1;
//-----TR1:
timer
1
打开
ES
=
1;
//-----打开串口中断
EA
=
1;
//-----打开总中断
}
/***************************************************
**
函数名称:
SendByte
**
功能描述:
发送字节函数
**

入:无
**

出:

**

明:

****************************************************/
void
SendByte(unsigned
char
dat)
{
SBUF
=
dat;
while(!TI);
TI
=
0;
}
/***************************************************
**
函数名称:
SendStr
**
功能描述:
发送字符串函数
**

入:无
**

出:

**

明:

****************************************************/
void
SendStr(unsigned
char
*s)
{
while(*s!='\0')
{
SendByte(*s);
s++;
}
}
/***************************************************
**
函数名称:
main
**
功能描述:
主函数
**

入:无
**

出:

**

明:

****************************************************/
void
main
(void)
{
UART_Init();
//-----串口初始化
while(1)
{
if(Temp=='H'&&'i')
{
Temp=0;
SendStr("hello");
}
}
}
/***************************************************
**
函数名称:
UART_SER
**
功能描述:
串口中断服务子函数
**

入:无
**

出:

**

明:

****************************************************/
void
UART_SER
(void)
interrupt
4
//-----串行中断服务程序
{
if(RI)
//-----判断是接收中断产生
{
RI=0;
//-----标志位清零
Temp=SBUF;
//-----读入缓冲区的值
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
意法半导体(中国)投资有限公司
2021-01-14 广告
推荐STC的抗干扰很好。用9块钱的STC89C54RD+,16K的ROM,1K的RAM。我用过的,实现你的功能不成问题。如果环境恶劣,也可以选择工业级的STC89C54RD+,14块钱。而且这个单片机带AD,10位分辨率。可以用来接你的压力... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
房芊芊莫瀚
2019-11-08 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:26%
帮助的人:638万
展开全部
//向串口发送一个字符
void
send_uart(
char
a_s)
{
//
TI=
0
;
while
(TI!=1){;}
SBUF=a_s;
TI=
0
;
}
注意串口的初始化设置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式