1、1 目录目录 设计功能要求 2 方案分析选择与系统框图 . 3 模块功能分析 5 仿真下载结果 8 主要经验 . 9 操作指南 . 10 相关代码 . 11 2 设计功能要求设计功能要求 一一.设计任务设计任务 数字钟不仅可以通过数字直观地显示日历,时间,用音乐及语言报时,还可以定时发出各 种声,光,电信号,以及启动各种设备实现实时控制,时间顺序控制.如作息时间自动打铃,家电设 备自动定时启动/停止,生产过程顺序控制等,用途很广.本课题的要求是: 1/设计一个具有时,分,秒计时,6 位数字显示的时钟电路. 2/具有快速校准时,分的校时功能. 3/具有仿电台的自动整点报时功能或者发出与整点数目相
2、等的音响声. 4/具有一定的扩展功能 二二.设计要求设计要求 1/分析设计任务,拟定多种设计方案,根据当时的制作条件选择其中一种方案绘制系统框 图和设计流程. 2/设计各部分单元电路或编写 VHDL描述程序,计算元器件参数,确定元器件型号和数量, 提出元件清单. 3/安装调试硬件电路或制作 CPLD/FPGA 为基础的专用集成芯片 ASIC. 4/对制作的电路进行功能测试,分析各项技术指标,或对 VHDL 描述进行功能仿真,对 ASIC 作硬件测试或脱机运行. 5/总结设计各环节的资料,整理打印出设计报告(含原理电路,仿真波形).交验并演示设计 制作的电路装置. 3 方案分析选择与系统框图方案
3、分析选择与系统框图 方案分析选择方案分析选择 1/使用的是开发板,故选择编写VHDL描述程序,并结合AltiumDesigner中提供的元件绘制原 理图,下载到开发板上. 2/开发板上的资源包括:LCD 显示屏,蜂鸣器,键盘,拨盘开关,各种频率的方波信号,各种对 外接口,LED 灯等. 根据板上资源和需要实现的功能,我选择了使用以下板上资源,并实现以下功能: LCD 显示屏-用于显示时分秒计时 蜂鸣器-用于整点报时与闹铃功能 拨盘开关-用于时间设定,闹铃设定与声音开关 方波信号-经过分频后作为时钟信号输入和蜂鸣器发声 系统原理框图系统原理框图 时钟显示模块 LCD 显示屏 计时模块计时模块 存
4、 储 器 模块 控制模块 拨盘开关 信 号 发 生 声音模块 蜂鸣器 整点报时 模块 4 硬件原理图硬件原理图 5 模块功能分析模块功能分析 计时模块计时模块 计时模块具有时,分,秒的计时功能,每收到一个时钟信号,秒个位计算加一,在各个位加满时,重 新置零,并向下一位进一.同时,输出端口会把秒个位,秒十位,分个位,分十位,时个位,时十位的 8 位数字信号输出到各个模块. 显示模块显示模块 6 LCD 显示模块需要将显示代码与位置代码输入控制模块并给与脉冲,就会在相应的位置显示 相应的字符,为了使得显示没有滞后,因此给较高的脉冲频率.因为我们要显示时分秒一共6位 数字,因此需要写一个 LCD 扫
5、描输出模块,时刻显示变化的时间. LCD 扫描输出需要把计时模 块输出的 8 位 BCD 码加上 48 转化为 ASC2 码.并且在时分秒之间加入冒号区分. 存储器模块存储器模块 存储器模块的地址信号为计时模块的分个位,分十位,时个位,时十位有效位,写入的信号由拨 盘开关sw4控制,输出的信号到声音模块的使能.写入开关由拨盘开关sw3控制.在需要闹铃的 时间写入一,那么就会读出一,对声音模块使能,使其发声. 整点报时模块整点报时模块 7 整点报时模块的输入取上图的几个关键数据,当这些数据都为 1 时,此时为整点报时的时间, 则对声音模块使能,使其发声. 声音模块声音模块 声音模块包括音调选择以
6、及开关整点报时与闹铃的模块.用来实现不同的要求与功能. 8 仿真仿真下载结果下载结果 计时模块仿真图计时模块仿真图 下载结果下载结果 第一次下载的时候,因为很多地方都不知道,不是没接好线就是没有改名字,造成编译正 常但是无法下载的结果.后来通过自己的摸索与请教他人,终于实现了下载.但是下载后又发 现了许多意想不到的错误.用了很长的时间,我才把这些都弄清楚并且解决掉.最后终于实现 了自己的预定功能. 9 主要经验主要经验 在电子技术课程设计之前,我先做了单片机课程设计.做单片机课程设计的时候,是一边 拿着板子一边不断下载测试,一点点完善程序的,但是当我做电子技术课程设计时,因为板子 不在身边,所以自己在寝室写的程序无法验证.因此在这些地方浪费了很多时间,直到我在实 验室待了两天时间,才把问题解决掉.所以我明白,做这种设计,必须不断的实践测试,才能知道 自己不足在哪里,才知道设计有什么不完善的地方.无论做什么事,如果你手边有实验的条件, 那么做什么事,学习什么东西都可以事半功倍. 还有,经验很重要.如果是一开始什么都没有做过,那么各种各样的问题会接踵而来,而且 你