如何使pc机从串口读取单片机数据并显示之
展开全部
首先硬件要有max232芯片做电平转换
或者直接用pl2303做usb转串口.
软件要有一个串口调试工具.
至于程序就是
(1):设置串口相关寄存器
注意波特率设置
(2):把数据放在sbuf里面
(3):检查是否发送完毕没完等待
发完了就继续放
各种单片机设置方法不一样就给你一个51
的程序你参考一下:
//wx原创
串口调试程序
向pc发送数据
用于调试观察数据
#include
#include
sbit
k1=p10;
void
ckfszf(char
zf);
void
ckfszfc(char
fsgs,char
zfc[]);
bit
cksnbzw=0;
char
fsb[]={"abcdef"};
main()
{
pcon=0x80;
//串口设置
tmod=0x20;
//
以t1定时器为波特发生器
波特率:19200
th1=0xfd;
tl1=0xfd;
tr1=1;
scon=0x50;
//串口设置模式一完毕
while(1)
{
ti=1;
ckfszfc(6,fsb);
ckfszf('
');
ckfszfc(9,"1234567890");
ckfszf('
');
ckfszf('
');
ckfszf('
');
ckfszfc(12,"aabbccddeeffgg");
ckfszf('
');
while(1);
}
}
//字符
串口发送函数
由串口向外发送一个字符
//参数1:要发送字符
//返回值:无
//备注:
本函数内部检查上次发送是否结束
//
全局初始化要求:ti=1
保证第一次进入此函数之前ti=1
void
ckfszf(char
zf)
{
while(ti==0);
//等待发送完毕
ti=0;
sbuf=zf;
}
//字符串
串口发送函数
由串口向外发送一个字符串
//参数1:要发送字符串个数
取值:0~255
//参数2:要发送字符串数组名
或字符串本身
//返回值:无
//备注:
本函数内部检查上次发送是否结束
//
全局初始化要求:ti=1
保证第一次进入此函数之前ti=1
void
ckfszfc(uchar
fsgs,char
zfc[])
{
uchar
i;
cksnbzw=1;
for(i=0;i
评论
0
0
加载更多
或者直接用pl2303做usb转串口.
软件要有一个串口调试工具.
至于程序就是
(1):设置串口相关寄存器
注意波特率设置
(2):把数据放在sbuf里面
(3):检查是否发送完毕没完等待
发完了就继续放
各种单片机设置方法不一样就给你一个51
的程序你参考一下:
//wx原创
串口调试程序
向pc发送数据
用于调试观察数据
#include
#include
sbit
k1=p10;
void
ckfszf(char
zf);
void
ckfszfc(char
fsgs,char
zfc[]);
bit
cksnbzw=0;
char
fsb[]={"abcdef"};
main()
{
pcon=0x80;
//串口设置
tmod=0x20;
//
以t1定时器为波特发生器
波特率:19200
th1=0xfd;
tl1=0xfd;
tr1=1;
scon=0x50;
//串口设置模式一完毕
while(1)
{
ti=1;
ckfszfc(6,fsb);
ckfszf('
');
ckfszfc(9,"1234567890");
ckfszf('
');
ckfszf('
');
ckfszf('
');
ckfszfc(12,"aabbccddeeffgg");
ckfszf('
');
while(1);
}
}
//字符
串口发送函数
由串口向外发送一个字符
//参数1:要发送字符
//返回值:无
//备注:
本函数内部检查上次发送是否结束
//
全局初始化要求:ti=1
保证第一次进入此函数之前ti=1
void
ckfszf(char
zf)
{
while(ti==0);
//等待发送完毕
ti=0;
sbuf=zf;
}
//字符串
串口发送函数
由串口向外发送一个字符串
//参数1:要发送字符串个数
取值:0~255
//参数2:要发送字符串数组名
或字符串本身
//返回值:无
//备注:
本函数内部检查上次发送是否结束
//
全局初始化要求:ti=1
保证第一次进入此函数之前ti=1
void
ckfszfc(uchar
fsgs,char
zfc[])
{
uchar
i;
cksnbzw=1;
for(i=0;i
评论
0
0
加载更多
意法半导体(中国)投资有限公司
2021-01-14 广告
2021-01-14 广告
推荐STC的抗干扰很好。用9块钱的STC89C54RD+,16K的ROM,1K的RAM。我用过的,实现你的功能不成问题。如果环境恶劣,也可以选择工业级的STC89C54RD+,14块钱。而且这个单片机带AD,10位分辨率。可以用来接你的压力...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询