找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2420|回复: 1
打印 上一主题 下一主题
收起左侧

求助代码有问题:用 《STC125A.H》单片机写了一个时间程序,用的1602的液晶

[复制链接]
跳转到指定楼层
楼主
ID:67664 发表于 2014-10-19 22:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用 《STC125A.H》单片机写了一个时间程序,用的1602的液晶。输入程序后,可以走时间。但调时间就有问题了,按下键盘,液晶的光标总是最后一个字符上显示。我设定的是按一下键盘,光标移动到秒的个位,再按到分的个位。可现在按下光标就是在秒的个位左右移动。应该怎么办?下面是程序的出错出
void keyscan()
{
//while(1)
{        
  if((P35)==0)
        {
      delay(5);
                  if((P35)==0)
                        {
                                bb++;
                                while(!(P35));
               
                                if(bb==1)
                                {                                
                TR0=0;
                                 lcd_command_write(0x80+0x40+12);
                                        lcd_command_write(0x0f);
                          }
                        
               
                                if(bb==2)
                                {
                                         
            lcd_command_write(0x80+0x40+9);
                                                 lcd_command_write(0x0f);
        }        
                                
               
                                if(bb==3)
                                {
                                         
            lcd_command_write(0x80+0x40+6);
                   lcd_command_write(0x0f);
        }
               
                                if(bb==4)
                                {
             bb=0;
                                           lcd_command_write(0x0c);
                                       
                   TR0=1;        
        }        
                                 
               
                        }  
  }
}
}

void main()
{
  lcd_init1();
        lcd_string_write(4,0,"2014-10-18");
  lcd_string_write(5,1,"00:00:00");
        while(1)
        {
                {
                 keyscan();
                }
      if(aa==20)
      {
         aa=0;
                                 miao++;
                                if(miao==60)
                                {
                                        miao=0;
                                        fen++;
                                        if(fen==60)
                                        {
            fen=0;
                                                she++;
                                                if(she==24)
                                                {
               she=0;
            }
          }
                                        sfm_write(5,she);
        }
                                sfm_write(8,fen);
      }                                
      sfm_write(11,miao);



  }

}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:44262 发表于 2014-10-22 12:12 来自触屏版 | 只看该作者
不一定就是这一部分的程序出错了,这个要结合全部的程序来看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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