多功能密码片机课程综合实训方案书.docVIP

  • 0
  • 0
  • 约1.54万字
  • 约 25页
  • 2017-03-26 发布于江苏
  • 举报

多功能密码片机课程综合实训方案书.doc

多功能密码片机课程综合实训方案书

单片机课程综合实训报告 项目名称: 多功能密码锁 一. 内容要求: 预期功能 (1)在没输入密码时显示万年历,并可调、通过按键来确定输入密码,实现密码锁功能,正确输入密码后有开锁提示; 主要由单片机、矩阵键盘、独立按键、液晶显示器等部分组成。其中矩阵键盘用于输入数字密码, (2)显示模块:用于完成对系统状态显示及操作提示功能。 4.2程序设计说明 #includereg52.h #define lcd P2 #define uchar unsigned char #define uint unsigned int #define no_key 20 //无按键时的返回值 sbit rs=P3^0; sbit rw=P3^1;//lcd数据命令选择端 sbit e=P3^2;//lcd使能信号端 sbit key1=P3^3; sbit key2=P3^4; sbit key3=P3^5; sbit A=P3^6; sbit key=P3^7;//开锁信号控制端 sbit enter=P1^3;//该键按下后才能进行输入密码等操作 uchar conflag,keyflag=3; uchar jz=20;//键值变量 uchar temp1;//用此变量来存储键盘扫描的返回值,以便判断是否有键按下 uchar code table0[6]={3,0,3,0,3,0};//初始密码 uchar code table9[6]={3,1,3,1,3,1};//初始密码 uchar code table1[]=2013-05-23 w-4; uchar code table2[]= Time-00:00:00; uchar code table3[]=Enter please:; uchar code table4[]=OK!; uchar code table6[]=ERRO!; uchar code table7[]=Enter again:; uchar code table8[]=LOCKED!; uchar code table10[]=UNLOCKED!; uchar code table11[]=Cant open!; unsigned char m; uchar num,t0,keynum,hour,min,sec,year,month,day,week; uchar table5[6];//定义输入密码值存储数组 /************************************** **函数名称:delay **函数功能:软件延时,时间为z毫秒 **入口参数:z延时控制值,值越大,延时越长 **出口参数:无 ***************************************/ void delay(uint z) { uint x,y; for(x=z;x0;x--) for(y=110;y0;y--); } /************************************** **函数名称:write_com **函数功能:1602写命令函数,可以用此函数写不同的指令 **入口参数:com **出口参数:无 ***************************************/ void write_com(uchar com) { rs=0; rw=0; e=0; P2=com; delay(5); e=1; delay(5); e=0; } /************************************** **函数名称:write_date **函数功能:1602写数据函数,可以用此函数写不同的数据,程序对应的硬件1602的数据口为P2口 **入口参数:date **出口参数:无 ***************************************/ void write_date(uchar date) { rs=1; rw=0; e=0; P2=date; delay(5); e=1; delay(5); e=0; } /*显示位*/ void write_week(uchar dte) { uchar shi,ge; shi=dte/10; ge=dte%10; write_com(0x80+13); write_date(0x30+ge); } void write_clock(uchar add,

文档评论(0)

1亿VIP精品文档

相关文档