单片机学习第八章_第1页
单片机学习第八章_第2页
单片机学习第八章_第3页
单片机学习第八章_第4页
单片机学习第八章_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1第8章MCS-51单片机应用系统的设计

本章主要内容8.1单片机应用系统概述8.2课程设计——16×16LED显示8.3课程设计——电脑钟2第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述8.1.1单片机应用系统的特点单片机本身是个集成芯片,它集成了CPU、存储器、基本的I/O接口以及定时/计数器。如果是一些简单的控制对象,只要在单片机外围加上少量的电路就可以构成控制系统。对于复杂的系统,单片机的应用和I/O接口扩展也比较方便。从单片机系统的实际应用来看,单片机具有以下特点。(1) 由于系统规模较小,本身不具备自我开发的能力,需要借助专业的开发工具进行系统的开发和调试,使得应用系统简单实用、成本低、效益好。(2) 系统的配置以满足对象的控制要求为出发点,使系统具有较高的性价比。(3) 应用系统通常将程序存放在ROM中,使得系统不易受外界干扰,可靠性强,而且可以进行加密。(4) 应用系统所用的存储器芯片可选用EPROM、EEPROM、OTP芯片、掩膜ROM或Flash,这些芯片与单片机有很好的兼容性,便于开发和量产。(5) 单片机本身体积较小,功能强,便于安装在控制设备内部,大大地推动了机电一体化产品的开发。3第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述8.1.2MCS-51单片机应用系统设计方法一般情况下,一个实际的单片机应用系统的设计过程主要包括以下5个阶段。(1) 系统的总体设计方案。(2) 硬件设计。(3) 软件设计。(4) 系统仿真调试。(5) 系统安装运行。这5个阶段不是完全独立的部分,往往是相互联系的整体,在总体设计中,就已经开始考虑硬件设计和软件设计的问题。图8-1为单片机应用系统设计的流程图。4第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述图8-1单片机应用系统设计流程图5第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述1.系统的总体设计方案单片机作为控制核心,它所控制的对象是多种多样的,所实现的控制要求也是各不相同的。无论控制的对象是一个具体设备还是一个工业过程,都要对被控对象的工作过程进行深入的调查和分析,了解系统的控制要求以及信号的种类、数量和应用环境等,并进行调研,参考国内外同类产品的资料,进行必要的理论分析和计算,在综合考虑可靠性、可维护性、成本和经济效益等要求的基础上,提出合理的技术指标。2.硬件设计所谓硬件设计,就是为实现应用系统功能,确定系统扩展所需要的存储器、I/O接口电路、A/D和D/A电路以及其他的外围电路,然后设计出系统的电路原理图,并根据设计出来的电路原理图制作实验板或印刷电路板的过程。硬件设计不是孤立的,它要在系统总体方案确定的前提下进行,如总体方案所选定的单片机采用片内无存储器的芯片或者单片机内的存储器不能满足系统要求时,则硬件设计时就应该在系统硬件中考虑外扩存储器芯片。6第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述3.软件设计软件设计的任务是根据应用系统的总体设计方案的要求和硬件结构,设计出能够实现系统要求的各种功能的控制程序。一般情况下,在程序设计的时候应采用模块化的程序设计方法,其内容包括主程序模块的设计、各子程序模块的设计、中断服务程序模块的设计、查表程序的设计。采用模块化程序设计方法最大的好处是调试方便,而且有较强的可移植性,便于分工合作。4.系统仿真设计仿真的目的是利用开发机的资源(CPU、存储器和I/O设备等)来模拟欲开发的单片机应用系统的CPU、存储器和I/O操作,并跟踪和观察目标机的运行状态。仿真可以分为软件仿真和开发机在线仿真两大类,软件模拟仿真成本低,使用方便,但不能进行应用系统硬件的实时调试和故障诊断。现实中常用的是在线仿真方法。(1) 利用独立型仿真器开发独立型仿真器采用与单片机应用系统相同的单片机做成单板机形式,板上配置LED显示器和简易键盘。这种开发系统在没有微机系统的支持下,仍能对单片机应用系统进行在线仿真,便于在现场对软件进行调试和修改。

7第8章MCS-51单片机应用系统的设计

8.1单片机应用系统概述另外,这种开发系统还配有串行接口,能与普通微机系统相联系。这样,可以利用普通微机系统配置的组合软件进行源程序的编辑、汇编和联机仿真调试。然后将调试无误的目标程序(即机器码)传送到仿真器,利用仿真器进行程序的固化。(2) 利用非独立型仿真器开发这种仿真器采用普通微机加仿真器构成。仿真器与通用微机间以串行通信的方式连接。这种开发方式必须有微机的支持,利用微机系统配备的组合软件进行源程序的编辑汇编和联机仿真调试。这些仿真接口上还配有EPROM写入插座,可以将开发调试完成的用户应用程序写入EPROM芯片。与前一种相比,此种开发方式现场参数的修改和调试不够方便。以上两种开发方式均是在开发时拔掉目标系统的单片机芯片和程序存储芯片,插上从开发机上引出的仿真头,把开发机上的单片机借给目标机。仿真调试无误后,拔掉仿真头,再插回单片机芯片,把开发机中调试好的程序固化到EPROM芯片中并插到目标机的程序存储器上,目标机就可以独立运行了。5.系统安装运行系统进行在线仿真调试成功后,即可确定硬件设计和软件设计基本上正确,这时可以将程序固化到存储器中,用单片机芯片替换仿真器后运行系统,观察系统运行是否达到系统的设计要求,若达不到要求,则可能需要对软件做少量的改动。若实际单片机运行正常,则整个系统的开发工作就完成了。8第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示

8.2.1设计要求LED大屏幕显示器不仅能显示文字,还可以显示图形、图像,而且能产生各种动画效果,是广告宣传、新闻传播的有力工具。LED大屏幕不仅有单色显示,还有彩色显示,其应用越来越广,已渗透到人们的日常生活之中。这里要求设计并制作出可以显示单个汉字的16×16单色LED点阵。8.2.216×16LED显示总体设计方案1.16×16点阵连接方案无论是单个LED(发光二极管)还是LED七段码显示器(数码管),都不能显示字符(含汉字)及更为复杂的图形信息,这主要是因为它们没有足够的信息显示单位。LED点阵显示是把很多的LED按矩阵方式排列在一起,通过对各LED发光与不发光的控制来完成各种字符或图形的显示。最常见的LED点阵显示模块有5×7(5列7行)、7×9、8×8结构,前两种主要用于显示各种西文字符,后一种可用于大型电子显示屏的基本组建单元,可以用来显示汉字。本系统中采用4个8×8LED点阵组成16×16点阵。8×8LED点阵的外观及引脚图如图8-2所示,其等效电路图如图8-3所示。图8-3中只要各LED处于正偏(Y方向为1,X方向为0),则对应的LED发光。如Y7(0)=1,X7(H)=0时,则其对应的右下角的LED会发光。各LED还需接上限流电阻,实际应用时,限流电阻既可接在X轴,也可接在Y轴。9第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示在本系统中,采用如图8-4所示的方式连接4个8×8LED点阵,把编号I、II和III、IV的8×8LED点阵的行线(Y方向)连接在一起组成16行,并把I、III和II、IV相应的列线(X方向)连接在一起组成16列,形成16×16点阵。图8-28×8点阵的外观及引脚图10第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示图8-38×8点阵的等效电路11第

8

章M

C

S-51单片机应用系统的设计

8.2课程设计——16×16LED显示I8×8LEDII8×8LEDIII8×8LEDIV8×8LED图8-416×16点阵连接方案2.16×16点阵显示方案LED大屏幕显示可分为静态显示和动态扫描显示两种。静态显示每一个像素需要一套驱动电路,如果显示屏为n×m个像素,则需要n×m套驱动电路;动态扫描显示则采用多路复用技术,如果是P路复用,则每P个像素需一套驱动电路,n×m个像素仅需n×m/P套驱动电路。在本系统中,采用动态扫描显示数据,行线由I/O直接驱动,列线通过SN74159控制。SN74159是4-16线译码器,当SN74159的、接地时,从A、B、C、D引脚输入0000

1111时,从

引脚分别输出低电平,实现列线的单独控制。显示工作以行扫描方式进行,扫描显示过程是每一次显示一列16个LED点,显示时间称为行周期,16行扫描显示完成后开始新一轮扫描,这段时间称为场周期。

12第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示8.2.3硬件设计根据总体方案设计,16×16点阵采用AT89C51单片机为主控芯片,P2口和P3口分别控制I、II和III、IV号8×8LED的行线,P1.0~P1.3控制SN74159的输入端,进而控制I、III和II、IV号的列线。16×16点阵的电路原理图如图8-5所示。13第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示图8-516×16点阵原理图本系统中,每次显示一个汉字,显示时间为1s,循环显示“单片机世界欢迎您”。14第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示8.2.4编程要点及软件设计1.字库的建立当要显示一个16×16点阵的汉字时,需要建立每列显示LED的位置数据,称这种数据信息为字库。每个汉字需要32个字节数据表示(每列2个字节,共16列),例如“单”字在16×16点阵中需要显示的LED如图8-6所示,根据图示和硬件连接,可以得到“单”字的字库为:00H,08H,00H,08H,F8H,09H,28H,09H,29H,09H,2EH,09H,2AH,09H,F8H,FFH28H,09H,2CH,09H,2BH,09H,2AH,09H,F8H,09H,00H,08H,00H,08H,00H,00H用同样的方法,可以得到其他汉字的字库。15第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示图8-6“单”字在16×16点阵中显示的LED16第8章MCS-51单片机应用系统的设计

8.2课程设计——16×16LED显示2.16×16点阵的编程要点(1) 通过P1.0~P1.3控制SN74159的输入端,形成16列的列驱动信号。(2) 从P2、P3口输出相应的行扫描信号,与列信号在一起,点亮行中有关的点。(3) 延时1ms。此时间受50Hz闪烁频率的限制,不能太大,应保证扫描所有16行(即一帧数据)所用时间之和在20ms以内。(4) 改变列驱动信号,从P2、P3口输出下一行扫描信号并延时1ms,完成下一行的显示。(5) 重复上述操作,直到所有16行全扫描显示一次,即完成一个汉字数据的显示。(6) 重复上述操作,完成一秒显示。(7) 重新扫描显示第一行,开始下一个汉字数据的扫描显示工作,如此不断地循环,即可完成全部汉字

温馨提示

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

评论

0/150

提交评论