C按键功能示例(国外英文资料).docVIP

  • 5
  • 0
  • 约6.78千字
  • 约 28页
  • 2017-07-05 发布于河南
  • 举报
C按键功能示例(国外英文资料)

C按键功能示例 # include reg52.h / / p1口连接数码管片选信号和蜂鸣器控制信号 sbit sel0 = p1 ^ 0; sbit sel1 = p1 ^ 1; sbit sel2 = p1 ^ 2; sbit sel3 = p1 ^ 3; sbit beep = p1 ^ 4; / / p3口连接set、inc、dec按键 sbit seen = p3 ^ 3; sbit inc = p3 ^ 4; sbit dec = p3 ^ 5; / / 共阳数码管编码 code which unsigned char indent _ code [10] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; / / 四个数码管显示内容 unsigned char indent [4]; / / 数码管动态扫描索引 unsigned char ledsel; / / 时钟 (时、分、秒、百分秒) 计数 unsigned char th, tm, ts, tms; / / 闹铃定时 (时、分) unsigned char lh, lm; / / 跑表记录 (时、分、秒、百分秒) unsigned char sh [10], sm [10], ss [10] text [10]; / / 跑表显示索引 unsigned char srindex; / / 跑表记录索引 unsigned char swindex; / / 10毫秒, 500毫秒定时标志 unsigned char flag10ms, flag500ms; / / 蜂鸣器鸣叫时间 (5毫秒为单位) unsigned char beepcount; / / 蜂鸣器鸣叫类型 unsigned char beeptype; # define bt _ off 0 / / 关闭声音 # define bt _ button 1 / / 按键声 # define bt _ warn 2 / / 提示声 # define bt _ alarm 3 / / 闹铃 (报警) 声 / / 系统工作类别 unsigned char systype; # define st _ a 0 # define st _ b 1 # define st _ c 2 / / 系统工作状态 unsigned char workstate; # define wa _ normal 0 / / 显示时钟 # define wa _ sethm 1 / / 设置时分 # define wa _ setms 2 / / 设置分秒 # define wa _ setring 3 / / 设置闹铃 # define wb _ off 0 / / 关闭秒表 # define wb _ on 1 / / 启动秒表 # define wb _ stop 2 / / 暂停秒表 # define bathroom _ off 0 / / 倒计时闹铃关闭 # define bathroom _ seen 1 / / 倒计时闹铃设置 # define bathroom _ run 2 / / 倒计时执行 / / led显示状态 unsigned char showstate; # define ss _ hm 0 / / 显示时分 # define ss _ ms 1 / / 显示分秒 # define ss _ sms 2 / / 显示秒 / 百分秒 / / 按键定义 # define btn _ none 0x00 # define btn _ seen 0x01 # define btn _ inc. 0x02 # define btn _ dec 0x04 # define btn _ swi (btn _ inc. | btn _ dec) / / 按键当前扫描值, 按键上次扫描值 unsigned char curkey, oldkey; / / 按键计数值 unsigned char keycount; / / 蜂鸣器声音控制 void beepctrl (unsigned char icount) { / /... } / / 蜂鸣器鸣叫设置 void beepset (unsigned char type) { / /... } / / 按键扫描, 返回当前按键值, 有效位是末三位, 由高到低对应dec、inc、set unsigned char keyscan (void) { / /... return 0; / / 自己修改 } / / 数码管动态扫描 updateled void (void) { / / 关显示 sel0 s

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档