第一章 绪论--------------------------------------------------------3 第二章 设计目的及要求-----------------------------------------5 1.1 设计目的--------------------------------------------------------5 1.2 设计要求--------------------------------------------------------5 第三章 设计电路原理----------- -------------------------------7 3.1 控制部分的设计与选择-------------------------------------7 3.2 LED显示方案-----------------------------------------------8 第四章 硬件系统------------------------------------------------9 4.1 原件清单-------------------------------------------------------9 4.2 单片机AT89C51---------------------------------------------9 4.3 单片机时钟电路--------------------------------------------10
1
4.4 单片机复位电路---------------------------------------------11 4.5 工作电路------------------------------------------------------12 第五章 软件设计------------------------------------------------13 5.1 程序流程图--------------------------------------------------13 5.2 编辑源程序--------------------------------------------------14 第六章 系统调试与仿真结果--------------------------------16 6.1系统调试-----------------------------------------------------16 6.2仿真结果----------------------------------------------------16 总结------------------------------------------------------------- 19 参考文献--------------------------------------------------------20
2
第一章 绪论
课题简介
当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品。而电子LED灯已跨入了我们生活的众多电子领域。在众多场合随处可见的闪光灯,流水灯不仅大方美观而且十分节能。然而控制它们的单片机却是一个不能被忽视的角色。 单片机简介
目前的单片机分通用型和专用型两种。MCS-51系列单片机是属于通用型的单片机,通用型的单片机把开发资源全部公开,用户可以根据自己的应用系统进行设计,适用面广,应用灵活。制造单片机的材料也从TTL材料发展到CMOS材料,通常工作电压是5V,如5V±5%或5V±10%,也有3V/3.3V电压的产品,更低的可在1.5V工作。现在单片机又出现了宽电压范围型,在2.5~6.5V内都可正常工
3
作。低功耗是单片机所追求的一个指标,目前低功耗单片机的静态电流可以低至μA或nA级。有的单片机还有等待、关断、睡眠等多种工作模式以降低功耗。单片机的低功耗在智能化仪表中有重要的应用。
在工业控制中的控制器,可以应用软件的方法,实现复杂的控制过程,改变控制算法方便。有丰富的逻辑判断和位操作指令,可以在开关量控制、顺序控制、逻辑控制中发挥作用。目前,在加热控制、电机控制、锅炉控制、汽车电器、数控机床等各个领域,单片机得到了广泛的使用,并取得了很好的效果。
单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。单片微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。本设计就是利用单片机AT89C51为控制器来实现8个LED左右来回点亮的实验。
4
第二章 设计目的及要求
2.1 设计目的
通过本次课题设计,应用《单片机原理及应用》等所学相关知识及查阅资料,完成简易计算器的设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。
通过本次设计的训练,可以使我在基本思路和基本方法上对基于89C51单片机的系统设计有一个比较感性的认识,并具备一定程度的设计能力。
培养实践技能,提高分析和解决实际问题的能力。 2.2设计要求
(1)认真研究设计任务书,明确设计要求、条件、内容和步骤;复习课程有关内容,熟悉有关单元电路的设计方法和步骤;搜集、分析、消化相关资料、软件等;掌握微型计算机应用系统软件设计方法;准备好设计需要的
5
图书、资料和工具;拟定设计计划等
(2)系统总体及功能设计,制定总体方案及元器件的选择; (3)硬件设计,完成硬件结构图设计、系统电路图设计和绘制及电路模块的连接;
(4)软件设计,完成软件流程图的设计、程序设计; (5)使用Proteus与Keil软件仿真运行; (6)写出设计报告)
6
第三章 设计电路原理
3.1 控制系统的设计
AT89C51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平(复位时,各 I/O口均置高电平)。当该脚作输出脚使用时,则为高电平或低电平均可。低电平时,吸入电流可达20mA,具有一定的驱动能力;而为高电平时,输出电流仅 数十μA甚至更小(电流实际上是由脚的上拉电流形成的),基本上没有驱动能力。其原因是高电平时該脚也同时作输入脚使用,而输入脚必须具有高的输入阻抗,因而上拉的电流必须很小才行。作输出脚使用,欲进行高电平驱动时,得利用外电路来实现,如上拉电阻,I/O脚不通,电流经R驱动LED发光;低电平时,I/O脚导通,电流由该脚入地,LED灭(I/O脚导通时对地的电压降小于1V,LED的域值1.5~1.8V) 所以在本设计中将使用AT89C51为控制器,可将8个有着四种颜色的LED与AT89C51的8个P2(p2.0~p2.7)接口相连。
7
3.2 LED的显示
由于LED 具有亮度高、发光均匀、可靠性好、接线简单、拼装方便等优点。它被广泛应用于大型LED 智能显示屏、智能仪器仪表和机电一体化设备的显示单元中,取得了较好的效果。由于它经济、小型的显示系统,同时要求使用方便灵活,方便地组成了由多块大屏幕LED 显示器构成的显示系统,该系统可广泛用于商场、车站、码头及其它公共场合。
对于8个LED的点亮有很多种方案,可以同时点亮,同时熄灭,不同个数的LED来回交替。本设计由于LED的个数和颜色相对较多可以让8个LED从左到右然后再从右到左来回点亮。
8
第四章 硬件原理
4.1元件清单
原件名称 型号 参数 数量 单片机 AT89C51 12MHz 1 LED灯 LED 2.2V~10mA 8 晶体振荡器 CRYSTAL 12MHz 1 电容 CAP 22p 2 CAP-ELEC 10uf 1 电阻 RES 220 8 10K 1 4.2 单片机AT89C51
该单片机功能强大,不仅能满足设计的需要,也可以
9
在设计要求的基础上进行一些扩展。 单片机的结构如下:
图 1单片机引脚图
在使用时VCC接电源电压,GND接地。P0,P1,P2,P3可作为输入或输出端口,RST是复位输入,接复位电路。XTAL1和XTAL2接复位电路。这些可以在硬件设计部分体现出来
4.3.单片机的时钟电路
单片机内部有在一个振荡器,本设计采用内部时钟方式,以12MHZ石英晶体振荡器和两个30PF的片电容组成外部电容的大小对振荡频率有微小影响,可起调节作用。振荡器,如图所示。片内的高增益反向放大器通过XTAL1
0
1
和XTAL2外接,作为反馈元件的外部晶体振荡器与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。
如图;
4.4.单片机的复位电路
AT89C51的RST引脚是复位端。当单片机振荡器工作时,该引脚上出现持续两个机械周期的高电平,就可以实现系统复位,使单片机快速回到初始状态。如图;
1
1
4.5整体电路图
2
1
第五章 软件设计
5.1 程序流程图
开始 初始化 设置LED点亮位置 最左端 循环体 是 否 循环控制 是 结束
3
1
5.2 编辑源程序
程序利用循环移位函数_crol_和_cror_形成来回滚动的效果 #include void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++); } } //主程序 void main() 4 1 { uchar i; P2=0x01; while(1) {for(i=0;i<7;i++) { P2=_crol_(P2,1); //P2 的值向左循环移动DelayMS(150); } for(i=0;i<7;i++) { P2=_cror_(P2,1); //P2 的值向右循环移动 DelayMS(150); } } } 5 1 第六章 系统调试 6.1系统调试 1.编写程序并查错 2.在Keil中输入源程序,编译并连接,及时发现程序中的错误,改正,直至编译连接无误后保存并生成HEX文件。3.在Proteus中打开该电路对各器件及连线节点进行检查,其中单片机的频率一定要与晶振频率一致。 4.在单片机属性中找到program File中添加源程序生成的hex 文 件 。 如 图; 单击“确定”后即可进行模拟仿真。 6.2仿真结果; 6 1 7 1 8 1 结论与心得 通过这次课程设计使我懂得了理论与实际相结合是很非常重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为己所用,从而提高自己的实际动手能力和独立思考的能力。我在设计的过程中遇到了许多问题的同时也发现了自己的不足之处,即对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对汇编语言掌握得不透彻。 还有,这次的设计让我明白了“求人不如求己”,“自己动手丰衣足食”的深刻寓意。虽然我们要讲究合作愉快,但更重要的是自己,只有自己懂了,自己做了才不会在关键时刻掉链子。别人终究是一个陪衬,路总是要自己走的,属于自己的任务就要自己搞定。所以我们必须要时刻强大自己。这个过程虽然不是很平坦但肯定会遇到各种各样的问题,但一旦征服了它那它就是你的东西了,当这样的厚积达到一定程度那你就能享受到薄发那刻的辉煌。 9 1 参考文献 [1] 孙涵芳.MCS-51/96系列 单片机原理及应用(修订版)北京航空航天大学出版社.1994 [2] 李朝青.单片机原理及接口技术(第3版)北京航空航天大学出版社.2005 [3] 周润景、袁伟亭、景晓松.Proteus在MCS-51&ARM7系统中的应用百例.电子工业出版社.2006 0 2 因篇幅问题不能全部显示,请点此查看更多更全内容