1、1摘 要单片机自 20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而 51 单片机是各单片机中最为典型和最有代表性的一种。本课程设计是基于 MCS51 系列单片机所设计的,用 AT89S52 芯片控制跑马灯(流水灯) ,整个系统有 8 种跑马灯模式可以选择,K1 是选择模式键,并将相应的模式在 LED 七段数码管中显示出来,K2 可以对跑马灯的速度进行加速,K3 可以对跑马灯的速度进行减速。整个系统可以实现对跑马灯模式的多层控制,还可以进行加减速。关键词:MCS51、跑马灯、加减速、七段数码管2目录1、引言1.1、单片机基础知识.31.2、单片机
2、的发展趋势.31.3、本课程设计的目的.41.4、仪器设备.41.5、课程设计的内容.41.6、本设计的题目与要求.42、总体设计.42.1、框图设计.42.2、电路原理图.52.3、系统材料清单.52.3.1、AT89C51 芯片.52.3.2、共阳极七段数码显示管.62.3.3、发光二极管.82.3.4、轻触开关.92.4、软件设计.102.4.1、c 语言编程 .10 2.3.2、软件硬件仿真.123、实物焊接.134、结束语.145、参考文献.166、附录.1731、引言1.1 单片机基础知识单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
3、概括的讲,一块芯片就成了一台计算机。单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。现在,这种单片机的使用领域已十分广泛。彩电、冰箱、空调、录像机、VCD、遥控器、游戏机、电饭煲等无处不见单片机的影子,单片机早已深深地融入我们每个人的生活之中。单片机能大大地提高这些产品的智能性,易用性及节能性等主要性能指标,给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。单
4、片机按用途大体上可分为两类,一种是通用型单片机,另一种是专用型单片机。MCS-51 单片机是美国 INTEL 公司于 1980 年推出的产品,与 MCS- 48 单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达 111 条,MCS-51 单片机可以算是相当成功的产品,一直到现在,MCS-51 系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与 MSC-51 单片机作为代表进行理论基础学习。MCS-51 系列单片机主要包括 8031、8051 和 8751 等通用产品。1.2 单片机的发展趋势单片机现在可以说是百花齐放,百家争鸣的时期,
5、世界上各大芯片制造公司都推出了自己的单片机,从 8 位、16 位到 32 位,数不胜数,应有尽有,有与主流 C51 系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供了广阔的天地。现在常规的单片机普遍都是将中央处理器(CPU) 、随机存取数据存储(RAM) 、只读程序存储器(ROM) 、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如 A/D 转换器、PMW(脉宽调制电路) 、WDT(看门狗) 、有些单片机将 LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。甚至单片机厂商还可以根据用户的
6、要求量身定做,制造出具有自己特色的单片机芯片。此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。现在的许多单片机都具有多种封装形式,其中 SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微4型化方向发展。现在虽然单片机的品种繁多,各具特色,但仍以 89C51 为核心的单片机占主流。1.3 课程设计的目的(1) 、训练学生正确地应用单片微机,培养解决工业控制、工业检测等领域具体问题的初步能力。(2) 、让学生通过所做课题,熟悉单片微机应用系统开发、研制的过程,软硬件设计的工作方法、工作内容、工作步骤。(3) 、对学生进行基本技能训练,例如组成
7、系统、编程、调试、查阅资料、绘图、编写说明书等;使学生理论联系实际,提高动手能力和分析问题、解决问题的能力。1.4 仪器设备PC 机、万用表、电烙铁等。1.5 课程设计的内容(1)、设计并绘制硬件电路图;(2)、购买电子元器件并按电路图焊接到电路板上;(3)、编写程序并将调试好的程序固化到单片机中。1.6 本设计的题目与要求(1)题目:可以调控的跑马灯(2)要求:用 AT89S52 芯片控制跑马灯(流水灯) ,整个系统有 8 种跑马灯模式可以选择,K1 是选择模式键,同时将相应的模式在 LED 七段数码管中显示出来,K2 可以对跑马灯的速度进行加速,K3 可以对跑马灯的速度进行减速。整个系统可
8、以实现对跑马灯模式的多层控制,还有加减速。二、总体设计2.1 框图设计框图设计是为了能够从整体上把握系统的各个大的模块以及各个模块之间的联系。同时罗列出需要主要使用到的各个器件,以方面系统开发中器件的选取。通过框图设计,让设计者从整体上把握系统的开发。本系统设计的框图如下图 2-1 所示。89S52发光二极管按键模块 LED5图 2-1 系统结构框图2.2 电路原理图本系统由 89S52 芯片、LED 七段数码管、发光二极管、轻触开关等组成,电路原理图如图 2-2 所示;图 2-2 系统电路原理图2.3 系统材料清单2.3.1、AT89C51 芯片(1)89C51 是一种带 4K 字节闪烁可编
9、程可擦除只读存储器( FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS8 位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 89C51 是一种高效微控制器。89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。6(2)主要特性:与 MCS-51 兼容;4K 字节可编程闪烁存储器;寿命:1000
10、 写/擦循环;数据保留时间:10 年;全静态工作:0Hz-24MHz;三级程序存储器锁定;1288 位内部RAM;32 可编程 I/O 线;两个 16 位定时器/计数器;5 个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路。(3)结构特点:8 位 CPU;片内振荡器和时钟电路;32 根 I/O 线;外部存贮器寻址范围ROM、RAM64K;2 个 16 位的定时器/计数器;5 个中断源,两个中断优先级;全双工串行口;布尔处理器;AT89C51 芯片图如下图 2-3 所示;图 2-3 AT89C51 芯片图2.3.2、共阳极数码显示管发光二极管显示管简称 LED,具有结构简单
11、、价格低廉、使用方便、耗电少、与单片机接口容易等特点,在单片机应用系统使用非常普遍。一位共阳数码管结构如图 2-4 所示;7图 2-4 一位共阳数码管LED 数码显示器由七段条形的发光二极管组成“ ”字形显示字段,用一只圆形的发光二极管做小数点。LED 数码显示器中,通常将各段发光二极管的阴极或阳极连在一起做公共端,这样可以使驱动电路简单。共阳极数码管是指发光二极管的阳极都与正极接在一起,引脚接输出端,故低电平有效,其原理图如图 2-5 所示;图 2-5 共阳极数码管原理图共阳极的管脚示意图如图 2-6 所示;图 2-6 共阳极管脚示意图8要使 LED 数码管显示数字,只要点亮相应字段的发光二
12、极管即可。如要显示“1” ,点亮b、c 段;要显示“0” ,点亮 a、b、c、d、e、f 段。从图 2-5 中不难看出,对于共阳极数码管,点亮字段则用低电平“0”来表示,所以低电平有效。这样我们就可以把要显示的数字与一串二进制代码对应起来,即对 LED 数码显示器实现编码。由于这种编码是与显示器结构相对应的,因此分为共阴显示码和共阳显示码两种。 不考虑小数点的编码只有七位,常称为七段显示码;如果对小数点也进行编码,则称为八段显示码。常用字符的八段显示码如图 2-7 所示;图 2-7 常用字符的八段显示码2.3.3、发光二极管它是半导体二极管的一种,可以把电能转化成光能;常简写为 LED。发光二
13、极管与普通二极管一样是由一个 PN 结组成,所以具有单向导电性。常用的发光二极管是发红光、绿光或黄光的二极管。它广泛应用于各种电子电路、家电、仪表等设备中、作电源指示或电平指示。发光二极管如图 2-8 所示;9图 2-8 发光二极管2.34、轻触开关轻触开关如图 2-9 所示;图 2-9 清触开关轻触开关的功能说明图如图 2-10 所示;10图 2-11 轻触按钮说明图2.4 软件设计 本课程设计是采用 80C51 单片机设计的可以调控的跑马灯,通过 keil 进行 c 语言编程,通过 protues 进行软件硬件仿真。本设计成果,主要通过按键开关对跑马灯进行控制,包括跑马灯模式的选择、跑马灯模式的显示、跑马灯速度变化控制。2.4.1、C 语言编程(1)定义#include#define uchar unsigned char#define uint unsigned intuchar ModeNo;uint Speed;