单片机应用系统的接口设计gai(共190张PPT).pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《单片机应用系统的接口设计gai(共190张PPT).pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用 系统 接口 设计 gai 190 PPT
- 资源描述:
-
1、单片机应用系统的接口设计gai(共190张PPT)学习目标学习目标 掌握单片机最小系统设计掌握单片机最小系统设计 掌握单片机外扩存储器方法掌握单片机外扩存储器方法 掌握单片机接口技术掌握单片机接口技术 掌握单片机中断及定时器应用掌握单片机中断及定时器应用 了解模数、串口通信了解模数、串口通信 3.1最小系统最小系统 3.2总线及接口扩展总线及接口扩展 3.3内存扩展设计技术内存扩展设计技术 3.4 LED、数码显示设计、数码显示设计 3.5 键盘接口技术键盘接口技术 3.6 中断、定时接口技术中断、定时接口技术 3.7数模(数模(D/A)转换接口设计)转换接口设计 3.8模数(模数(A/D)转
2、换接口设计)转换接口设计 3.9串行通信接口设计串行通信接口设计 3.10 常见问题常见问题主要内容主要内容3.1最小系统最小系统 什么是单片机最小系统?什么是单片机最小系统?最小系统是指单片机运行的最基本的硬件,是单片机正常工作的基本保障。为什么要做最小系统?为什么要做最小系统?最小系统主要用来判断系统是否可完成正常的启动与运行。MCS51单片机最小系统电路除电源外,主要由三大块组成:单片机最小系统电路除电源外,主要由三大块组成:复复位电路位电路、时钟电路时钟电路和和单片机单片机,如图,如图3.1所示。所示。图图3.1 MCS-513.1 MCS-51最小系统最小系统复位电路复位电路 单片机
3、系统是由硬件和软件构成的,软单片机系统是由硬件和软件构成的,软件是由程序组成的。程序则由系列指令件是由程序组成的。程序则由系列指令构成,正常情况下,希望系统运行时是构成,正常情况下,希望系统运行时是从程序的固定位置(入口处)开始执行从程序的固定位置(入口处)开始执行,复位的目的就是保证程序从入口处运,复位的目的就是保证程序从入口处运行,若不能保证复位要求,程序则很可行,若不能保证复位要求,程序则很可能不从规定处执行,会造成意想不到的能不从规定处执行,会造成意想不到的问题,如问题,如“死机死机”、“跑飞跑飞”。系统为什么要用复位电路?系统为什么要用复位电路?单片机在启动时都需要复位,以使单片机在
4、启动时都需要复位,以使CPU及系及系统各部件处于确定的初始状态,并从初态开统各部件处于确定的初始状态,并从初态开始工作。当系统处于正常工作状态时,且振始工作。当系统处于正常工作状态时,且振荡器稳定后,从荡器稳定后,从单片机的复位引脚单片机的复位引脚RST输入输入一个一个高电平高电平并并维持维持2个机器周期个机器周期(24个振荡周个振荡周期期)以上,则以上,则CPU就可以响应并将系统复位。就可以响应并将系统复位。单片机系统基本的复位方式有:单片机系统基本的复位方式有:上电复位上电复位和和手动按钮复位手动按钮复位(a a)上电复位上电复位 (b b)手动按钮复位手动按钮复位 图图3.2 3.2 复
5、位电路复位电路说明:复位电路中的器件取值可以根据所使用的时钟电路频说明:复位电路中的器件取值可以根据所使用的时钟电路频率,满足高电平大于两个机器周期(率,满足高电平大于两个机器周期(24个振荡周期)。图上个振荡周期)。图上给出的值是在给出的值是在6MHz晶振状态下,单片机复位电路的典型值。晶振状态下,单片机复位电路的典型值。时钟、振荡电路时钟、振荡电路 单片机时钟电路是用来配合外部晶振产生单片机工作所需的时钟信号。该电路为单片机提供运行时钟,是控制单片机运行速度的节拍。如果运行时钟为0脉冲,则单片机不工作;若超出单片机的正常工作频率则会使单片机超负荷运行,直至导致芯片发烫、烧毁。单片机时钟电路
6、有内部时钟内部时钟和外部时钟外部时钟电路两种。单片机时钟电路的作用是什么?单片机时钟电路的作用是什么?3.2总线及接口扩展总线及接口扩展 计算机总线是什么?计算机总线是什么?总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束。计算机总线传输的信号是电压还是电流信号?计算机总线传输的信号是电压还是电流信号?一般情况下传输的信号是以电压形式出现的。三总线概念三总线概念 按照计算机所传输的信息种类,计算机的总按照计算机所传输的信息种类,计算机的总线可以划分为线可以划分为数据总线数据总线DB、地址总线地址总线AB和和控制总线控制总线CB,分别用来传输数据、数据地址,
7、分别用来传输数据、数据地址和控制信号。和控制信号。图图3.3 MCS51单片机总线引脚结构单片机总线引脚结构总线接口常用芯片总线接口常用芯片 74LS373锁存器锁存器8D锁存器锁存器8输入:输入:1D8D8输出:输出:1O8O输入允许端:输入允许端:OE(1)输出预选端:输出预选端:G(11)74LS373 电平触发,锁存缓冲电平触发,锁存缓冲74LS374 上升沿触发上升沿触发74LS273 无三态门,用于不需三态场合无三态门,用于不需三态场合74LS138 3-8 译码器译码器74LS244 8路单向数据缓冲器路单向数据缓冲器74LS245 8路双向数据缓冲器路双向数据缓冲器缓冲器:无锁
8、存功能,在外设和缓冲器:无锁存功能,在外设和CPU之间起缓冲之间起缓冲 驱动和隔离作用。总线缓冲器具有三态功能。驱动和隔离作用。总线缓冲器具有三态功能。锁存器:除具有缓冲功能外还有数据锁存记忆功能。锁存器:除具有缓冲功能外还有数据锁存记忆功能。图图3.4 74LS138管脚图管脚图74LS138真值表LLLLLLLCAB74138 功能简表 74LS373的真值表H为高电平,为高电平,L为低电平,为低电平,Q0为原状态,为原状态,Z为高阻抗,为高阻抗,为任意值。为任意值。输出允许有效低电平:输出允许有效低电平:LE为高时输出随输入;为高时输出随输入;LE为低时,输出不变;为低时,输出不变;74
9、LS373锁存器主要用于锁存信息。锁存器主要用于锁存信息。常用的锁存器还有常用的锁存器还有74LS374,573,574,Intel 8282和和8283等等图3.5 74LS373D7D0为三态门输入端;为三态门输入端;O7O0为三态门输出端;为三态门输出端;GND为接地端;为接地端;Vcc为电源端;为电源端;OE 为三态门使能端,为三态门使能端,OE=0,三态门正常输出,三态门正常输出,OE=1,三,三态门输出高阻态;态门输出高阻态;LE为为8位锁位锁存器的控制端,当存器的控制端,当LE=1,则,则输出跟随输入(即锁存器透输出跟随输入(即锁存器透明),当明),当LE=0,则输出保持,则输出
10、保持不变,即将不变,即将D7D0的状态存的状态存入入O7O0。表3.2 74LS373的真值表表中:H为高电平,L为低电平,Q0为原状态,Z为高阻抗,为任意值。Dn为输入端;On为输出端;LE为为8位锁存器的控制端,位锁存器的控制端,当当LE=1,则输出跟随输入(即锁存器透明);,则输出跟随输入(即锁存器透明);当当LE=0,则输出保持不变,则输出保持不变74LS373是常用的地址锁存器芯片,共有是常用的地址锁存器芯片,共有20个引脚个引脚。它实质是一个是带三态缓冲输出的它实质是一个是带三态缓冲输出的8D触发器触发器,在单片机,在单片机系统中为了扩展外部存储器,通常需要一块系统中为了扩展外部存
11、储器,通常需要一块74ls373芯片。芯片。74LS245是常用双向三态总线缓冲、驱动器,可双向传输数据,共有20个引脚个引脚。图3.6表3.3 74LS245真值表允许端/OE与方向端DIR 共同控制8路A1A8和8路B1B8满足表1.3 逻辑。发光二极管n发光二极管:单向导电性,通过发光二极管:单向导电性,通过5mA左右电流即可发光,电流越大,亮度越强,但若电流过大会烧毁左右电流即可发光,电流越大,亮度越强,但若电流过大会烧毁二极管,一般控制在二极管,一般控制在320mA。n工作电压:工作电压:n红色发光二极管红色发光二极管1.7-2.5V绿色发光二极管绿色发光二极管2.0-2.4V黄色发
12、光二极管黄色发光二极管1.9-2.4V蓝蓝/白色发光二极管白色发光二极管3.0-3.8V n限流电阻n二极管串联电阻的目的是为了防止发光二极管和二极管串联电阻的目的是为了防止发光二极管和P1.7引脚流过的电流过大,烧毁二极管或单片引脚流过的电流过大,烧毁二极管或单片机,所以该电阻也称为机,所以该电阻也称为“限流电阻限流电阻”。n限流电阻的选择:限流电阻的选择:n假设电源电压为假设电源电压为VCC,发光二极管的导通压降为,发光二极管的导通压降为VDD,导通时流过二极管的电流为,导通时流过二极管的电流为I,则限流,则限流电阻电阻R为:为:nVCC-VDD=IR写地址PO锁存低地址的时序Dn为输入端
13、;On为输出;LE为为8位锁存器的控制端,位锁存器的控制端,当当LE=1,则输出跟随输入,则输出跟随输入(即锁存器透明);(即锁存器透明);当当LE=0,则输出保持不变,则输出保持不变ALE、WR由由CPU自动产生自动产生;可用可用wr接接138经过控制的经过控制的le控制转移数据;控制转移数据;1、wr控制le的过程;2、ale控制le的过程;3、wr的动态变化;在P0输出数据之后有 跳变,有下降的过程;结合54页的时序图 可以通过wr控制74138再控制7404输出信号到74373最终控制数据的锁存;4、p0口输出低地址的过程没有被锁存;典型电路典型电路图图3.7通过通过74LS245扩展
14、单片机的扩展单片机的P0口口典型电路典型电路1-A1-B11-B22-A2-B2-C2-D1-C11-C2地址为:地址为:OXC000地址为:地址为:OXC8001-B1,1-B2的的LE口名称改成口名称改成LEDC000,和和LEDC800;2-D作相应改动作相应改动1为为P0口出来的,口出来的,2为为p2口出来的口出来的;按照;按照abcd的流向走的流向走此例中此例中373锁存的是数据锁存的是数据2-D2-A至至2-B 至至2-C(需要辅(需要辅助单片机的助单片机的WR【低有效】信号控制【低有效】信号控制138);至);至2-D输出控制信号;输出控制信号;1-A,1-B1,1-C1在在2-
15、D的控制下的控制下1-B1的的LE为高为高输出信号输出信号再为低锁存信号再为低锁存信号;1-A,1-B2,1-C2类似;类似;地址为:地址为:OXC000地址为:地址为:OXC8001-B1,1-B2的的LE口名称改成口名称改成LEDC000,和和LEDC800;2-D作相应改动作相应改动所谓外部地址指所谓外部地址指P2,P0口输出相应值之后,能影响某些器件使之工作在锁存、口输出相应值之后,能影响某些器件使之工作在锁存、译码、流向变、公共端电压变化等时间上变化的状态;译码、流向变、公共端电压变化等时间上变化的状态;1-b1的的le为高时,为高时,wr为低为低1-b1上恰为数据;上恰为数据;C语
16、言程序清单:语言程序清单:#include#include#define uchar unsigned char#define uint unsigned int void Delay(uint t)uint i=1141;for(;t0;t-)for(;i0;i-);/for(i=1141;i0;i-)void main()uchar xdata*led0=0 xc000;uchar xdata*led1=0 xc800;/定义两个指针,并给指针赋值uchar i=0 x01,j=0;*led0=0 xff;/置为高电平;*led1=0 xff;/置为高电平;while(1)/循环for(j
17、=0;j8;j+)_nop_();*led0=i;/为按位取反;Delay(5000);i=(i7);/为左移;|为按位或 /1111,1100 和0000,0001 相或得1111,1101;*led0=0 xff;for(j=0;j8;j+)_nop_();*led1=i;Delay(5000);i=(i7);/0;j-)数据总线数据总线(Data Bus,DB)由P0口提供,其宽度为一个字节(8位)。控制总线控制总线(Control Bus,CB)是单片机发出的以控制片外ROM、RAM和I/O口读/写操作的一组控制线。控制总线包括片外系统扩展用控制线和片外信号对单片机的控制线。系统扩展所
18、用控制线包括WR,RD,PSEN,EA 和ALE。图3.8 单片机三总线示意图2、扩展能力、扩展能力 MCS51单片机地址线为16位,因此在片外可扩展的存储器最大容量为64KByte,地址为0 x00 xFFFF。由于对片外数据存储器和程序存储器的访问使用不同的指令及控制信号,所以允许两者地址重合,即对于8051系列单片机来说,片外可扩展的程序存储器与数据存储器的最大容量均为64KB。片外数据存储器地址为0 x00 xFFFF。当片内程序存储器与片外程序存储器的访问使用相同的操作指令,对两者的选择则靠系统控制线来实现。当EA=0时,选择片外程序存储器,即无论片内有无程序存储器,片外程序存储器的
19、地址可从0 x0开始进行编址。当EA=1时,选片内程序存储器,若片内程序存储器容量为4KByte,则其地址为0 x00 x0FFF,片外程序存储器地址只能从0 x1000开始编址。(3)扩展的实现)扩展的实现 数据总线数据总线以P0口作8位数据的总线。数据总线的数据流是双向的,单片机有入和出。地址总线地址总线以P0口的低8位地址加上P2的高8位地址就可以形成16位的地址总线,达到64KByte的寻址能力。地址总线的数据流是单片机发出的,是单向的。控制信号总线控制信号总线PSENEAWRRDALEALE:地址锁存信号,用以实现对低:地址锁存信号,用以实现对低8 8位地址的锁存。位地址的锁存。:片
20、外程序存储器选通信号。:片外程序存储器选通信号。:程序存储器选择信号。为低电平时,访问外部程序:程序存储器选择信号。为低电平时,访问外部程序存储器;为高电平时,访问内部程序存储器。存储器;为高电平时,访问内部程序存储器。:片外数据存储器写控制信号。:片外数据存储器写控制信号。:片外数据存储器读控制信号。:片外数据存储器读控制信号。总线驱动总线驱动 在单片机应用系统中,扩展的三总线上挂接很多负在单片机应用系统中,扩展的三总线上挂接很多负载,如存储器、并行接口、载,如存储器、并行接口、A/D接口、显示接口等,接口、显示接口等,但总线接口的负载能力有限,因此常常需要通过连接但总线接口的负载能力有限,
21、因此常常需要通过连接总线驱动器进行总线驱动。总线驱动器进行总线驱动。总线驱动器对于单片机的总线驱动器对于单片机的I/O口只相当于增加了一个口只相当于增加了一个TTL负载,因此驱动器除了对后级电路驱动外,还能对负负载,因此驱动器除了对后级电路驱动外,还能对负载的波动变化起隔离作用。载的波动变化起隔离作用。在对在对TTL负载驱动时,只需考虑驱动电流的大小。负载驱动时,只需考虑驱动电流的大小。在对在对MOS负载驱动时,负载驱动时,MOS负载的输入电流很小,负载的输入电流很小,更多地要考虑对分布电容的电流驱动。更多地要考虑对分布电容的电流驱动。数据总线是双向的,其驱动器也要选用双向的,如74LS245
22、。74LS245也是三态的,有一个方向控制端DIR。DIR=1时输出(AnBn),DIR=0时输入(AnBn)。系统总线中地址总线是单向的,因此驱动器可以选用单向的,如74LS244,还带有三态控制,能实现总线缓冲和隔离。4、典型案例、典型案例图图3.9 3.9 简单简单I/OI/O接口扩展接口扩展 C语言程序清单:语言程序清单:#include voidmain()unsigned char data tmp1,tmp2=0Xff;unsigned char xdata *pt1;pt1=0 xfeff;/给指针赋地址值0 xfeffwhile(1)/循环 tmp1=*pt1;/从74HC2
23、45读入键盘数据 if(tmp1!=tmp2)/判断输入改变时,*pt1=tmp1;/从74HC373输出LED显示数据 tmp2=tmp1;/下一次的比较是对按键变化的比/较,所以需要将更新后的按键值最为下一次的比较依据;典型应用典型应用 图图3.11 3.11 存储器扩展存储器扩展3.4 LED、数码显示设计、数码显示设计 将系统正在运行的状态告诉操作者,需要将系统正在运行的状态告诉操作者,需要显示;操作者需要将控制的信息输入到系显示;操作者需要将控制的信息输入到系统,输入的信息成功情况需要显示。统,输入的信息成功情况需要显示。常用的显示方式有:常用的显示方式有:LED彩灯显示、数码彩灯显
24、示、数码管显示、液晶显示。管显示、液晶显示。为什么需要显示?有哪些显示方式?为什么需要显示?有哪些显示方式?显示显示 图图3.12 13.12 1只彩灯闪烁显示电路只彩灯闪烁显示电路#include#define uchar unsigned char sbit P1_0=P10;void delay05()uchar i,j,k;for(i=5;i0;i-)for(j=200;j0;j-)for(k=250;k0;k-);void main()while(1)P1_0=0;delay05();P1_0=1;delay05();图图3.13 83.13 8只彩灯循环显示电路只彩灯循环显示电路
25、参考程序:参考程序:#include#include#define uchar unsigned char#define uint unsigned int void Delay(uint t)/延时函数uint i=1141;for(;t0;t-)for(;i0;i-);void main()uchar i=0,j=0 x01;while(1)for(i=0;i8;i+)/循环8次P1=j;/将j按位取反从P1输出Delay(5000);j=(j7);数码管的结构与原理数码管的结构与原理 LED数码管的结构如图3.14所示,图中a-g七个笔段及小数点dp均为发光二极管。如果将所有发光二极管的
展开阅读全文