ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:121.93KB ,
资源ID:8229358      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8229358.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(IO口的扩展与应用 课程设计说明书.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

IO口的扩展与应用 课程设计说明书.docx

1、IO口的扩展与应用 课程设计说明书目 录一 理论部分 11课题要求与内容 12 系统方案设计 13 系统硬件的设计 14 系统软件设计 4二 实践部分 41 系统硬件原理简介 42 系统硬件调试中出现的问题及解决措施 103 系统软件 103.1 软件设计 103.2软件调试中出现的问题及解决措施 10三 附录 11一 理论部分理论设计课题名称:I/O口的扩展与应用1课题要求与内容对基于单片机的I/O口的扩展与应用系统进行设计。所设计的系统功能为:以MCS-51系列单片机作为控制核心,通过开关控制输出数据来驱动二极管显示出I/O口的扩展。设计目的:学习单片机系统中扩展I/O口的方法;掌握I/O

2、口的控制逻辑,学习数据输入输出的种类及程序的编辑方法。设计要求:了解常用的I/O抠芯片,硬件扩展,读取开关状态,输出数据并且驱动发光二极管显示出来。2 系统方案设计 本设计采用单片机STC2C5A16S2和外围接口8155、发光二极管、晶振、复位、电源等电路以及必要的软件组成的以STC2C5A16S为核心,辅以简单的设备和必要的电路,设计了一款读取开关状态,输出数据并且驱动发光二极管显示出来,并编写简单的程序,使其能够工作。3 系统硬件的设计采用发光二极管显示的I/O口的扩展与应用系统电路原理图如图1 所示,系统由控制模块、指示灯显示模块、电源模块三部分组成。图1 系统电路原理图3.1 控制模

3、块 控制模块电路如图2所示。主控制器采用STC2C5A16S2。STC2C5A16S2的晶振及复位电路按典型电路设计,元器件参数如图2中所示,晶振频率选为12MHz。P10P17用于控制8个发光二极管。由于STC2C5A16S2使用片内的8KB的Flash程序存储器,所以片内外程序存储器选择引脚 /VPP接5V电源。图2 控制模块原理图3.2 指示灯显示模块指示灯显示模块如图3所示。指示灯指示采用红色发光二极管共8个。红色发光二极管的共阴极通过电阻接地,阳极接P1 0P17。当发光电流为6mA时,限流电阻按公式R=(5-1.8)/0.006计算,取标称值为510。图3指示灯显示模块3.3 电源

4、电路电源电路如图4所示。整个系统采用的电源电压只需+5V电压,将交流电经变压器变换为15V交流电,再用整流桥得到13.5V左右的直流电,采用不可调的3端稳压器件LM7805将电源稳定在5V直流输出。图4电源电路4 系统软件设计I/O口的扩展与应用系统软件主要分为主程序、特种车中断服务子程序二部分。.4.1 主程序主程序主要负责总体程序管理功能,包括初始化部分与人机交互设定部分。由于采用动态扫描方式显示通断,因此主程序大部分时间是调用扫描显示程序。主程序流程图如图5所示。图5主程序流程图初始化部分主要完成内存规划,定时器的工作模式、中断方式等的设定。由于子程序调用较多,因此初始化时堆栈指针设于8

5、0H处。4.2特种车中断服务子程序将按钮S4按下,给 引脚输入低电平信号来模拟特种车通过信号,此时外部中断1被触发。二 实践部分1 系统硬件原理简介1.1 8051单片机原理简述MCS-51单片机的典型芯片是8031、8051、8751。8051内部有4 KB ROM,8751内部有4KB EPROM,8031内部无ROM;除此之外,三者的内部结构及引脚完全相同。本设计使用的是STC2C5A16S2,相当于8031。下面我们就对本系列单片机的内部组成及信号引脚进行说明。STC2C5A16S2单片机的基本组成: 1) 中央处理器(CPU)中央处理器是单片机的核心,完成运算和控制功能。有运算电路和

6、控制电路,其中控制电路是单片机的指挥控制部件,保证单片机各部分能自动而协调的工作。例如定时控制电路和振荡电路均属于控制电路。单片机执行程序就是在控制电路的控制下进行的。首先从程序存储器读出指令,送指令寄存器保存;然后送指令译码器进行译码,译码结果送定时控制电路,有定时控制逻辑产生各种定时信号和控制信号;再送到系统的各个部件去控制相应的操作。这就是执行一条指令的全过程,而执行程序就是不断地重复这一过程。2) 内部数据存储器(内部RAM)STC2C5A16S2芯片中共有256个RAM单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H7FH)和高128单元(单元地址80HF

7、FH)。内部RAM的高128单元是供给专用寄存器使用的,其单元地址为80HFFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器SFR区。但高128单元被专用寄存器占用,能作为寄存器供用户使用的只是低128单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。片内低128字节RAM是用户真正可以存取随机数据的数据存储器,其地址为00H-7FH。 3) 定时/计数器 STC2C5A16S2共有两个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。

8、 4) 并行I/O口 STC2C5A16S2共有4个8位的I/O口(P0、P1、P2、P3),以实现数据的并行输入/输出。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器时,低8位地址和数据由P0口分时传送,高8位地址由P2口传送。在无片外扩展存储器的系统中,这4个口的每一位均可作为双向的I/O端口使用。5) 串行口STC2C5A16S2单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。 6) 中断控制系统 S

9、TC2C5A16S2单片机的中断功能较强,以满足控制应用的需要。8051共有5个中断源,即外中断两个,定时/计数中断两个,串行中断一个。全部中断分为高级和低级共两个优先级别。 7) 时钟电路 STC2C5A16S2芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。系统允许的晶振频率一般为6 MHz和12 MHz。从上述内容可以看出,STC2C5A16S2虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。图6 STC2C5A16S2 单片机芯片STC2C5A16S2单片机外部引脚,如图61)、主电源引脚

10、Vss 、 Vcc2)、外接晶振引脚 XTAL1 、 XTAL23)、控制或复位引脚 RST / VPD 两个机器周期高电平,单片机复位。 P0 P3 口:输出高电平 SP : 07H SFR、PC: 清0 不影响内RAM状态,机器从0地址开始执行。 上电复位电路、电平方式开关复位电路如图2-4所示。 ALE / PROG :地址锁存控制端 提供1/6 fosc振荡频率,输入编程脉冲EPROM PSEN :外部程序内存的读选通信号端。 EA / VPP :EA = 1 ,访问内部程序内存 当PC值超过内ROM范围(0FFFH)时,自动转执行外部内存的程序 EA = 0 , 只访问外部程序内存。

11、 对8751机,可施加21V编程电源(Vpp) 4)、输入/输出引脚 P0 P3:四个I / O口,每口8线,共同32线。1.2 晶体振荡电路1. 时钟信号的产生在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2 。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路,如图2.1所示。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。一般地,电容C1和C2取30 pF左右,晶体的振荡频率范围是1.212 MHz。晶体振荡频率高,则系统的时钟频率也高,单

12、片机运行速度也就快。MCS-51在通常应用情况下,使用振荡频率为6 MHz或12 MHz。 图 7 晶体振荡电路2. 时序 时序是用定时单位来说明的。MCS-51的时序定时单位共有4个,从小到大依次是:节拍、状态、机器周期和指令周期。下面分别加以说明。1) 节拍与状态 把振荡脉冲的周期定义为节拍(用P表示)。振荡脉冲经过二分频后,就是单片机的时钟信号的周期,其定义为状态(用S表示)。 这样,一个状态就包含两个节拍,具前半周期对应的拍节叫节拍1(P1),后半周期对应的节拍叫节拍2(P2)。 2) 机器周期 MCS-51采用定时控制方式, 因此它有固定的机器周期。规定一个机器周期的宽度为6个状态,

13、并依次表示为S1S6。由于一个状态又包括两个节拍,因此,一个机器周期总共有12个节拍,分别记作S1P1、S1P2、S6P2。由于一个机器周期共有12个振荡脉冲周期, 因此机器周期就是振荡脉冲的十二分频。当振荡脉冲频率为12 MHz时,一个机器周期为1s;当振荡脉冲频率为6 MHz时,一个机器周期为2s。本设计采用的晶振频率为12MHz。3) 指令周期指令周期是最大的时序定时单位, 执行一条指令所需要的时间称为指令周期。它一般由若干个机器周期组成。不同的指令,所需要的机器周期数也不相同。通常,包含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令,等等指令的运算速度与指令所包

14、含的机器周期有关,机器周期数越少的指令执行速度越快。单片机执行任何一条指令时都可以分为取指令阶段和执行指令阶段。ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。第一次出现在S1P2和S2P1期间,第二次出现在S4P2和S5P1期间。ALE信号每出现一次,CPU就进行一次取指操作,但由于不同指令的字节数和机器周期数不同,因此取指令操作也随指令不同而有小的差异。1.3单电源电平转换芯片MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。引脚介绍:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v

15、和-12v两个电源,提供给RS-232串口电平的需要。 第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。 其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。 TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。 第三部分是供电。15脚GND、16脚V

16、CC(+5v)。主要特点:1、符合所有的RS-232C技术标准2、只需要单一 +5V电源供电3、片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V- 4、功耗低,典型供电电流5mA5、内部集成2个RS-232C驱动器6、内部集成两个RS-232C接收器MAX232芯片在串行接口电路中的到了应用。如图 8图8 串行接口电路1.4模数转换器TLC549是美国德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过CLK、CS、DATA OUT三条口线进行串行接口。具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17s, TLC549为40 000次

17、/s。总失调误差最大为0.5LSB,典型功耗值为6mW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF-接地,VREF+VREF-1V,可用于较小信号的采样。图9 A/D转换电路芯片简介:1、TLC549的内部框图和管脚名称 TLC549的内部框图和引脚名称如图1所示。2、极限参数 TLC549的极限参数如下: 电源电压:6.5V; 输入电压范围:0.3VVCC0.3V; 输出电压范围:0.3VVCC0.3V; 峰值输入电流(任一输入端):10mA; 总峰值输入电流(所有输入端):30mA; 工作温度: TLC549C:070 TLC549I:4085 TLC549M:5

18、51252 系统硬件调试中出现的问题及解决措施问题1:调试中出现不能下载程序的问题措施:检查电板焊接部分是否焊接完整,检查各个芯片是否正常工作。问题2:通电后指示灯不亮措施:检查电板电路焊接,单片机是否安装正确,元件是否有损坏。问题3:数码管显示不完整。措施:检查不能显示的电路上焊接是否有虚焊,元件损坏等问题。3 系统软件 单片机语言编译用著名的Keil C51编译器。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解

19、。在开发大型软件时更能体现高级语言的优势,其方便易用的集成环境、强大的软件仿真调试工具会令你事半功倍。3.1 软件设计软件的设计是一个将需求转变为软件陈述(表达)的过程。这种陈述给 一个对软件的全局观点。系统通过逐步求精使得设计陈述逐渐接近源代码。这里有两个基本步骤:第一步是初步设计 Preliminary design ,关注于如何将需求转换成数据和软件框架。 第二步是 详细设计 Detail design ,关注于将框架逐步求精细化为具体的数据结构和软件的算法表达。发生中的设计行为、数据、算法和程序设计都需要由现代程序所需的界面设计这一清晰的行为来结合起来。界面设计 Interface d

20、esign 建立程序布局和人机交互机制。贯穿设计过程的质量由一系列的 正式技术评定 formal technical reviews 或 设计排演 design walkthroughs 来评价。3.2软件调试中出现的问题及解决措施程序编完后先保存,在编译的过程中,软件提示程序存在着多处错误,在软件的提示下一条一条的排查修改最终得到完美的程序。但演示出现错误时,要进行排查,分层次编译。三 附录参考程序清单ORG 0000HLJMP MAINORG 0100HMAIN:MOV SP,#60H ;初始化堆栈MOV A,#01H ;初始化IO口工作方式MOV DPTR,#7F00H ;设置PA口为输出方式MOVX DPTR,AMOV A,#0 ;设置变量初值MOV DPTR,#7F01H ;初始化端口地址LOOP: INC AMOVX DPTR,A ;端口置数ACALL DELAYSJMP LOOPDELAY: NOP ;延时程序MOV R4,#5DELAY1: MOV R5,#200DELAY2: MOV R6,#250DJNZ R6,$DJNZ R5,DELAY2DJNZ R4,DELAY1RETEND

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1