电子技术课程设计可编程时钟控制器.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电子技术课程设计可编程时钟控制器

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

文档评论(0)

huayagonga + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档