打印
[STC单片机]

用独立按键控制单片机串口通信内容失败

[复制链接]
1038|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zlq685010|  楼主 | 2016-11-12 21:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
zlq685010|  楼主 | 2016-11-12 21:26 | 只看该作者
#include "reg52.h"

#define u8 unsigned char
#define u16 unsigned int
#define KEY P2
unsigned int keypros();
void delay(u16);
void chuankou(u8 a)//´®¿ÚͨÐųÌÐò
{       
    SBUF=a;
while(!TI);
        TI=0;
}
main()
{

        TMOD=0x20;
        TH1=0xFD;
        TL1=0xFD;
  PCON=0x00;
        SCON=0x50;
        EA=1;
  TR1=1;
        ES=1;
while(1)
         { unsigned char keynum ;
                         keynum=keypros();
                switch(keynum)
                {
                        case(0x7f):chuankou(0x00);break;
                        case(0xbf):chuankou(0x01);break;
                        case(0xdf):chuankou(0x02);break;
                        case(0xef):chuankou(0x03);break;
                        default:break;
     }                                                           
}
       
}


//ÑÓʱº¯Êý
void delay(u16 i)
{
        while(i--);       
}

unsigned int keypros()
{
        unsigned char  i ,keyvalue=0x00;
  KEY=0xff;
        if(KEY!=0xff)                  //????K1????
        {       
                delay(1000);   //???? ????10ms
                if(KEY!=0xff)         //??????????
                {
                        keyvalue=KEY;
  while((i<50)&&(KEY!=0xff))
                        {
                                i++;
                                delay(500);
        }
                }
   
        }
return keyvalue;
       
}

使用特权

评论回复
板凳
1273457925| | 2017-1-5 23:17 | 只看该作者
这个程序能不能编译通过啊。变量定义应该在主程序的开头?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝