版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 电电子系子系统设计统设计 报报告告 设计题目: 电子钟功能设计 专业班级: 09 电子信息工程 2 班 学生姓名: 董鹏帅 学生学号: 指导教师: 王清辉 完成时间: 2012.06.11 报告成绩: 评阅意见: 评阅教师 日期 摘摘 要要 单片机就是微控制器,是面向应用对象设计、突出控制功能的芯片。单片 机接上晶振、复位电路和相应的接口电路,装载软件后就可以构成单片机应用 系统。将它嵌入到形形色色的应用系统中,就构成了众多产品、设备的智能化 核心。本设计就是应用单片机强大的控制功能制作而成的电子钟。 基础功能有:设置闹钟;调整时间等。 经测试,各项性能指标均超过设计任务要求并有适当扩展。
2、扩展功能有:开机倒计时;密码输入;密码验证;相关信息提示;功能菜 单; 串行通讯等。 本作品完全由本人独立自主设计、制作完成。 关键词:单片机;系统;电子钟;基础功能;扩展功能;独立自主 摘摘 要要 .1 1 第一章第一章 设计任务与要求设计任务与要求 .3 3 (一).基本任务要求 .3 (二).实现的功能 .4 (三).扩展功能 .4 第二章第二章 方案设计与论证方案设计与论证 .4 4 (一).液晶显示模块 .5 (二).实时时间计算模块 .6 (三).STC89C52 单片机介绍.6 (四).报警模块 .9 (五).设置模块 .9 (六).实时环境温度采集模块 .9 第三章第三章 硬件
3、电路设计硬件电路设计 .1010 (一) 电路总框图 .11 (二) 各功能模块说明 .11 1上电按钮复位电路 .11 2晶振电路 .12 3.下载端口 .12 4显示电路 .13 5按键电路 .13 6、蜂鸣器电路 .14 (三) 元件清单 .14 第四章第四章 软件设计软件设计 .1515 (一)端口连接及主程序设计 .15 第五章第五章 仿真过程与仿真结果仿真过程与仿真结果 .1818 第六章第六章 安装与调试安装与调试 .2121 (一)实物图 .21 (二) 调试结果 .22 第七章第七章 结论与心得结论与心得 .2626 参考文献参考文献 .2727 附录附录部分源程序:部分源程
4、序: .28 第一章 设计任务与要求 (一).基本任务要求: 用 STC89C52 单片机及接口电路设计一个电子时钟。 系统硬件设计:根据任务要求,完成单片机最小系统及扩展设计,组成功能 完整的系统 系统软件设计:根据电子钟的功能,完成控制软件的编写与调试,并对显示 IC 进行控制。 (二).实现的功能: 具有小时分秒时间显示。 能够设置闹钟至少 5 次闹钟时间。 可利用按键修改时间,具有上午下午的提示信息。 (三).扩展功能: 增加系统初始化显示功能,开机倒计时; 增加密码功能,要求正确输入四位密码才能进入系统; 进入系统后显示菜单,有相应的功能模块选择:F1 修改时间功能,F2 设置闹 钟
5、功能,F3 修改密码功能; 具有串行通讯功能,能够通过串口与 PC 机通讯,每 1 秒钟可以将本选定功 能相关的数据上传; 返回主菜单。 第二章 方案设计与论证 单片机就是微控制器,是面向应用对象设计、突出控制功能的芯片。单片 机接上晶振、复位电路和相应的接口电路,装载软件后就可以构成单片机应用 系统。将它嵌入到形形色色的应用系统中,就构成了众多产品、设备的智能化 核心。本设计就是应用单片机强大的控制功能制作而成的电子钟。 本设计均采用的是 STC89C52 单片机,该单片机采用的 MCU51 内核,因此具 有很好的兼容性,内部带有 8KB 的 ROM,能够存储大量的程序。. 图 2.1 单片
6、机最小系统框图 (一).液晶显示模块 方案(1):数码管是利用发光二极管的特性组合而成数字显示器件,通过控制 相应的二极管的状态显示相应的数字。要使数码管正常显示就得有驱动电路驱 动相应的段码,数码管的现实方式可分为静态显示和动态显示,静态显示方式 只适合显示单个的数字,因此本设计应采用动态显示方式。 方案(2):1602 液晶又名 1602 字符型液晶 它是一种专门用来显示字母、数 字、符号等的点阵型液晶模块 它有若干个 5X7 或者 5X11 等点阵字符位组成, 每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间 也有也有间隔,起到了字符间距和行间距的作用。1602 的驱
7、动电路带有 11 条 指令,可以很方便的控制液晶的现实效果如:清屏、左移右移、光标显示。 外围电路外围电路 电源电路电源电路 M C U 显示电路显示电路 键盘电路键盘电路 由于数码管动态显示方式利用的是人眼视觉暂留的特性,扫描的时间应不 大于 20 毫秒,占用系统资源大,而且显示的个数和字型有限,在本设计中不易 采用。而 1602 显示的字符在下一条指令为到来之前不会改变,也就是能够维持 显示的字符,1602 液晶占用的系统资源也少。 综合比较上述两种方案,应采用 1602 液晶组成本设计的显示模块。 (二).实时时间计算模块 方案(1):STC89C52 单片机内部带有定时/计数功能,此定
8、时功能是通过对外 部晶振的脉冲进行计数,从而达到计时功能,只要使用 11.0592 的晶振就能实 现零误差的计时,因此可以利用此功能实现计时。 方案(2):DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗的实时时钟 芯片,附加 31 字节静态 RAM,采用 SPI 三线接口与 CPU 进行通信,并可采用突 发方式一次传送多个字节的时钟信号和 RAM 数据。实时时钟可提供秒、分、时、 日、星期、月和年,一个月小与 31 天时可以自动调整,且具有闰年补偿功能。 工作电压宽达 2.55.5V。采用双电源供电(主电源和备用电源) ,可设置备用 电源充电方式,提供了对后备电源进行涓细电流
9、充电的能力。利用单片机强大 的控制功能就可实现实时计时的功能,而且消耗的系统资源少,程序简单。 但因为 STC89C52 单片机内部带有定时/计数功能只有单一的计时功能要实 现“万年历”的功能需要较复杂的程序,而且如果单片机掉电无法继续进行计 时,所以使用不便。DS1302 采用双电源供电(主电源和备用电源) ,可设置备 用电源充电方式,提供了对后备电源进行涓细电流充电的能力。利用单片机强 大的控制功能就可实现实时计时的功能,而且消耗的系统资源少,程序简单。 综合上述两种方案,宜采用方案(2)实现实时计时功能。 (三).STC89C52 单片机介绍 STC89C52 单片机内部主要包括累加器
10、ACC(有时也简称为 A)、程序状态字 PSW、地址指示器 DPTR、只读存储器 ROM、随机存取存储器 RAM、寄存器、并行 I/O 接口 P0P3、定时器/计数器、串行 I/O 接口以及定时控制逻辑电路等。这 些部件通过内部总线联接起来,构成一个完整的微型计算机。其管脚图如图所 示。 图2.2 STC89C52单片机管脚结构 VCC:电源。 GND:接地。 P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。 当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程 序数据 存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程
11、时,P0 口作为原 码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。 P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能 接收输出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作 输入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收, 输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻 拉高,且 作为输入。并因此作为输
12、入时,P2 口的管脚被外部拉低,将输出电流。这是由 于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存 储器 进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉 优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器 的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的 缘
13、故。 P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0(记时器 0 外部输入) P3.5 T1(记时器 1 外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电 平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存
14、地址 的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端 以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用 作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存 储器 时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被 略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。 PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个 机器周期两次/PSEN 有效。但在访问外部数据存储
15、器时,这两次有效的/PSEN 信 号将不出现。 EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储(0000H-FFFFH) , 不管是否有内部程序存储器。注意加密方式 1 时, /EA 将内部锁定为 RESET; 当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也 用于施加 12V 编程电源(VPP) 。 (四).报警模块 此模块采用无源蜂鸣器实现,只要编写相应的程序即可实现发出不同频率的 声音。 (五).设置模块 因设置模块只需编写相应的程序外加相应的按键即可实现,实现方法较简单, 在此不再论述。 (六).实时环境温度采集模块 方案(1):热敏电阻是
16、开发早、种类多、发展较成熟的敏感元器件热敏电 阻由半导体陶瓷材料组成,利用的原理是温度引起电阻变化 通过一定的电路可以将周围环境的温度变化转化成电压的变化,通过AD 转化器件将信号传输给单片机进行分析,从而测出当前环境温度,但误差大 ,不稳定,对环境要求较高。 方案(2):DS18B20 是美国 DALLAS 公司生产的数字温度传感器, 采用单 总线的接口方式与微处理器连接时仅需要一条口线即可实现微处理器与DS 18B20 的双向通讯。 单总线具有经济性好,抗干扰能力强,适合于恶劣环 境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络,为 测量系统的构建引入全新概念 。测量温度范围
17、宽,测量精度高 ,在使用中 不需要任何外围元件,支持多点组网功能 多个 DS18B20 可以并联在惟一 的单线上,实现多点测温,供电方式灵活 DS18B20 可以通过内部寄生电路 从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不 接外部电源,从而使系统结构更趋简单,可靠性更高。因此非常适合本系统 使用。 综上比较上述两种方案,宜采用方案( 2)构成本设计的实时温度采集模块 。 第三章 硬件电路设计 图 3.1 Protel 原理图 由以上原理图可以很清晰地看出其结构,它是由 5 部分组成:单片机最小 系统,DS1302,DS18B20,LCD1602,BEEP 等。 图 3.
18、2 Protel PCB 图 (一) 电路总框图: 图 3.3 电路总框 (二) 各功能模块说明: 1上电按钮复位电路: 图 3.4 上电按钮复位电路 本设计采用上电按钮复位电路:首先经过上电复位,当按下按键时,RST 直接与 VCC 相连,为高电平形成复位,同时电解电容被电路放电;按键松开时, VCC 对电容充电,充电电流在电阻上,RST 依然为高电平,仍然是复位,充电完 成后,电容相当于开路,RST 为低电平,单片机芯片正常工作。其中电阻 R2 决 定了电容充电的时间,R2 越大则充电时间长,复位信号从 VCC 回落到 0V 的时 间也长。 2晶振电路: 图 3.5 晶振电路 本设计晶振电
19、路采用 12M 的晶振。晶振的作用是给单片机正常工作提供稳 定的时钟信号。单片机的晶振并不是只能用 12M,只要不超过 20M 就行,在准 许的范围内,晶振越大,单片机运行越快,还有用 12M 的就是好算时间,因为 一个机器周期为 1/12 时钟周期,所以这样用 12M 的话,一个时钟周期为 12us,那么定时器计一次数就是 1us 了,电容范围在 20-40pF 之间,这里连接 的是 30pF 的电容。 3.下载端口: 图 3.6 下载端口 设计用到的 STC89C52 单片机芯片的 ISP 下载线是通过单片机的 TXD,RXD 引脚把程序烧进去的。管脚 TXD 和 RXD 用于异步串行通信
20、。其实 STC89C52 单片 机的 ISP 下载线就是一个 max232 芯片连接 STC 和计算机的串行通信口。计算机 把程序从九针串口送到 max232 芯片,电平转换后送进单片机的串行口,也就是 TXD 和 RXD。然后单片机的串行模块把数据送到程序区。 4显示电路: 本设计采用 LCD1602 液晶显示模块,具有很低的功耗,正常工作室电流仅 2.0mA/5.0V。通过编程实现总动关闭屏幕能够更有效地降低功耗。 图 3.7 显示电路 5按键电路: 按键的开关状态通过一定的电路转换为高、低电平状态。按键闭合过程在 相应的 I/O 端口形成一个负脉冲。闭合和释放过程都要经过一定的过程才能达
21、 到稳定,这一过程是处于高、低电平之间的一种不稳定状态,称为抖动。抖动 持续时间的常长短与开关的机械特性有关,一般在 5-10ms 之间。为了避免 CPU 多次处理按键的一次闭合,应采用措施消除抖动。本文采用的是独立式按键, 直接用 I/O 口线构成单个按键电路,每个按键占用一条 I/O 口线,每个按键的 工作状态不会产生互相影响 。 图 3.8 按键电路 6、蜂鸣器电路: 图 3.9 蜂鸣器电路 (三) 元件清单: 名称参数数量 STC89C521 LCD16021 晶振12MHZ , 32.768KHZ各 2 个 排阻10K*81 排针2 排 排母1 排 电容30Pf(瓷片电容)6 10u
22、f,22uf1 电阻200 欧,18 欧,10 欧各一个 10K5 变阻器10K1 DS1302,DS18B20各一个 PNP 三极管90121 蜂鸣器1 按键5 底座DIP-40,DIP-8, DIP-20各 2 个 第四章 软件设计 软件设计是本设计的关键,软件程序编写的好坏直接影响着系统运行情况 的良好。因本程序涉及的模块较多,所以程序编写也采用模块化设计,C 语言 具有编写灵活、移植方便、便于模块化设计的特点,所以本系统的软件采用 C51 编写。 程序框图如下: (一)端口连接及主程序设计 1 写好程序头,根据硬件的连接定义好各个端口和各个地址区间。 2 设计主程序,主程序分为以下及部
23、分: (1)主程序开始部分 (2)按键扫描 (3)各按键功能选择 (4)闹钟部分 (5)显示部分 3.主程序模块 主程序主要用于系统初始化:设置计时缓冲区的位置及初值等。 主程序流程如下图所示。 是 开始 倒计时 验证密码是否正 确 输入密 码 1602 液晶显示相关信息,可以调节时 间,并设置闹钟,可以显示功能菜单 通过 KEIL3 软件显示串行通 信 按键 3 是否有按 下 欢迎界面,显示年、月、 日,星期,北京时间 按键 2 是否有按 下 返回 是 是 否 否 否 图 4.1 主流程图 4.时间设置模块 该模块由键盘输入相应的数据来设置当前时间。程序通过调用一个键盘设置 子程序通过键盘扫
24、描将键入的 6 位时间值送入显示缓冲区。 设置时间后,时钟要从这个时间开始计时,而时分秒单元各占一个字节,键 盘占 6 个字节。因此程序中要调用一个合字子程序将显示缓冲区中的 6 位 BCD 码合并为 3 位压缩 BCD 码,并送入计时缓冲区,作为当前计时起始时间。 该程序同时要检测输入时间值的合法性,若键盘输入的小时值大于 23,分、 秒值大于 59,则不合法,将取消本次设置,清零重新开始计时。 时间设置和键盘设置子程序的流程图如下图所示。 调用键盘设置子程序 KETIN 调用合字子程序 COMB 恢复现场 图 4.2 时间设置流程 显示缓冲区首地址送 R0 键盘输入次数送 R7 调用键盘扫
25、描程序 KEYSCAN 键号送 显示缓冲区地址加 1 循环次数减 1 否 循环结束? 是 恢复现场 图 4.3 键盘设置子程序流程图 第五章 仿真过程与仿真结果 现场保护 现场保护 返回 系统仿真分析电路原理图在 ISIS 里设计完成,并将系统软件编译成.Hex 文件,再进行电子时钟的系统虚拟仿真 。 实现功能: 当进入调整功能时,按第一个键 K1 进行减运算,按第二个键 K2 进行加运 算。 按下第三个键 K3,实现日期时间调整及定时功能,等数字闪烁后,按一 二键进行加减,从而可以进行具体日期时间调整。 当定时设定后,到预定时间后,蜂蜜器将响起 按下第四个键 K4,可以进行时间日期切换,8
26、位 LED 数码管将显示时间或 日期,采用 24 小时制。 时间显示格式为:时-分-秒;日期显示格式为:日-月-年。 具有实时显示当前计算机系统时间和日期的功能。 图 5.1 PROTEUS 仿真原理图 系统硬件仿真运行情况图 图 5.2 显示欢迎界面 图 5.3 显示实时时间 图 5.4 时间设置 图 5.5 闹钟时间设置 第六章 安装与调试 (一)实物图: 图 6.1 电子钟实物图 1. 硬盘调试 电路板制成后,首先要检查加工质量,并确保没有任何方面的错误,如短 路和断路,尤其要避免电源短路;元器件在安装前要逐一检查,用万用表测其 数值,看是否与所用相同;若一切正常,方可在断电的情况下将芯
27、片插入,再 次检查各引脚的电位及其逻辑关系。将万用表的探针放到单片机接电源的引脚 上检测一下,看是否符合要求。 2.系统性能测试与功能说明 走时:默认为走时状态,按 24 小时制分别显示“时时-分分-秒秒”,有 2 个“-”动态显示,时间会按实际时间以秒为最少单位变化。 走时调整:按 ksec 对秒进行调整,按一下加一秒;按 kmin 对分进行调整, 按一下加一分;按 khour 对时进行调整,按一下加一小时,从而达到快速设定 时间的目的。 3 系统时钟误差分析 时间是一个基本物理量,具有连续、自动流逝、不重复等特性。我国时间 基准来自国家授时中心,人们日常使用的时钟就是以一定的精度与该基准保
28、持 同步的。结合时间概念和误差理论,可以定义电子钟的走时误差 S=S1-S2,S1 表 示程序实际运行计算所得的秒;S2 表示客观时间的标准秒。S0 时表示电子钟 秒单元数值刷新滞后,即走时误差为“慢”;反之,S0;) i-; write_com(0 xc0+8); write_date(0 x30+i); delay(700); /*更改密码子函数*/ void setcipher()/ uchar save=1,mynum=1,mynum2=1,mynum4=0,mynum5=1,mynum6=1,a1=1,a2=1,a3=1,a4= 1; int mys1=0; if(s4=0) /加
29、delay(5); if(s4=0) while(!s4) myt+; delay(25); if(myt=50) break; if(myt20) beep(beeptime); write_com(0 x0c); write_com(0 x01); write_com(0 x80); word(0, Set you ); write_com(0 x80+0 x40); /从第二行开始写 word(0,Password: ); write_com(0 x80+0 x40+9); write_date(u1); write_com(0 x80+0 x40+10); write_date(u2)
30、; write_com(0 x80+0 x40+11); write_date(u3); write_com(0 x80+0 x40+12); write_date(u4); write_com(0 x0f); /开光标 while(1) /写入 if(count=10) /更新时间 count=0; if(mynum5=0) mynum5=1; else mynum5=0; if(mynum5=1) miao+; if(miao=59) fen+; /写冒号 write_com(0 x0c);/光标设置 switch(mynum4) case 0: write_com(0 x80+9);wo
31、rd(9, );break; case 1: write_com(0 x80+9);word(9,.);break; case 2: write_com(0 x80+10);word(10,.);break; case 3: write_com(0 x80+11);word(11,.);break; case 4: write_com(0 x80+12);word(12,.);break; case 5: write_com(0 x80+13);word(13,.);break; write_com(0 x0f); write_com(0 xc9+mys1); mynum4+; if(mynu
32、m45) mynum4=0; if(s1=0) /加 delay(5); if(s1=0) while(!s1) ; beep(beeptime); delay(5); mys1+; mynum=1; mynum2=1; if(mys1=4) write_com(0 x01);/显示清屏 write_com(0 x0c); write_com(0 x80);/从第一行开始写 word(0, Successfully!); write_com(0 x80+0 x40);/从第二行开 始写 word(0, Saved!_); delay(700); myt=0; sectorerase(0 x20
33、00);byte_write(0 x2000,u1); sectorerase(0 x2200);byte_write(0 x2200,u2); sectorerase(0 x2400);byte_write(0 x2400,u3); sectorerase(0 x2800);byte_write(0 x2800,u4); sectorerase(0 x2A00);byte_write(0 x2A00,me); break; if(mys1=4) mys1=0; if(s2=0) /加 delay(5); if(s2=0) while(!s2) ; beep(beeptime); mynum=
34、1; switch(mys1) case 0: u1+;a1=1;break; case 1: u2+;a2=1;break; case 2: u3+;a3=1;break; case 3: u4+;a4=1;break; if(s3=0) /减 delay(5); if(s3=0) while(!s3) ; beep(beeptime); mynum=1; switch(mys1) case 0: u1-;a1=1;break; case 1: u2-;a2=1;break; case 2: u3-;a3=1;break; case 3: u4-;a4=1;break; if(s4=0) /
35、取消 delay(5); if(s4=0) myt=0; while(!s4) myt+; delay(25); if(myt=50) break; if(myt50) beep(beeptime); mys1-; mynum=1; mynum2=1; if(mys1=10)/限制在 0 到 9 u1=0; if(u1=10) u2=0; if(u2=10) u3=0; if(u3=10) u4=0; if(u40) /有按键才运行,加减数字 if(mys1=0|a1=0) write_com(0 x80+0 x40+9);/从第二行开始写 write_date(0 x30+u1); else
36、 write_com(0 x80+0 x40+9); write_date(*); if(mys1=1|a2=0) write_com(0 x80+0 x40+10); write_date(0 x30+u2); else write_com(0 x80+0 x40+10); write_date(*); if(mys1=2|a3=0) write_com(0 x80+0 x40+11); write_date(0 x30+u3); else write_com(0 x80+0 x40+11); write_date(*); if(mys1=3|a4=0) write_com(0 x80+0
37、x40+12); write_date(0 x30+u4); else write_com(0 x80+0 x40+12); write_date(*); mynum-; write_com(0 xc9+mys1); if(mynum2=1) /按键 s1 改变执行一次 write_com(0 x0f); write_com(0 xc9+mys1); mynum2=0; /guangbiaoweizhi myupdate();shuaxin=0;s1num=0;csnum=0;myt=0; /*输入密码*/ void cipher()/ uchar mynum=1,mynum2=1,mynum
38、4=0,a1,a2,a3,a4; int m1=0,m2=0,m3=0,m4=0,m5=0,mys1=0; write_com(0 x38);/显示模式设置 write_com(0 x0c);/光标设置 write_com(0 x06);/光标指针设置 write_com(0 x01);/显示清屏 write_com(0 x80);/从第一行开始写 word(0,Please enter your); write_com(0 x80+0 x40);/从第二行开始写 word(0,Password:); write_com(0 x40); for(mynum4=0;mynum4=10) coun
39、t=0; write_com(0 x0c);/光标设置 switch(mynum4) case 0: write_com(0 x84);write_date(0 x00); write_com(0 x85);write_date(0 x00); write_com(0 x87);write_date(0 x00); write_com(0 x8b);write_date(0 x00); write_com(0 x82);write_date(.); write_com(0 x8d);write_date(.); break; case 1: break; case 2: write_com(0
40、 x84);write_date(0 x00); write_com(0 x85);write_date(0 x00); write_com(0 x87);write_date(0 x00); write_com(0 x81);write_date(.); write_com(0 x8e);write_date(.); break; case 3: break; case 4: write_com(0 x84);write_date(0 x00); write_com(0 x85);write_date(0 x00); write_com(0 x87);write_date(0 x00); w
41、rite_com(0 x80);write_date(.); write_com(0 x8f);write_date(.); break; case 5: break; case 6: write_com(0 x84);write_date(0 x00); write_com(0 x85);write_date(0 x00); write_com(0 x87);write_date(0 x00); write_com(0 x80);word(0, ); write_com(0 x8d);word(13, ); break; write_com(0 x0f); write_com(0 xc9+m
42、ys1); mynum4+; if(mynum46) mynum4=0; if(s1=0) /加 delay(5); if(s1=0) while(!s1) ; beep(beeptime); delay(5); mys1+; mynum=1; mynum2=1; if(m1=u1 /密码正确跳出 if(mys1=4) write_com(0 x01);/显示清屏 write_com(0 x0c); write_com(0 x80);/从第一行开始写 word(0, Unfortunately!); write_com(0 x80+0 x40);/从第二行开始写 word(0, error!+
43、_+); delay(700); write_com(0 x01);/显示清屏 write_com(0 x83);word(3,xiaoyan); write_com(0 x80+0 x40);/从第二行开始写 word(0,password:); write_com(0 x80+0 x40+9); write_date(m1); write_com(0 x80+0 x40+10); write_date(m2); write_com(0 x80+0 x40+11); write_date(m3); write_com(0 x80+0 x40+12); write_date(m4); mynum=1; mynum4=0; if(mys1=4) mys1=0; if(s2=0) /加 delay(5); if(s2=0) while(!s2) ; beep(beeptime);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年文旅营销生产排程优化合同
- 村委换届选举工作制度
- 预警预测预防工作制度
- 领导包保单位工作制度
- 领导应急值守工作制度
- 黄土地上农业工作制度
- 平凉地区庄浪县2025-2026学年第二学期四年级语文第七单元测试卷(部编版含答案)
- 东营市垦利县2025-2026学年第二学期三年级语文第八单元测试卷(部编版含答案)
- 青岛市市南区2025-2026学年第二学期三年级语文第八单元测试卷(部编版含答案)
- 酒泉地区阿克塞哈萨克族自治县2025-2026学年第二学期三年级语文第八单元测试卷(部编版含答案)
- 2026年1月浙江省高考(首考)化学试题(含标准答案及解析)
- 生成式AI在小学美术教学中的创新教学策略研究教学研究课题报告
- 邮政扫黄打非培训课件
- 《2025年美国甲状腺协会(ATA)成人分化型甲状腺癌管理指南》双语对照版
- 肺动脉CTA检查课件
- 产后盆底功能障碍的康复治疗进展
- 医学执行功能障碍和脑小血管病培训课件
- 仓储公司防汛知识培训课件
- 初级安全员考试模拟题库及答案解析
- 体检科普及知识培训内容课件
- 索尼相机DSC-WX350中文使用说明书
评论
0/150
提交评论