找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

51单片机串口查询方式收发字符串,程序求解

[复制链接]
admin 发表于 2012-9-2 07:06:21 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
编程目的,单片机把从PC发送的字符串,原样发送给PC。想用查询法,程序运行出错,求指正。
#include <reg52.h>
#include <intrins.h>
#include<string.h>
#define uchar unsigned char
#define uint unsigned int
#define rxin 90
uchar shebeihao[];
uchar code OK[]="OK";
uchar idata systembuf[rxin];
uchar rx,sx;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=200;y>0;y--);
}

void uart()
{
TMOD=0x20;//设置定时器1为工作方式2 设置定时器0为工作方式1


TH1=0xfd; //波特率9600
TL1=0xfd;

PCON=0x00;
SCON=0x50;
TR1=1;

//EA=1;
//ES=1;

}

void sendchar(uchar ch)
{
SBUF=ch;
while(TI==0);
TI=0;
}
void sendstring(uchar *p)
{
while(*p)

{
sendchar(*p);
p++;


}
sendchar(0x0D);
sendchar(0x0A);

}
void main()
{
sx=0;
uart();



if(RI)
{



delay(2000);
if(sx<rxin)
{
shebeihao[sx]=SBUF;
sx++;
}
RI=0;

}



if(sx>0)

{
sendstring(shebeihao);

}


}
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-24 05:30 , Processed in 0.051103 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表