基于51单片机数字时钟课程设计论文内容摘要:
30pF 之间,对外接电容的值没有严格的要求,但电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。 由于单片机要进行串行通信,为了获得准确的波特率,选择晶振的频率为 12MHz。 图 时钟电路 10 LCD1602 的 结构及工作原理 LCD1602 可以显示 2 行 16 个字符,有 8 位数据总线 D0D7,和 RS、 R/W、EN 三个控制端口,工作电压为 5V,并且带有字符对比度调节和背光。 该模块也可以只用 D4D7 作为四位数据分两次传送。 这样的话可以节省 MCU 的 I/O口资源。 LCD1602 引脚说明 如表 所示 : 表 LCD 液晶显示器各引脚功能及结构 编号 符号 引脚说明 编号 符号 引脚说明 1 VSS 电源地 9 D2 双向数据口 2 VDD 电源正极 10 D3 双向数据口 3 VL 对比度调节 11 D4 双向数据口 4 RS 数据 /命令选择 12 D5 双向数据口 5 R/W 读 /写选择 13 D6 双向数据口 6 E 模块使能端 14 D7 双向数据口 7 D0 双向数据口 15 BLK 背光源地 8 D1 双向数据口 16 BLA 背光源正极 注意事项 : 从该模块的正面看,引脚排列从右向左为: 15 脚、 16 脚,然后才是 1- 14 脚 (线路板上已经标明 )。 VDD:电源正极, - ,通常使用 5V 电压; VL: LCD 对比度调节端,电压调节范围为 0- 5V。 接正 极 时对比度最弱,接地电源时对比度最高,但对比度过高时会产生 “鬼影 ”,因此通常使用一个 10K的电位器来调整对比度,或者直接串接一个电阻到地; RS: MCU 写入数据或者指令选择端。 MCU 要写入指令时,使 RS 为低电平; MCU 要写入数据时,使 RS 为高电平; R/W:读写控制端。 R/W 为高电平时,读取数据; R/W 为低电平时,写入数据; E: LCD 模块使能信号控制端。 写数据时,需要下降沿触发模块。 D0- D7: 8 位数据总线,三态双向。 如果 MCU 的 I/O 口资源紧张的话,该模块也可以只使用 4 位数据线 D4- D7 接口传送数据。 本充电器就是采用 4位数据传送方式; BLA: LED 背光正极。 需要 背光时, BLA 串接一个限流电阻接 VDD, BLK接地,实测该模块的背光电流为 50mA 左右; BLK: LED 背光地端。 11 LCD1602 与单片机连接如图 所示。 +5 2 3 1K 1 16 GND 6 15 5 4 图 LCD 与单片机连接图 3 系统软件设计 系统软件设计概述 该软件系统的设计主要包含 以下几个子程序模块 :初始化 程序 模块、 按键扫描 子程序 模块、 显示 程序 模块等。 通过 系统的源程序代码 能 够 实现以下功能: 、日期、星期。 系统主程序设计 程序首先进行初始化,在主程序的循环程序中首先调用数据处理程序,然后调用显示程序,再判断是否有按键按下。 若有按键按下则转到相应的功能程序执行,没有按键按下则调用 时间程序。 若没到则循环执行。 计时中断服 务程序完成秒的计时及向分钟、小时的进位和日期、星期的进位。 VDD D7 D6 VL D5 D4 D3 VSS D2 BLK D1 D0 E BLA R/W RS LCD1602 MCU 12 调时闪烁中断服务程序用于被调单元的闪烁显示。 调时程序用于调整分钟、小时;整日期的程序用于调整年、月、日;主要由 main( )组成通过对相关子程序的调用,如图 所示。 实现了对时间的设置与修改、 LCD 显示数值等主要功能。 相关的调整是靠对功能键的判断来实现的。 图 主程序流程图 4 系统调试 系统硬件调试 1)显示器部分调试为了使调试顺利进行,首先单片机与 LCD 显示分离,这样就 可以用静态方法先测试 LCD 显示,分为两个步骤:第一,对其进行初始化(即写入命令控制字,最好定义为输出方式)后;第二,将单片机与 LCD 结合起来,借助开发机,通过编制程序进行调试。 若调试通过后,就可以编制应用程序了。 2)键盘调试一般显示器调试通过后,键盘调试就比较简单,完全可以借助于显示器,利用程序进行调试。 利用开发装置对程序进行设置断点,通过断点可以检查程序在断点前后的键值变化,这样可知键盘工作是否正初始化 时钟 子程序 按键 扫描子程序 延时子程序 开 始 结束 13 常。 软件调试 软件编程环境 keil 介绍 a. Keil工程的建立 从桌面上直接双击 uVision 的图标以启动该软件。 UVison 启动后,程序窗口的左边有一个工程管理窗口,该窗口有 3 个标签,分别是 Files、 Regs、和 Books。 ( 1)源文件的建立 使用菜单 “FileNew”或者点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个新的文本 编辑 窗口,在该窗口中输入汇编语言源程序,保存该文件,注意必须加上扩展名(汇编语言源程序一般用 .asm 或 a51 为扩展名)。 ( 2)建立工程文件 点击 “ProjectNew Project”菜单,出现一个对话框,要求给将要建立的工 程起一个名字,你可以在 编辑 框中输入一个名字(设为 321),不需要扩展名。 点击 “保存 ”按钮,出现第二个对话框,如图 所示。 图 选择目标 CPU 选择 ATMEL 公司的 STC89C51 芯片。 点击 ATMEL 前面的 “+”号,点击其中的 STC89C51,然后再点击 “确定 ”按钮,回到主界面,点击工程窗口的文件页的 “Target1”,前面的 “+”号,可以看到下一层的 “Source Group1”,点击 “Source 14 Group1”使其反白显示,然后,点击鼠标右键,出现一个下拉菜单,如图 所示。 选中其中的 “Add file to Group Source Group1”,出现一个对话框,点击对话框中 “文件类型 ”后的下拉列表,找到并选中 “*.C Source File(*.C)”,这样,在列表框中就可以找到。 图 加入文件 双击 文件,将文件加入项目,然后点击 “Close”即可返回主界面,返回后,点击 “Source Group 1”前的加号,会发现 文件已在其中。 双击文件名,即打开该源程序。 b. 工程的 详细设置 工程建立好以后,还要对工程进行进一步的设置,以满足要求。 首先点击左边 Project 窗口的 Target 1,然后使用菜单 “ProjectOption for target„target1‟”即出现对工程设置的对话框,这个对话框可谓非常复杂,共有 8个页面,要全部搞清可不容易,好在绝大部份设置项取默认值就行了。 设置对话框中的 Target 页面,如图 所示。 图 对目标进行设置 Xtal后面的数值是晶振频率值,默认值是所选目标 CPU的最高可用频率值, 15 一般将其设置成与你的硬件 所用晶振频率相同,如果没必要了解程序执行的时间,也可以不设,这里设置为 12MHZ。 设置对话框中的 Out Put 页面,如图 所示,这里面也有多个选择项,其中 Creat Hex file 用于生成可执行代码文件(可以用编程器写入单片机芯片的HEX 格式文件,文件的扩展名为 .HEX),默认情况下该项未被选中,如果要写片做硬件实验,就必须选中该项。 其余均保持默认情况,设置完成后按确认返回主界面,工程文件建立、设置完毕。 图 对输出进行控制 c. 编译、连接 在设置好工程后,即可进行编译、连接。 选择菜单 ProjectBuild target,对当前工程进行连接。基于51单片机数字时钟课程设计论文
相关推荐
程;栏目 3 品牌风格诠释。 ) → 公告栏:展示学校的最新活动与通告。 → 新闻动态:展示学校的学校新闻与国内外同行咨询等。 → 项目培训:主要概括学校的培训服务与培训科目以及优惠套餐。 → 招生简章:主要展示学校的招生情况与历来招生的生源、招生对象等等。 → 课程安排: 主要概述学校的课程安排流程与课程优惠价格套餐等等。 → 教学资料:展示教
开机时的界面。 当在输入数字时,不小心输入数字错误,可以按下菜单键“ F”,返回到初始将要输入数字的状态。 本机设置了密码保护功能, 当输入三次密码不正确后,密码锁锁死,不能再开锁,同时蜂鸣器发出响声警告。 只有在复位情况下或断电关机后重新开机才可以输入密码、开锁或设置密码。 当输入密码错误的时,显示出密码错误提示, 发光二极管亮,蜂鸣器发出长警告声,系统自动返回输入密码状态后,红色发光二极管灭
ad_byte() { RST=1。 for(i=8。 i0。 i) { ACC7=IO。 SCLK=1。 SCLK=0。 ACC=ACC1。 } return(ACC)。 } void write_1302(uchar add,uchar dat) { RST=0。 SCLK=0。 RST=1。 write_byte(add)。 write_byte(dat)。 SCLK=1。 RST=0。
当加强广告的宣传力度,适当在报纸、电视等媒体进行品牌、招生宣传,进一步提高学校的知名度,获得更多的生源,谋求发展。 人事管理制度上,要采取措施调动人员工作的积极性,要客观、公正的对待每一位教师及员工,对于一些小思想、小报告不能偏听偏信,坚持以人的能力为主,以积极的工作态度为主。 虽然有时一些工作人员有这样或那样的错误,但是管理人员可用正 面的积极引导,帮助他们解决问题