单片机课程设计_第1页
单片机课程设计_第2页
单片机课程设计_第3页
单片机课程设计_第4页
单片机课程设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、页码 1818 2015 2016 学年 第 2 学期 单片机应用技术 课 程 设 计 报 告题 目:基于AT89S51单片机的时钟控制系统设计专 业: 自动化 班 级: 13自动化(一)班 姓 名: 指导教师: 成 绩: 电气工程学院2016年 5 月 14 日设计题目:基于AT89S51单片机的60秒时钟控制系统设一、设计目的:1、进一步熟悉和掌握单片机的结构及工作原理。2、掌握单片机的接口技术及相关外围芯片的外特性,控制方法。3、通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。4、通过程序设计和仿真,逐步掌握模块化程序设计方法和PROTEUS仿真软件

2、和keil c51编程软件的使用。5、通过完成一个包括电路设计和程序开发的电路板完整的制作过程,使学生了解开发单片机应用系统的全过程,为今后从事相应工作打下基础。二、设计任务:用单片机的定时器/计数器实现60秒计时,用两只数码管从00开始静态显示计时的秒值。当显示为59时,再从00开始显示计时。三、设计要求 1. 完成综合实验板的电路结构分析,进行模块分解,掌握各部分电路的工作原理; 2. 独立完成电路板的焊接,掌握故障排除方法,完成实验板的硬件设计及开发; 3. 结合keil c51软件在焊接无误的单片机实验板上开发出流水灯、LCD

3、显示模块,通信模块等程序设计; 4. 按照要求撰写课程设计论文。摘 要LED的技术进步是扩大市场需求及应用的最大推动力。最初,LED只是作为微型指示灯,在计算机、音响和录像机等高档设备中应用,随着大规模集成电路和计算机技术的不断进步,LED显示器正在迅速崛起,近年来逐渐扩展到证券行情股票机、数码相机、PDA以及手机领域。LED显示器集微电子技术、计算机技术、信息处理于一体,以其色彩鲜艳、动态范围广、亮度高、寿命长、工作稳定可靠等优点,成为最具优势的新一代显示媒体,目前,LED显示器已广泛应用于大型广场、商业广告、体育场馆、信息传播、新闻发布、证券交易等,可以满足不同环境的需

4、要。LED的技术进步是扩大市场需求及应用的最大推动力。最初,LED只是作为微型指示灯,在计算机、音响和录像机等高档设备中应用,随着大规模集成电路和计算机技术的不断进步,LED显示器正在迅速崛起,近年来逐渐扩展到证券行情股票机、数码相机、PDA以及手机领域。LED显示器集微电子技术、计算机技术、信息处理于一体,以其色彩鲜艳、动态范围广、亮度高、寿命长、工作稳定可靠等优点,成为最具优势的新一代显示媒体,目前,LED显示器已广泛应用于大型广场、商业广告、体育场馆、信息传播、新闻发布、证券交易等,可以满足不同环境的需要。【关键词】  LED、动态显示、共阳极、位选、段选目 录第一章 AT89

5、S51单片机简介及硬件电路的设计11.1 AT89S51单片机简介 1 1.1.1 AT89S51主要功能列举 1 1.1.2 AT89S51各引脚功能介绍 11.2 晶振电路11.2.1 晶振电路的作用11.2.2 晶振电路的设计11.3 复位电路21.3.1 复位电路的作用21.3.2 复位电路的设计21.4 单片机原理图31.5 数码管显示电路4第二章 LED数码管的工作原理42.1 数码管的显示原理42.2 数码管的显示方式52.2.1 静态显示方式52.2.2 动态显示方式5第三章 原理图的绘制与Proteus仿真73.1 原理图的绘制73.2 Proteus仿真103.2.1 软件

6、设计流程图103.2.2 仿真测试10第四章 电路板的制作与通电测设134.1 电路板的制作步骤134.2 下载程序 通电测试13第五章 C语言程序代码14第六章 总结15参考文献161第1章 AT89S51单片机简介及硬件电路的设计1.1 AT89S51单片机简介1.1.1 AT89S51主要功能列举AT89S51为一般控制应用的 8 位单芯片 ,晶片内部具时钟振荡器(传统最高工作频率可至 12MHz),内部程式存储器(ROM)为 4KB ,内部数据存储器(RAM)为 128B ,外部程序存储器可扩充至 

7、;64KB ,外部数据存储器可扩充至 64KB ,32 条双向输入输出线,且每条均可以单独做 I/O 的控制 8、5 个中断向量源 ,2 组独立的 16 位定时器 ,1 个全多工串行通信端口 ,8751 及 8752 单芯片具有数据保密的功能 ,单芯片提供位逻辑运算指令。1.1.2 AT89S51各引脚功能介绍VCC: AT89S51 电源正端输入,接+5V。 VSS:

8、0;电源地端。 XTAL1: 单芯片系统时钟的反相放大器输入端。 XTAL2: 系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了。 RESET: AT89S51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。 AT89S51 1.2 晶振电路1

9、.2.1 晶振电路的作用晶振电路是关系到单片机能否正常工作的关键。它关系到单片机的时钟信号的大小以及在编程过程中会用到的延时函数(delay)中的延时时间的大小。所以说晶振电路非常重要。其也关系到你的程序编写的是否能正确的运行及仿真。1.2.2 晶振电路的设计我们组采用的是用最常用的晶振电路,也就是两个30p的晶振电容C1、C2和一个频率为12MHz的晶振X1(CRYSTAL)构成的简单晶振电路。主要是将两个电容先串联再和晶振并联,其中,晶振的一端连接XTAL1,另一端连接XTAL2,然后再将串联的电容一端接地(GND)。其电路图如图1所示。图1-1 晶振电路1.3 复位电路1.3.1 复位电

10、路的作用复位电路可以说是存在每一个单片机系统中,因为这是必须的也是必要的。当你的单片机中程序运行错误时,你就可以按下这个复位键即RST键,这是单片机就会重新加载程序,是系统能够正常进行。反过来,如果你设计电路系统时,你没有设计复位电路,当程序出错时,你只有关掉电源才能停止这一现象,显然你的设计是不合格的。复位电路的设计可以说是极大地简便了单片机的使用。1.3.2 复位电路的设计复位电路是采用常用电路进行设计的,用到的元器件有单点开关一个,一个1K的电阻R2、10K的电阻R3、一个10电容和电源VCC。电路是将开关与R2进行串联,然后和电容并联,之后将其一端与电源相连。具体电路图如图1-2所示。

11、图1-2 复位电路1.4 单片机原理图本次课程设计我们所采用的单片机是AT89S51型单片机,AT89S51型单片机是一种带4KB闪存可编程可擦除只读存储器的低电压、高性能CMOS微处理器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪存组合在单个芯片中,ATMEL的AT89S51是一种高效微处理器,为很多嵌入式控制系统提供了一种灵活性高且廉价的方案,AT89S51的管脚分配,如图1-3所示。图1-3 AT89C51单片机引脚图1.5 数码管显示电路这部分相较于前两部分的晶振电路和复位电路而言,简单多了!这部分只需要

12、将数码管的十个引脚与单片机的P2引脚相连就可以了!如图1-4所示!图1-4 LED数码管显示电路第2章 LED数码管的工作原理2.1 数码管的显示原理LED数码管是常见的显示器件。LED数码管为“8”字形,共7段或8段,每一段对应一个发光二极管,有共阳极和共阴极两种。共阳极数码管的阳极连在一起,共阳极接到+5V上;共阴极数码管的阴极连接到一起,通常此共阴极接地。此次设计我们采用的是共阳极数码管,并且是两位一体式数码管。本次我们使用的数码管是二合一的数码管,两个数码管共用十个引脚,也就是说用这十个引脚就足以控制其显示。那么要怎么连线呢?这就需要知道这个数码管的物理结构图,如图2-1所示。可以看到

13、,有两个共用引脚,这两个是控制哪个数码管显示也就是通常所说的片选端。图2-1 数码管结构图2.2 数码管的显示方式单片机控制LED数码管有两种显示方式:静态显示和动态显示。2.2.1 静态显示方式静态显示就是指无论多少位LED数码管,都同时处于显示状态。多位LED数码管工作于静态显示方式时,各位的共阴极连接在一起并接地;每一位数码管的段码线(adp)分别与一个单片机控制的8位I/O口锁存器输出相连。如果送往各个LED数码管所显示字符的段码一经确定,则相应I/O口锁存器的段码输出将维持不变,直到送入下一个显示字符的段码。正因为如此,静态显示方式的显示无闪烁,亮度较高,软件控制比较容易。2.2.2

14、 动态显示方式显示位数较多时,静态显示所占用的I/O口多,这是采用动态显示。为节省I/O口的数目,通常将所有显示器的段码线的相应段并联在一起,由8位I/O端口控制,而各显示位的公共端分别由另一个单独的I/O端口控制。动态显示就是单片机向段码线输出欲显示字符的代码。每一时刻,只有一位位线有效,即选中某一位显示,其他各位位选线都是无效的。每隔一定时间逐位地轮流点亮各数码管(扫描方式),由于数码管的余辉和人眼的“视觉暂留”作用,只要控制哈每一位数码管显示的时间和间隔,则可造成“多位同时亮”的假象,达到同时显示的效果。本次设计我们所采用的是动态显示0059的显示,正是利用人眼的余晖效应从而实现两只数码

15、管同时点亮的效果。各位数码管轮流点亮的时间间隔应根据实际情况而定。发光二极管从导通到发光有一定的延时,如果点亮时间太短,发光太弱,人眼无法看清。另外,显示位数增多,也将占用单片机的大量时间,因此动态显示的实质就是以执行程序的时间来换取I/O端口的减少。 18原理图的绘制与Proteus仿真3.1 原理图的绘制原理图的绘制,必须用到Proteus软件。那么什么是Proteus呢?Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿

16、真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路的协同仿真,一建切换到PCB设计,真正实现了从概念到产品的完整设计。Proteus是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086和MSP439等,2010年即将增加Cortex和DSP处理器,并持续增其他系列处理器模型。

17、在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。本次课程设计采用的电路图全是通过Proteus这个软件来制作的。也就是说,你必须会使用这个软件,才能很好的完成此次设计的任务。一般来说,绘制原理图的步骤是:1、 新建一个项目也就是project,如图3-1,然后就是保存;2、 添加元器件,如图3-23-5;本次课设需要的元器件清单见表1。3、 根据已有的电路图,在Proteus工作界面绘制原理图,如图3-3。4、 布线及调整。将鼠标移至所要连接器件的管脚处,鼠标箭头会变成图3-4的样式,此时按住鼠标左键拖至对应器件管脚处,松开左键即把两器件连接。如果在连接器件时出现交叉或重叠,可以

18、对连线或元件位置进行适当的调整。图3-1 新建项目2位一体式数码管1AT89S511电容30PF2电解电容10UF1晶振12MHZ1电阻10K1电阻1K1按钮1IC插座DIP401电木万能板1USB转串口、下载线1电阻排1K1表3-1元器件清单图3-2 添加单片机 图3-3 添加电容图3-4 添加电阻图3-5 原理图3.2 Proteus仿真3.2.1 软件设计流程图主程序分为三部分,包括复位电路部分、单片机控制主程序部分和数码管显示部分。程序流程图如图3-6所示。图3-6 程序流程图3.2.2 仿真测试仿真所用到软件有两个,一个是Proteus,另一个是Keil软件,这两个软件,前者是画电路

19、图的,后者是编写程序的。只有两个软件都会使用,才能仿真成功。在仿真之前,要现在Keil中生成能够下载到单片机内部的HEX文件,只有生成了这个文件,才能在Proteus中进行仿真。生成HEX文件如图3-7所示。仿真结果如图3-83-10所示。图3-7 生成HEX文件图3-8 显示15图3-9 显示30图3-10 显示52第3章 电路板的制作与通电测设4.1 电路板的制作步骤1、 根据Proteus软件中的电路图,在电路板上进行合适的排版,对整体布局有一个大概的了解,以防不够使用。2、 根据已有的布局,先将小的元器件如电阻、电容和晶振焊接上,之后再把大的元器件焊接上,这样做的好处是方便焊接单片机插

20、座。3、 焊接单片机插座。这个是有点难度的相比之前的器件。因为引脚比较密,焊接时容易使相邻引脚焊接在一起。4、 根据电路图,连线。这个步骤一定要非常仔细,因为如果一根线接错的话,那就要重新检查,重新焊接,又会重复焊接,所以一定要细心,细心再细心!4.2 下载程序 通电测试经过USB串口转TTL下载线,用STL软件将编写好的程序烧写进单片机内,然后看到的就是软件仿真中的情况,这就说明整个电路板的制作和程序的编写是完全正确的。实物图如图4-1所示。图4-1 电路板 第六章 C语言源程序#include <reg52.h>unsigned char a=0xc0,0xf9,0xa4,0x

21、b0,0x99,0x92,0x82,0xf8,0x80,0x90;unsigned char b=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;unsigned char c=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;unsigned char timer=0;unsigned char s;#define uchar unsigned char#define uint unsigned intsbit a0=P30;sbit a1=P31;void delay(uchar i) u

22、char t; while(i-) for(t=0;t<120;t+); void main() while(1) for(s=0;s<59;s+) a0=1; a1=0; P2=as/10; delay(80); a0=0; a1=1; P2=as%10; delay(50); 总结本次单片机课程设计中,让我受益匪浅,无论从知识上还是其他的各个方面。特别是对于单片机的C语言编程和电路设计也有了新的认识,并且还锻炼了自己的思考能力和动手能力。在方案选择和芯片的选择上,培养了我们综合应用单片机的能力,对单片机的各个管脚的功能也有了进一步的认识。上课的时候的学习从来没有见过真正的单片机

23、,只是从理论的角度去理解枯燥乏味。但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会同学之间相互帮助。团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。单片机是很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助。在这个自己动手制作电路板的过程中,不仅锻炼了我们的动手能力还锻炼了我们每个人的查阅技术资料的能力、发现问题、解

温馨提示

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

评论

0/150

提交评论