找回密码
 立即注册

QQ登录

只需一步,快速开始

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

用89C52制作的自动打铃仪实验成功

[复制链接]
跳转到指定楼层
楼主
ID:55874 发表于 2013-10-16 00:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一、设置四个功能键:
K1:调时
K2:调分
K3:设置
K4:清除或退出
二、使用方法:
   1、调整当时时间:在正常工作时,按K1和K2调整当前时间,时分只进无退;
   2、清除打铃点:在正常工作时,按K3一次,再按K4二次(一次准备清除,第二次确定清除,如果反悔,可在第二次按K3退出)。
   3、增加打铃时间点:在正常工作时,按K3一次,再按K1或K2调整时间,最后按K3保存,退出可按K4。
   4、修改打铃时间点:在正常工作时,按K3二次,进入修改状态,按K3找出要修改的时间点,接着按K1或K2修改时间,最后按K3保存。退出可按K4。
三、其他说明:
    因89C52储存空间所限,本打铃仪最大限度只能存储48个时间点,在实际设计时只设计45个打铃点,超过无效。
四、部分源程序:
void TimeTiao()//读取打铃点
{
write_com(0x01);        //清屏
-----
{
  for(i=0;i<b;i++)
  {
   delay(25);
   write_com(0x80);//显示在第1行
   write_date(table1[DaTime[i*2]/10]);
   write_date(table1[DaTime[i*2]%10]);
   write_date(':');
   write_date(table1[DaTime[i*2+1]/10]);
   write_date(table1[DaTime[i*2+1]%10]);
   display(0xC0,"NO.");//显示在第2行
   write_date(table1[(i+1)/100]);
   write_date(table1[((i+1)%100)/10]);
   write_date(table1[(i+1)%10]);
   delay1(1000);
  }
}
else
{
  display(0x80,"Err:NO TimeSave!");//显示在第2行
  delay1(1000);
}
write_com(0x01);        //清屏
}

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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