单片机串口如何向上位机发送数据
5个回答
展开全部
其实单片机串口通信,无所谓向谁发送数据,尽管写发送程序好了,该怎么发送就怎么写呀。当那串口线接到电脑,就向电脑发,接到另一个单片机就向单片机发,接到哪里就发到哪里,所以,写程序时,不必考虑向谁发。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-10-14 · 知道合伙人金融证券行家
关注
展开全部
51单片机c程序
void send_char_com( unsigned char ch)
{
ES=0;
TI=0;
SBUF=ch;
while (!TI );
TI= 0 ;
ES=1 ;
}
mian()
SCON = 0x50; //串口方式1,允许接收
TMOD = 0x20; //定时器1定时方式2
PCON=0x00; //cup正常工作
TCON = 0x50; //设定时器1开始计数
TH1 = 0xfd; // 9600 11.0592MHz 1200波特率e8
TL1 = 0xfd;
TI = 1;//发送数据标志
TR1 =1; //启动定时器1
ES=1;
while(1)
{send_char_com(0xff) ;//发送255
send_char_com(0xaa) ;//发送 aa
}
}
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
void send_char_com( unsigned char ch)
{
ES=0;
TI=0;
SBUF=ch;
while (!TI );
TI= 0 ;
ES=1 ;
}
mian()
SCON = 0x50; //串口方式1,允许接收
TMOD = 0x20; //定时器1定时方式2
PCON=0x00; //cup正常工作
TCON = 0x50; //设定时器1开始计数
TH1 = 0xfd; // 9600 11.0592MHz 1200波特率e8
TL1 = 0xfd;
TI = 1;//发送数据标志
TR1 =1; //启动定时器1
ES=1;
while(1)
{send_char_com(0xff) ;//发送255
send_char_com(0xaa) ;//发送 aa
}
}
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
都有内置的函数或SDk开发包的,查看一下就知道了撒!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
51单片机c程序
void send_char_com( unsigned char ch)
{
ES=0;
TI=0;
SBUF=ch;
while (!TI );
TI= 0 ;
ES=1 ;
}
mian()
SCON = 0x50; //串口方式1,允许接收
TMOD = 0x20; //定时器1定时方式2
PCON=0x00; //cup正常工作
TCON = 0x50; //设定时器1开始计数
TH1 = 0xfd; // 9600 11.0592MHz 1200波特率e8
TL1 = 0xfd;
TI = 1;//发送数据标志
TR1 =1; //启动定时器1
ES=1;
while(1)
{send_char_com(0xff) ;//发送255
send_char_com(0xaa) ;//发送 aa
}
}
void send_char_com( unsigned char ch)
{
ES=0;
TI=0;
SBUF=ch;
while (!TI );
TI= 0 ;
ES=1 ;
}
mian()
SCON = 0x50; //串口方式1,允许接收
TMOD = 0x20; //定时器1定时方式2
PCON=0x00; //cup正常工作
TCON = 0x50; //设定时器1开始计数
TH1 = 0xfd; // 9600 11.0592MHz 1200波特率e8
TL1 = 0xfd;
TI = 1;//发送数据标志
TR1 =1; //启动定时器1
ES=1;
while(1)
{send_char_com(0xff) ;//发送255
send_char_com(0xaa) ;//发送 aa
}
}
追问
非常感谢
另ES=1 ;
这个是干嘛用的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询