打印

51串口接164,组成串口键盘,代码有错?

[复制链接]
1392|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CHUANDAOXY|  楼主 | 2007-4-11 07:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
错在那里?
#include  <reg51.h>
#include   <intrins.h>
 unsigned char get_char(void);                  

void delay(void);

  main()
 {
 unsigned char keybuf [16],count;                                     
                    
    SCON=0;                                                                        
    ES=0;                                     
    EA=0;
    count=0;

    while (count<16) keybuf [count++], get_char();  
 }
    
  unsigned char get_char(void)
    {                                               
       unsigned char key_code,column=0,mask=0x00;
       TI=0;
       SBUF=mask;
       while (TI==0);
                 
   while(1) {
   while((P3^4&P3^5)!=0);
   delay( );
   if((P3^4&P3^5)==0)continue ;
   else break;
   }
                 
   mask=0xfe;
   while(1)
   {
    TI=0;
    SBUF=mask ;
    while(TI==0);
    if((P3^4&P3^5)!=0)
    {
    mask= _crol_(mask,1);                       
    column||
    if(column>=8) column=0;
    continue;
    }
      else break;
     }
       if(P3^4==0) key_code=column ;
       else     key_code=8+column;
       return(key_code);
     }

      void delay(void)
       {
          unsigned int I= 10;                         /*延时10ms*/
          while (I--);            /*两减号间只能有一个空格*/
       } 


相关帖子

沙发
ayb_ice| | 2007-4-11 08:07 | 只看该作者

又没有SCH,谁知道你在干只啥...

使用特权

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

本版积分规则

855

主题

1044

帖子

4

粉丝