|
各位大佬们求助,输入1却无法点亮对应的灯是什么情况?请各位大佬解答。
单片机源程序如下:
#include <REGX51.H>
#include<stdio.h>
int flag=0;
unsigned char i=0;
//′初始化串口
void initserial()
{
SCON=0X50;
TMOD=0X20;
TH1=0XFD;
TL1=0XFD;
TR1=1;
}
//接收来自串口调试小助手的信号
void sendnumber()
{
if(RI==1){
i=SBUF;
RI=0;
flag=1;
if(i=='0'){
P2=~0x01;
}
else if(i=='1'){
P2=~0x02;
}
P2=i;
}
}
//输出数字
void putnumber(int k)
{
SBUF=k;
while(!TI);
TI=0;
}
//打印字符
void sendchar(unsigned char _char)
{
SBUF=_char;
while(!TI);
TI=0;
}
//′打印字符串
void putstring1()
{
int j=0;
unsigned char _string[]={"μãááμú"};
while(_string[j]){
sendchar(_string[j]);
j++;
}
}
void putstring2()
{
int j=0;
unsigned char _string1[]={"¸öμÆ!\n"};
while(_string1[j]){
sendchar(_string1[j]);
j++;
}
}
void main()
{
initserial();
putstring1();
while(1){
sendnumber();
if(flag==1){
putnumber(i+1);
putstring2();
flag=0;
break;
}
}
}
|
|