数字电子计数器课程设计论文正稿_第1页
数字电子计数器课程设计论文正稿_第2页
免费预览已结束,剩余26页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.专业整理. .学习帮手. 目录 绪论 . 2 一 微机原理与接口技术课程设计任务书(二) . 4. 1.1 .课程设计任务 . .4. 1.2 课程设计目的 1.3 课程设计要求 . .4. . 1.4.课程设计内容 . 5 . 三 Protues 仿真图及相应部分工作原理 3.1总的仿真图 3.2显示部分 . 8 . 3.3按键部分 . 1.0 . 3.4计数报警部分 . 1.1. 四.程序清单及流程图 . 1.2 .4. 1.5 .课程设计报告要求 . 5 . -二 设计方: . 6 . .7. 4.1.电子器件清单 . 12 . .专业整理. .学习帮手. 4.2.程序流程图 .1.3

2、. 五.调试、运行及其结果 .14. 六.课程设计的心得体会 . 16 . .专业整理. .学习帮手. . 18 . 绪论 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越 来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的 焦点之一。厂商为了在竞争中处于不败之地 ,从而不断地改进技术,增加产品的 种类。 现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机 械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器 等。计数器的应用范围也遍布各个行业。 从单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大 规

3、模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更 具个性的发展趋势。单片机的应用在后 PC 时代得到了前所未有的发展,但对处理 器的综合性能要求也越来越高。综观单片附录 . 1.9 . .专业整理. .学习帮手. 机的发展,以应用需求为目标,市场越 来越细化,充分突出以 单片”解决问题,而不像多年前以MCS51/96 等处理器为中 心,外扩各种接口构成各种应用系统 。单片机系统作为嵌入式系统的一部分 ,主 要集中在中、低端应用领域(嵌入式高端应用主要由 DSP、ARM、MIPS 等高性能 处理器构成),在这些应用中,目前也出现了一些新的需求,主要体现在以下几 个方面: (1

4、) 以电池供电的应用越来越多,而且由于产品体积的限制,很多是用钮扣 电池供电,要求系统功耗尽可能低,如手持式仪表、水表、玩具等。 (2) 随着应用的复杂,对处理器的功能和性能要求不断提高 。既要外设丰 富、功能灵活,又要有一定的运算能力,能做一些实时算法,而不仅仅做一些简 单的控制。 (3) 产品更新速度快,开发时间短,希望开发工具简单、廉价、功能完善。 特别是仿真工具要有延续性,能适应多种 MCU,以免重复投资,增加开发费用。 (4) 产品性能稳定,可靠性高,既能加密保护,又能方便升级。.专业整理. .学习帮手. 一.微机原理与接口技术 课程设计任务书(二) 题目:电子计数器 1.1 .课程

5、设计任务 本课题要求应用以 51 单片机为核心设计电子计数器,能设置起始数值,通过 加、减键实现计数功能,设计复位按钮。数字通过数码管显示,计数结束发出警 报。 1.2 .课程设计目的 通过本次课程设计使学生掌握: 1) 掌握以单片机为核心的控制系统的分析和 设计的基本方法;2)控制程序的设计及实现方法;3)提高学生对单片机实时控 制系统的设计和调试能力。 1.3 .课程设计要求 开机后,设置计数器的初始值,通过加、减键实现向下,或向上计数,通过数码管显示结 果,计数结束发出警 (可播放一段音乐),暂停按钮,按下暂停按钮,停止计数,再按下暂停 按钮,开始计数。并设置有复位按钮,回到初始状态 1

6、4 课程设计内容 1、计数程序;显示程序; 2、 按键,中断程序; .专业整理. .学习帮手. 3、 硬件电路原理图、软件清单 1.5.课程设计报告要求 报告中提供如下内容: 1、 目录 2、 正文 (1) 课程设计任务书; (2) 总体设计方案 (3) 电子计数器部分,要有操作使用说明,以便用户能够正确使用本产品; (4) 硬件原理图,以便厂家生成产(可手画也可用 protel 软件); (5) 程序流程图及清单(子程序不提供清单,但应列表反映每一个子程序的 名称及其功能); (6) 调试、运行及其结果; 3、 收获、体会 4、 参考文献.专业整理. .学习帮手. 设计方案: 本设计为累加计

7、数的专用计数器,应用 AT89C51 芯片作为核心,8 位的 LED 数管显示。这种实现方法的优点是电路简单,性能可靠,实时性强,操作简单, 编程容易。 图 1.原理框图 本设计的电子计数器的重要功能为: 1. 通过 up 和 down 按键设定计数预置值 2. 通过 stop 键开始进入计数。 3. 按下计数按键开始逐次累加计数。 4. 累加至预定值报警播放一段音乐。 5. 音乐结束后按两次 stop 键可以继续计数 6. 按 rset 键复位,重新开始循环。按键输入 . 单片机 数码管显示 报警器 .专业整理. .学习帮手. 三. Protues仿真图及相应部分工作原理 3.1 总的仿真图

8、 本设计主要由最小单片机系统、按键部分、显示部分、和计数报警部分组 成。主要用了六个按键、一个电阻排、两个数码管、一个报警器。 首先对计数器进行设定初值:数码管显示初值设定为 00,但并不是计数的 值。所以要预设定一个计数值。按下 up 键,显示器上能够逐次加 1,按下 down 键,显示器上能够逐次减 1,以此来给出一个计数预置值。再按下 stop 键一次, up 键和 down 键停止工作。进入计数环节。通过按下计数键进行计数,计数过程 中可以暂停计数,通过按下 stop键即可暂停。同样再按一下 stop 键则可以继续进 行计数。直到计数到达预设定的初值后报警器工作,播放一段音乐。然后 s

9、top 键 需要按两次才能再进行计数。因为播放音乐子函数是一个时间段 丄 一 9 MM 2 a Ui XT 1TET A-E F2r3 軌网 阳少II FZAQ 竝 弘K* I27i*t= pvre P-IJTHI ajunrr NhlJ 4 .专业整理. .学习帮手. 的函数 。所以不 能够在音乐播放的过程中给它任何指令,只有等音乐结束后按下 stop 键计数器恢 复计数。或者按下复位键,重新开始设定计数值开始下一轮计数; 3.2显示部分 图 2 数码管显示 显示部分:显示部分由两个数码管一个电阻排组成。通过 P0 口 P1 口连接数码 管。其中 P0 口要外接上拉电阻,这里用一个电阻排代替

10、八个电阻。 数码管按段数可分为七段数码管和八段数码管 ,八段数码管比七段数码管多 一个发光二极管单元,也就是多一个小数点(DP)这个小数点可以更精确的表示 数码管想要显示的内容;按能显示多少个(8)可分为 1 位、2 位、3 位、4 位、5 位、6 位、7 位等数码管。 按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管 。共阳数码 管是指将所有发光二极管的阳极接到一起形成公共阳极 (COM)的数码管,共阳数 码管在应用时应将公共极 COM 接到+5V,当某一字段发光二极管的阴极为低电平 时,相应字段.专业整理. .学习帮手. 就点亮,当某一字段的阴极为高电平时,相应字段就不亮。共阴数

11、码管是指将所有发光二极管的阴极接到一起形成公共阴极 (COM)的数码管,共阴 数码管在应用时应将公共极 COM 接到地线 GND 上,当某一字段发光二极管的阳 极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不 亮。 数码管的驱动方式主要由静态和动态两种。静态驱动也称直流驱动。静态驱 动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度 高,缺点是占用 I/O 端口多,如驱动 5 个数码管静态显示则需要 5 X8=40 根 I/O 端 口来驱动,要知道一个 89S51 单片

12、机可用的 I/O 端口才 32 个,实际应用时必须增 加译码驱动器进行驱动,增加了硬件电路的复杂性。本次用的就是静态显示! 3.3 按键部分 图 3 按键部分 按键部分:按键部分连接的是地端和 P1 口,由四个按键组成。Up 键和 down 键设 定计数初值。Stop 键进入中断,rset 键复位。分别接 P1.0 P1.3 P1.6 P1.7 口。 .专业整理. .学习帮手. 首先对计数器进行设定初值:数码管显示初值设定为 00,但并不是计数的 值。所以要预设定一个计数值。按下 up 键,显示器上能够逐次加 1,按下 down 键,显示器上能够逐次减 1,在按下 stop 键一次,可以按下计

13、数键进行计数。计数 到达预设定的初值后报警器工作,播放一段音乐。此时计数器不能继续工作,等 到音乐结束后按下 stop 键计数器恢复计数,按下复位键,重新开始设定计数值开 始下一轮计数;.专业整理. .学习帮手. 3.4 计数报警部分 图 4 计数报警部分 计数报警部分:计数报警部分由报警器和计数按键组成。分别接 P3.7 和 P3.2 口。计数次数达到后报警器开始工作播放一段音乐 。 当计数到达预设定的初值后报警器工作 ,播放一段音乐。此时计数器不能继 续工作,等到音乐结束后按下 stop 键计数器恢复计数,按下复位键,重新开始设 定计数值开始下一轮计数;.专业整理. .学习帮手. 四. 程

14、序清单及流程图 4.1.电子器件清单 设计的电子计数器所需的元器件的代号为 1、 单片机代号为:AT89C51 2、 电容 C1、C2 的代号为:CERAMIC22P 3、 电容 C3 的代号为:MINELECT10U16V 4、 晶振 X1 的代号为:CRYSTAL 5、 电阻 R1、R2 的代号分别为:CHIPRES 10K、CHIPRES 100R & 上拉电阻 RP1 的代号为:RESPACK-8 7、 显示器的代号为:7SEG-MP*1-CC 8、 开关六个的代号为 BUTTON.专业整理. 42 程序流程图 开始 设定初值 按下stop开始 计数 I _ 计数键按下开始计

15、J 数 按下rset键复位 .专业整理. .学习帮手. 计数键按下继续计 数 图 4 流程图 工作流程:首先对计数器进行设定初值:数码管显示初值设定为 00,但并不 是计数的值。所以要预设定一个计数值。按下 up 键,显示器上能够逐次加 1,按 下 down 键,显示器上能够逐次减 1,在按下 stop 键一次,可以按下 beep 键进行 计数。计数到达预设定的初值后报警器工作 ,播放一段音乐。此时计数器不能继 续工作,等到音乐结束后按下 stop 键计数器恢复计数,按下复位键,重新开始设 定计数值开始下一轮计数; 五. 调试、运行及其结果 刚开始程序设计中基本上是完好的,程序可以实现设定预置

16、值的加减计数 。 然后通过数码管显示预置值。程序在执行的过程中按下 stop 键开始允许计数。通 过右边的计数键开始重新计数显示,依然用的刚刚的数码管。一切功能都进行的 很顺利,但是等到一遍程序执行完的时候 ,按下复位键,数码管归零。本以为一 切都正常的时候重新试了下计数 。发现不能动,没有恢复到初始状态。最后思考 了一.专业整理. .学习帮手. 下,在 rset 程序里面加了一个子函数 init。调试了一下果然可以了。 刚开始只设计了报警,也就是简单的让报警器恒等于一 。但是看了任务书, 觉得给它加上一段音乐,感觉这个想法不错。虽说满足了老师的基本要求,但是 总觉得可以做的更好,所以我在此基

17、础上给它加了一段音乐 ,但是乐谱自己真的 是没有编过,于是就在网上百度了乐谱,然后结合自己的程序整合了一下 ,最终 选了一个简单的生日歌添加进自己的程序 。只要计数数值达到设定的值就开始播 放一段音乐,比起刺耳的报警声和谐了不少! 图 5.程序调试运行成功图.专业整理. .学习帮手. 六. 课程设计的心得体会 这次单片机课程设计进行了两周的时间 ,学校安排在学期末带给了我们很多 的怨言。人家都考完试回家了 ,我们却还得呆在这进行两周的实训。没办法咬咬 牙坚持就是胜利。还好带我们实训的老师在开学的时候就给了我们实训的题目 , 于是我们早就开始提前在做,这也生了我们好多接下来的时间。虽说每个人都是

18、 抱着不情愿的态度留在这里实训,但是事情存在就是合理的。一切事物有利就有 弊,有弊就有利。时间虽短,但是可以让我们能高效的完成实训 。即此课程设 计。 这次我分到的题目是电子计数器 ,相对其它的几个课题我这算是最简单的在 我看来。当然拿到题目首先要做的就是看看任务书里面的要求 ,然后去找资料。 其实大家都懂,首先在百度上面找一些类似的设计 。果然很巧找到了一个相似度 很高的题目。果断下载下来进行参考。然后图书馆借了一些书籍,再结合以前的 教科书。准备资料工作就算完成了。 在平时的上课学习中,我们对于书上所讲的感觉很抽象 。在做课程设计时我 们从最简单的实物开始做起,在制作过程中,我们首先是实验

19、设计,设计电路图, 然后画出电路流程图,设计电子计数器运行程序,同时我们还花费了一些时间寻 找课程设计的方法以及一些有关材料 ,并小组讨论设计。最终,我们在各个方面 实现了对各个部分的电路设计。在设计过程中,我们遇到了很多的问题,但最终 在我们小组的共同努力以及老师和同学的帮助下 ,把问题都解决了。 设计过程中遇到了点问题,虽说不是什么难懂的问题,但是有的时候每个人 都会被.专业整理. .学习帮手. 很简单的问题困扰。所谓当局者迷,旁观者清,就是这样吧。过程中遇到 的问题都自己调试解决了。满足任务书的要求,还添加了额外的亮点! 这次单片机课程设计让我学到了很多东西,利用了一些本学期学到的东西

20、, 比如说按键消抖等。收益良多,感觉还是有点成就感的。对于同学请教的问题, 我也能一一作答。.专业整理. .学习帮手. 七. 参考文献 1 张毅刚 彭喜元 彭宇编:单片机原理及应用第二版 高等教育出版社 2010 2 路而红主编:电子设计自动化应用技术 一一 FPGA 应用篇高等教育出版 社 2009 3 张元良王建军等著:单片机开发技术实例教程 机械工业出版社 2010 4 皮大能南光群刘金华编著:单片机课程设计指导书 北京理工大学出 版社 2010 5 胡亚琦主编:单片机原理及应用系统设计 西安电子科技大学出版社 2010 张毅刚主编单片机原理及接口技术人民邮电出版社出版 2011.专业整

21、理. .学习帮手. 附录 1.主程序代码: #in clude #defi ne uint un sig ned int #defi ne uchar un sig ned char sbit up=P1A0; sbit down=PM3; sbit stop=P1A6; sbit reset=P1A7; sbit beep=P3A7; uint gw,sw,gww,sww,temp; uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; uchar code SONG_TONE=212,21

22、2,190,212,159,169,212,212,190,212,142,159, 212,212,106,126,159,169,190,119,119,126,159,142,159,0; / 生日快乐歌的音 符频率表,不同频率由不同的延时来决定 uchar code SONG_LONG=9,3,12,12,12,24,9,3,12, 12,12,24,9,3,12,12,12,12,12,9,3,12,12,12,24,0; / 生日快乐歌节拍表,节拍决 定每个音符的演奏长短 void delay( uint z) .专业整理. .学习帮手. uint x,y; for (x=z;x0

23、;x_) for(y=110;y0;y-); void PlayMusic() ui nt i=0,j,k; while (S0NG_L0NGi!=0|S0NG_T0NEi!=0) for(j=0;jSONG_LONGi*20;j+) / 播放各个音符,SONG_LONG 为拍子长 度 Beep =beep; /SONG_TONE 延时表决定了每个音符的频率 For (k=0;kSONG_TONEi/2;k+); Delay (10); i+; .专业整理. .学习帮手. void in it() gw=o; gww=0; sw=0; sww=0; temp=0; P0=0; P2=0 xff; P3=0 xff; beep=0; P0=tablesw; P2=tablegw; IT0=1; EX0=1; void keysca n() if(temp=0) if(up=0) delay(5); .专业整理. .学习帮手. if(up=O) while(!up);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论