基于51单片机的计数器设计_第1页
基于51单片机的计数器设计_第2页
基于51单片机的计数器设计_第3页
基于51单片机的计数器设计_第4页
基于51单片机的计数器设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机课程设计目 录1 课程设计的目的.12 设计思路.13 设计过程.23.1 方案论证 .23.2 电路的设计 .54 应用程序.65 系统调试与焊接.85.1 电路的安装与焊接.85.2 系统试调 .96 结论.107 心得体会.10参考文献.13附录 1:总体电路原理图.14附录 2:实物图.15附录 3:元器件清单.1611 课程设计的目的1利用单片机定时器/计数器中断设计计数器,0 到 99 的累加。2综合运用所学的单片机原理与应用理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。 3通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习

2、和掌握,对单片机实际的应用作进一步的了解。4通过本次试验,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。 明确学习目的,端正学习态度,提高对课程设计重要性的认识,以积极认真的态度参加课程设计工作,按要求完成规定的设计任务。2 设计思路本实验利用单片机的定时器/计数器定时和计数的原理,通过采用仿真软件来模拟实现。模拟利用 AT89C2052 单片机、LED 数码管以及各种控制器件来控制表的计数以及计数的开启/计数与复位等。利用单片机 AT89S51 单片机来制作一个手动计数器,在 AT89S51 单片机的 P3.7管脚接一个轻触开关,作为手动计数的按钮,用单片机的 P2.0-

3、P2.7 接一个共阴数码管,作为 00-99 计数的个位数显示,用单片机的 P0.0-P0.7接一个共阴数码管,作为 00-99 计数的十位数显示,用单片机 P1.0-P1.6接一个并排的 7 个 LED 灯,作为 00-99 计数的二进制显示。设计总图如图 2-1 所示2图 2-1 设计总图3 设计过程 3.1 方案论证AT89C51 是一种带 4K 字节 FLASH 存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8 位微处理器,俗称单片机。AT89C2051 是一种带 2K 字节闪存可编程可擦

4、除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本。AT89C51 单片机为很多嵌入式控制系统提供了一种灵活性高并且价廉的方案。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极 COM 增加位选

5、通控制电路,位选通3由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是哪个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省

6、大量的 I/O 端口,而且功耗更低。用单片机技术来实现双显计数器的控制。多功能定时计数器控制系统的原理。它主要由单片机、发光二极管、晶振和双位数码管等部分组成。A单片机采用 STC89C51 型。B数据显示电路:七段四位共阴极数码管,P1 口接 7 个 LED 二极管,用二进制显示数据;P0 和 P2 口分别接两个数码管,用十进制显示数据。C数据输入电路:有触发按键完成输入,一次按键 LED 显示和数码管显示分别加 1,LED 满二进位,数码显示满十进位。D电源指示电路:电路接通电源后电源指示灯亮起,表示电源接通。 设计总体框架图如图 3-1 所示4图 3-1 总体框架图最小控制系统的设计,S

7、TC89C51 单片机最小系统包括晶体振荡电路、复位开关和电源部分。STC89C51 单片机的最小系统图如图 3-2 所示图 3-2 单片机最小控制系统当 RST 引脚有一个高电平并维持两个机器周期,则CPU 就可以响应并将系统复位。需要 100 欧,10k 电阻各一个,22pf 电容一个,按键一个。时钟电路需要在 XTAL1,2,两个端口跨接石英晶体及两个电容, STC89C51 数码管显示LED显示 触发电路5电容一般取 10uF 左右。 3.2 电路的设计 1指示电路如图 3-3 所示图 3-3 指示电路2数码管为共阴极,八段选端接 P1 口,四个位选端接 P3 口,如上图所示。数码管显

8、示电路如图 3-4 所示。6图 3-4 数码管电路3复位电路如图 3-5 所示。图 3-5 复位电路4 应用程序#include #include#includevoid delay5ms(void)unsigned char i,j;for(i=10;i0;i-)for(j=248;j0;j-);void delay2ms(void)unsigned char i,j,k;for(i=20;i0;i-)7for(j=20;j0;j-)for(k=248;k0;k-);unsigned char code LEDcode=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,

9、0 x7d,0 x07,0 x7f,0 x6f;unsigned char code LEDcoda=0 x00,0 x01,0 x02,0 x03,0 x04,0 x05,0 x06,0 x07,0 x08,0 x09,0 x0a,0 x0b,0 x0c,0 x0d,0 x0e,0 x0f,0 x10,0 x11,0 x12,0 x13,0 x14,0 x15,0 x16,0 x17,0 x18,0 x19,0 x1a,0 x1b,0 x1c,0 x1d,0 x1e,0 x1f,0 x20,0 x21,0 x22,0 x23,0 x24,0 x25,0 x26,0 x27,0 x28,0 x

10、29,0 x2a,0 x2b,0 x2c,0 x2d,0 x2e,0 x2f,0 x30,0 x31,0 x32,0 x33,0 x34,0 x35,0 x36,0 x37,0 x38,0 x39,0 x3a,0 x3b,0 x3c,0 x3d,0 x3e,0 x3f,0 x40,0 x41,0 x42,0 x43,0 x44,0 x45,0 x46,0 x47,0 x48,0 x49,0 x4a,0 x4b,0 x4c,0 x4d,0 x4e,0 x4f,0 x50,0 x51,0 x52,0 x53,0 x54,0 x55,0 x56,0 x57,0 x58,0 x59,0 x5a,0 x

11、5b,0 x5c,0 x5d,0 x5e,0 x5f,0 x60,0 x61,0 x62,0 x63;unsigned char count;sbit sp1=P37;void main(void)count=0;P0=LEDcodecount/10;P2=LEDcodecount%10;P1=LEDcodacount;while(1)if(sp1=0)delay5ms();if(sp1=0)8count+;if(count=100)count=0;P0=LEDcodecount/10;P2=LEDcodecount%10;P1=LEDcodacount;while(sp1=0);dodela

12、y5ms();while(sp1=0);dodelay5ms();while(sp1=0); 5 系统调试与焊接5.1 电路的安装与焊接电路安装要注意几个原则: 1.先装矮后装高、先装小后装大、先装耐焊等; 2.一定要注意排版,不能东倒西歪,方向应尽量一致; 3. 布线尽量使电源线和地线靠近实验电路板的周边,以起一定的屏蔽作用; 4. 最好分模块安装。此外焊接时不能出现虚焊、假焊、漏焊,更不能出现过焊, 因为有些器件,不能耐高温,比如焊接三极管时,电烙铁绝对不能停留太久;同时过 焊铜片将脱落,给焊接带来不必要的麻烦、也9将影响板子的视觉效果。 5.在焊完之后,不要忙于去调试,而应该用万用表来查

13、其电路是否接触良好、是 否与电路图的布置一致、是否有器件在焊接的过程中烧坏了等。5.2 系统试调系统通电后,进入计数设置功能,等待信号的数据输入,当完成设置数值后,开始计数,此时如果对所记录的数据清零则返回到设置数值界面,可以重新设置数值。当所记录的数值等于预设定的数时,蜂鸣器发声报警。 在软件编写与调试时,我发现有很多我原来所没有注意到的问题,硬件完成焊接后,先用万用表简单的进行是否短路检测,没有问题后进行通电测试,发现上电指示灯亮,然后程序到单片机内检测是否能下载程序;刚开始的时候,我的不能下程序,我首先按照原理图检查了一遍最小系统,发现复位电路存在问题,经修改后还是不能下程序,怎么试不行

14、,我又检查了电路和最小系统发现都没有问题,最后听同学说可能是杜邦线的问题,经过检查后发现我的四根杜邦线有两根都是坏的。这是我所没有想到的,换了好的后,就可以程序了。当编写完程序进行调试时,又发现存在很多的问题,首先是数码管的段码的问题,这个需要自己根据自己的电路来计算而不是统一的一样,这个问题直到我知道后才解决掉。然后是矩阵键盘扫描的程序的调试,这个也要自己根据自己的电路接口来计算所要输送的十六进制数码,而且还要通过软件去抖动,还要判断按键是否松开等问题,这个花费的时间较长些,最后通过把按键扫描和数码管动态显示组合到一起,发现还是有问题,这个当然是软件上的问题。实现这个功能之后,我要实现自己的

15、计数功能和显示功能,在这个过程中,设置的数的显示和所要计的10数的显示又存在问题,原因是他们会同时显示,出现重叠乱码现象,为此我请教了很多同学,最后,通过分别定义不同变量,用数组解决了这个问题。最后经过讨论与研究终于找到了解决问题的办法。我们花费很多时间,虽然出现了许多问题但在老师和同学的帮助下都慢慢克服。6 结论 调试方法:首先用软件将 C 编译成 HEX 文件,打开软件,新建一个文文件,输入 C 程序,保存成 C 格式文件,然后新建工程,连接单片机为 AT89C51,选择 Options for target,选择 OUTPUT 子菜单,在Create HEX 前打钩,子菜单中,Setti

16、ngs 选择 Proteus VSM Simulator,USE 前打钩,再次运行文件,成功后在目录下会生成 HEX文件,打开 Proteus 软件,或直接点击 DSN 檔,双击单片机模板,点击文件夹式样的图标选择对应的 HEX 驱动文件,然后点击开始,进行调试经调试运行基本成功,不过也有小小的不足之处。经过查找错误,已经调试成功。完成以 STC89C52 为核心的计数器的设计和制作,并能实现计数显示和设置功能。7 心得体会经过两一的努力,我终于完成关于多功能定时计数器的控制的单片机课程设计,通过两周不断的查资料让我积累了许多实际操作经验,已初步掌握了单片机的应用技术,以及电路的知识和有关器件

17、的应用,我深刻体会到了单片机技术对当今现代社会的重要作用。 经过这次设计,我学会了许多东西,学会了严密的思考,构想及怎样把计划付诸于实际行动之中。同时与社会的不断高速发展的步伐相比,我认识到自己所学的知识和技能还远远不足,有些实际性的问题还不能够解决,缺少很多11有实际运用价值的知识储备,缺乏应有的动手解决实际问题的能力,缺乏高效利用及筛选大量资料的能力,缺乏资源共享及应有的团队合作精神,有待进一步提高,我应当学好自己的专业知识以适应不断发展的社会。在这次课程设计中,我学会了如何有效的利用网络资源及图书馆的藏书,找到了几个很不错的专业网站,通过这次课程设计,加强了我动手、思考和解决问题的能力.

18、但是控制器控制信号灯不好。虽然花了很多的时间,但学到了很多东西。做课程设计的时候,自己把整个书本都看了几遍,增强了自己对知识的理解,很多以前不是很懂的问题现在都已经一一解决了。在课程设计的过程中,我想了很多种方案,对同一个问题都想了很多种不同的接法,运用不同的芯片进行了比较,最后还是采取了上面的方法进行连接。为以后的查阅专业方面的信息和相互之间的交流打下了坚实的基础,学会了如何看电路图,识别电路图,提高了自己的专业技能,同时也培养了自己独立解决实际问题的能力,也培养了自己认真和严谨的科学态度,收到了很大的启发,为以后的工作积累了些宝贵的经验。本课设过程中一开始就出现数码管的焊接错误, 其实在焊

19、接前就问同学数码管的管脚 是从哪开始数。但在线路的布置时,却不知而然的顺时针数,后来发现要重新把数码管的焊点吸出,重新焊接,所以觉得麻烦,而且浪费时间和影响美观等,接着想到把数码管引脚倒过来插。所以今后做如此的焊接实验时必须更仔细点。在数码管这一块,以为直接 焊上去就可以达到灯亮和基数的效果,结果没达到理想效果,通过网上查阅才明白怎么样焊接。在最后过程中,老师提出应该用不同的数码管,接不通的电路;同时老师在检查时提到原理问题时,其实在做 12之前是看过、查阅过的,只不过因为当时头脑一热,只有几个词语,所以一言不语,当时也不明白数码管的具体结构组成以及其目的等 (认为这是在实验报告中要完成的任务) ,所以在今后还是要做好充分的准备工作,做到细心、谨慎、负责。通过实验意识到要从现在开始养成那种细心的好习惯。还有由于知识的局限性,对一些深层次的问题还是有所欠缺。这对以后的课程设计、毕业设计甚至是今后工作 上都非常有帮助。再者通过这次实习锻炼了自己的动手及查资料的能力,也体会到了 成功带来了的喜悦和自己的不足之处,可以说是受益匪

温馨提示

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

评论

0/150

提交评论