多功能密码锁单片机课程综合实训报告(编辑修改稿)内容摘要:
te_(0x80+9)。 } if(keynum==6) { month++。 if(month==13) month=1。 write_nyr(5,month)。 write_(0x80+6)。 } if(keynum==7) { year++。 if(year==99) year=0。 write_nyr(2,year)。 write_(0x80+3)。 } } } /*按键减 */ if(key3==0) { delay(80)。 if(key3==0) { while(!key3)。 if(keynum==1) { sec。 if(sec==1) sec=59。 write_clock(12,sec)。 write_(0x80+0x40+13)。 } if(keynum==2) { min。 if(min==1) min=59。 write_clock(9,min)。 write_(0x80+0x40+10)。 } if(keynum==3) { hour。 if(hour==1) hour=23。 write_clock(6,hour)。 write_(0x80+0x40+7)。 } if(keynum==4) { week。 if(week==0) week=7。 write_week(week)。 write_(0x80+13)。 } if(keynum==5) { day。 if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) { if(day==0) month=31。 } else if(month==2) //注意这里没有考虑闰年 { if(day==0) day=28。 } else { if(day==0) day=30。 } write_nyr(8,day)。 write_(0x80+9)。 } if(keynum==6) { month。 if(month==0) month=12。 write_nyr(5,month)。 write_(0x80+6)。 } if(keynum==7) { year。 if(year==1) year=99。 write_nyr(2,year)。 write_(0x80+3)。 } } } } P1=14|10|11|12|13|15|16|07。 if(enter==0)break。 } /*检测 Enter()键是否按下,只有该键按下才能进行输入密码等操作 */ P1=04|10|11|12|13|15|16|17。 while(enter)。 if(enter==0) { delay(5)。 if(enter==0) { TR0=0。 write_(0x01)。 //显示清屏:数据指针、所有显示清 0 write_(0x80+0x02)。 //设置数据地址指针 for(num=0。 num13。 num++) { write_date(table3[num])。 //LCD 显示“ Enter please:” delay(5)。 } } while(!enter)。 //判断按键是否释放 delay(5)。 while(!enter)。 } P1=0xff。 } /************************************** **函数名称: keyscan **函数功能: 3*4 键盘扫描 **入口参数:无 **出口参数: jz ***************************************/ uchar keyscan() { uchar temp。 P1=0xfe。 //第一行扫描 temp=P1。 temp=tempamp。 0xf0。 while(temp!=0xf0) { delay(5)。 temp=P1。 temp=tempamp。 0xf0。 while(temp!=0xf0) { temp=P1。 switch(temp) { case 0xee:jz=0。 break。 case 0xde:jz=1。 break。 case 0xbe:jz=2。 break。 case 0x7e:jz=3。 break。 } while(temp!=0xf0) { temp=P1。 temp=tempamp。 0xf0。 } } } P1=0xfd。 //第二行扫描 temp=P1。 temp=tempamp。 0xf0。 while(temp!=0xf0) { delay(5)。 temp=P1。 temp=tempamp。 0xf0。 while(temp!=0xf0) { temp=P1。 switch(temp) { case 0xed:jz=4。 break。 case 0xdd:jz=5。 break。 case。多功能密码锁单片机课程综合实训报告(编辑修改稿)
相关推荐
地址 /数据复用。 在这种模式下, P0具有内部上拉电阻。 在 flash编程时, P0口也用来接收指令字节;在程序校验时,输出指令字节。 程序校验时,需要外部上拉电阻。 P1口: P1口是一个具有内部上拉电阻的 8位双向 I/O 口, P1 输出缓冲器能驱动 4个 TTL 逻辑电平。 对 P1 端口写 “1”时,内部上拉电阻把端口拉高,此时可以作为 输入口使用。 作 摘要 7 为输入使用时
数据复用。 在这种模式下, P0具有内部上拉电阻。 在 flash编程时, P0口也用来接收指令字节;在程序校验时,输出指令字节。 程序校验时,需要外部上拉电阻。 P1口: P1口是一个具有内部上拉电阻的 8位双向 I/O 口, P1 输出缓冲器能驱动 4个 TTL 逻辑电平。 对 P1 端口写 “1”时,内部上拉电阻把端口拉高,此时可以作为 输入口使用。 作 摘要 7 为输入使用时
:std_logic。 begin if full39。 event and full=39。 139。 then t2:=not t2。 if t2=39。 139。 then d_out=39。 139。 else d_out=39。 039。 end if。 end if。 end process p_div。 end behav。 频率为 1MHz 的分频波形图: 9 其生成元器件如图
管及热煨弯头的实际测量数据。 土建作业队 2 个,土建作业一队负责 B11 桩至 B35 桩的作业带开拓、管沟开挖、回填、地貌恢复等;土建作业二队负责 B35桩至 B44桩的作业带开拓、管沟开挖、回填、苏里格第四天然气处理厂外输管道 B段工程 施工组织设计 11 地貌恢复及全线的施工便道的修筑。 运布管作业队 1 个, 20台双桥车 和一台 25T吊车负责全部管 线 的运管工作。
凝土 选用 PR4 型 混凝土 防水剂,掺量为水泥重量的 810%,所采用的外加剂均需做适应性试验。 ( 4)掺合料:为改善 混凝土 施工性能,节约水泥,在泵送 混凝土 中掺入适量的Ⅱ级以上粉煤灰,掺量依据试验确定。 混凝土 的拌制和运输 ( 1) 混凝土 配料严格按照配合比进行,原材料允许偏差不得超过下列规定: 水泥、掺合料: 177。 2%; 粗、细骨料: 177。 3%; 水、外加剂:
组成及安装要求 悬挑钢梁的组成 悬挑钢梁 由钢梁、卸荷钢丝绳、绳卡及预埋件组成。 钢梁 全部由 16#工字钢及 20 毫米 圆钢组焊加工;斜拉卸荷钢丝绳规格 为: 6179。 19Φ (拉接在内 外 排)绳卡规格为 ;预埋件采用直径为 20 的 圆钢 加工制作。 注:在后面的计算书中的钢梁的型号是计算的结果,为扩大安全系数,抵御不 黄金海岸项目外架搭拆方案 阳江市建安集团有限公司金海岸