51单片机发送一字符串给PC的代码。。。
以下是我写的代码,但没有返回的信息。P0口操作有效求解。。。。
#include <reg51.h>
#define VALUE_A 0x00
#define VALUE_B 0x0ff
sbit kan_led=P3^1;
unsigned char A_return[] = {'S','T','A','R','T','_','A'};
unsigned char B_return[] = {'S','T','A','R','T','_','B'};
unsigned char Other_ret[] = {'E','R','R','O','R','!','!'};
void InisSerial()
{
SCON = 0x50; // 设定串行口工作方式
TMOD = 0x20; // 定时器1工作于8位自动重载模式, 用于产生波特率
TH1 = 0xFD; // 波特率9600
TL1 = 0xFD;
PCON &= 0xef; // 波特率不倍增
TR1 = 1; // 启动定时器1
}
void main()
{
unsigned char temp,count;
InisSerial();
kan_led = 0;
while(1)
{
TI = 0;
SBUF = VALUE_B;
while(!TI);
while(!RI);
RI = 0;
temp = SBUF;
if(temp == VALUE_A)
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = A_return[count];
while(!TI);
}
P0 = VALUE_A;
}
else if(temp == VALUE_B)
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = B_return[count];
while(!TI);
}
P0 = VALUE_B;
}
else
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = Other_ret[count];
while(!TI);
}
}
}
}
#include <reg51.h>
#define VALUE_A 0x00
#define VALUE_B 0x0ff
sbit kan_led=P3^1;
unsigned char A_return[] = {'S','T','A','R','T','_','A'};
unsigned char B_return[] = {'S','T','A','R','T','_','B'};
unsigned char Other_ret[] = {'E','R','R','O','R','!','!'};
void InisSerial()
{
SCON = 0x50; // 设定串行口工作方式
TMOD = 0x20; // 定时器1工作于8位自动重载模式, 用于产生波特率
TH1 = 0xFD; // 波特率9600
TL1 = 0xFD;
PCON &= 0xef; // 波特率不倍增
TR1 = 1; // 启动定时器1
}
void main()
{
unsigned char temp,count;
InisSerial();
kan_led = 0;
while(1)
{
TI = 0;
SBUF = VALUE_B;
while(!TI);
while(!RI);
RI = 0;
temp = SBUF;
if(temp == VALUE_A)
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = A_return[count];
while(!TI);
}
P0 = VALUE_A;
}
else if(temp == VALUE_B)
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = B_return[count];
while(!TI);
}
P0 = VALUE_B;
}
else
{
for(count=0;count<6;count++)
{
TI = 0;
SBUF = Other_ret[count];
while(!TI);
}
}
}
}
...全文
相关推荐
51单片机串口程序,字符串16进制发送与接收
"51单片机串口程序,字符串16进制发送与接收"本文将详细讲解51单片机串口程序中的字符串16进制发送与接收技术。
51单片机串口通信:向主机发送字符串实战指南
以下是几款常见的串口通信软件,各有特点:RealTerm: 功能强大,支持脚本控制,便于自动化处理。Tera Term: 开源且易于使用,具有一定的脚本功能,适合初学者。SSCOM: 非常适合中国用户,界面简洁,操作简单。
51单片机向主机发送字符串
在51单片机中,串行通信通常通过UART(通用异步收发传输器)实现,利用TXD(发送)和RXD(接收)两个引脚进行数据交换。51单片机发送字符串至PC的过程主要包括以下几个步骤:1.
51单片机串口通信(字符串接收和发送).zip
本资料包“51单片机串口通信(字符串接收和发送)”提供了详细教程,帮助开发者掌握如何在51单片机上实现串行通信的字符串收发功能。以下是关于这一主题的深入探讨。1.
单片机与PC机通信
单片机获取和管理传感器的数据,然后通过串口通信将数据发送给PC。 利用proteus仿真单片机和PC口通信时,需要用到串口调试助手和虚拟串口配置软件。 串口助手用于PC进行数据发送和接收,虚拟串口用于将PC的串口虚拟连接。 P3.0口RXD P3.1口TXD 对应接上compim的接口


单片机/工控
