欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    单片机课件第六章.ppt

    • 资源ID:1321662       资源大小:1.04MB        全文页数:125页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机课件第六章.ppt

    单片机原理及应用,第六章 MCS51单片机的并行扩展接口 6.1 总线并行扩展 6.2 存贮器接口扩展 6.3 输入/输出并行接口扩展 6.4 D/A转换器接口扩展 6.5 A/D转换器接口扩展 6.6 显示及键盘接口扩展 6.7 微型打印机接口,单片机原理及应用第六章 MCS51单片机的并行扩展接口,MCS51系统单片机(8031、8032除外)尽管是一功能完全的单片机,但因其内部资源(RAM、ROM、I/O、A/D、D/A等)不足,在实际应用中不加以扩展直接用其基本系统的情况较少,一般情况下需扩展。,第六章 MCS51单片机的并行扩展接口,MCS51系统单片机(8031、8032除外)尽管是一功能,P0、P2口可以直接作为输入输出口使用,其更重要的用途是用来扩展总线口使用。 P0口作为地址(地址低8位)/数据(D0D7)总线口。 P2口作为地址总线口(地址高8位)。,第六章 MCS51单片机的并行扩展接口,P0、P2口可以直接作为输入输出口使用,其更,第六章 MCS51单片机的并行扩展接口,一般用74LS373作地址锁存器,输出的地址当ALE上升以后有效,当ALE下降以后消失,因此可以用ALE的负跳变将地址打入地址锁存器,即当ALE由高变低时,将出现在P0口的地址信号低8位锁存到外部地址锁存器中(如图62所示),直到下一次ALE变高时,地址才发生变化。,第六章 MCS51单片机的并行扩展接口 一般,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 P,第六章 MCS51单片机的并行扩展接口,线选法有可能产生地址重叠:若片选线中除和存贮芯片CS相连的以外还存在悬空的片选线,则存贮单元的地址就有重叠现象;否则,存贮单元的地址就是唯一的。,第六章 MCS51单片机的并行扩展接口二、地址译码方法 1,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口2、全地址译码法全地,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口3、部分地址译码法,第六章 MCS51单片机的并行扩展接口,三、总线驱动能力及扩展方法,MCS51系列单片机,作为数据总线和低8位地址总线的P0口可驱动8个TTL电路,而如P2口等其它口只能驱动4个TTL电路。当应用系统规模过大,可能造成负载过重,致使驱动能力不够,系统不能可靠地工作时,需另增设总线驱动。,第六章 MCS51单片机的并行扩展接口三、总线驱动能力及扩,第六章 MCS51单片机的并行扩展接口,单向驱动 74LS244,双向驱动 74LS245,第六章 MCS51单片机的并行扩展接口1、总线的驱动扩展,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口地址总线和控制总线的,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口3、数据总线的驱动扩,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 6.2 MCS,EPROM是紫外线可擦除电可编程的半导体只读存贮器,掉电后信息不会丢失。 EPROM中的程序一般由专门的编程器写入,由专门的擦除器擦除(擦除后EPROM阵列全为1状态),擦除时紫外线强度为12000mw/cm2,波长为l=2537 ,时间为1020min。 常用的EPROM有:2716,2732,2764,.。,EPROM电路,第六章 MCS51单片机的并行扩展接口,EPROM是紫外线可擦除电可编程的半导体只读存贮器,掉,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口A0 Ai:地址输,第六章 MCS51单片机的并行扩展接口,E2PROM电路,E2PROM是电可擦除电可编程的半导体存贮器,掉电后信息不会丢失。编程时简单,不需要专门的编程器和擦除器。故E2PROM实际上是一种特殊的可读写存贮器。E2PROM兼有程序存贮器和数据存贮器的特点,故在单片机应用系统中既可作为程序存贮器,又可作为数据存贮器。常用的并行E2PROM有:2817,2864。,A0 Ai:地址输入线。2817:i=10; 2864:i=12;(2K,8K)I/O0I/O7:双向三态数据线。(P0.0P0.7),第六章 MCS51单片机的并行扩展接口 E2PROM电路,第六章 MCS51单片机的并行扩展接口,CE: 片选信号输入线(接CPU地址线)OE: 读选通信号输入线 (接CPU RD PSEN)WE: 写选通信号输入线 (接CPU WR)RDY/BUSY:2817的状态输出线,为“0”表示正在进行写操作,写入完毕呈高阻态VCC: 主电源+5VGND: 线路地,E2PROM有读、写、维持三种操作方式。2817的写操作:当2817收到CPU发来的地址、数据和写控制信号后,便启动内部电路对该地址单元进行写操作,此时RDY/ BUSY输出低电平,大约16ms以后,写操作完成,完成后RDY/BUSY呈高电平(外接上拉电阻)或高阻。2817,第六章 MCS51单片机的并行扩展接口CE: 片,第六章 MCS51单片机的并行扩展接口,的RDY/BUSY状态线可供CPU采用中断或查询方式来控制对2817的字节写操作。 2864的写操作: Inter公司的2864采用页面写操作方式。 Inter公司的2864A内设有16B的页缓冲器,其整个存贮空间分为512页(每页16B),页面操作分“页加载”和“页存贮”两步进行。,“页加载”指在软件控制下,将一页(116B)的数据写入2864内的“页缓冲器”。 “页存贮”是2864A在其内部电路控制下把页缓冲器的内容存入E2PROM单元。,第六章 MCS51单片机的并行扩展接口的RDY/BUSY状,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口“某一值”由内部程序,第六章 MCS51单片机的并行扩展接口,MCS51访问外部程序存贮器时序波形如下:,MCS51访问外部程序存贮器时序波形,第六章 MCS51单片机的并行扩展接口MCS51访问外部,第六章 MCS51单片机的并行扩展接口,程序存贮器扩展的一般方法,常用的地址锁存器有:74LS373(三态缓冲输出的八D锁存器);8282(三态缓冲输出的八D锁存器); 74LS273(带清除端的八D锁存器)。最常用的是74LS373,当然地址锁存器芯片不同,则与单片机的连接方式不同。,第六章 MCS51单片机的并行扩展接口 程序存贮器扩展的一,第六章 MCS51单片机的并行扩展接口,E低电平有效(一般接地)。 G(STB)为锁存信号输入端,高电平时Q0Q7=D0D7 G(STB)电平负跳变(为0)时, Q0Q7状态保持不变。,G(STB)实际连接时接单片机的ALE。,74LS373和8282都是透明的三态门八D锁存器,其工作原理为:,第六章 MCS51单片机的并行扩展接口 E低,当需扩展时,单片机一般采用片内无ROM的8031芯片。,用8031单片机,无内部ROM,EA必须接地。 只扩展一片EPROM,故CE=0,当用带内部ROM的单片机芯片时, EA=1(+5V),第六章 MCS51单片机的并行扩展接口,当需扩展时,单片机一般采用片内无ROM的803,第六章 MCS51单片机的并行扩展接口,当采用74LS273作地址锁存器时,锁存器控制端为上升沿锁存,故ALE须反相才能接到74LS273的锁存器控制端。, 用8031单片机,无内ROM,EA必须接地。 扩展多片EPROM,故必须用一条或多条地址线 来片选。,第六章 MCS51单片机的并行扩展接口 P2.i+1A0,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口二、数据存贮器的扩展,第六章 MCS51单片机的并行扩展接口,静态随机存取存贮器RAM ,具有速度快、使用方便和价格低廉等优点,但也具有掉电丢失数据的缺点。,第六章 MCS51单片机的并行扩展接口 静态,第六章 MCS51单片机的并行扩展接口,2、数据存贮器扩展方法,MCS51 对外部数据存贮器的操作指令,CPU在访问外部数据存贮器时,在ALE下降为低电平后,P2口输出的地址信息保持不变,而P0口转为浮空,原来的低8位地址信息丢失,因此需要外部锁存器在ALE下降时把P0口的地址信息锁存起来。ALE返回低电平后,读信号RD或写信号WR有效,而PSEN始终无效,故外部程序存贮器单元不会被选通。见下页的时序图。,第六章 MCS51单片机的并行扩展接口2、数据存贮器扩展方,第六章 MCS51单片机的并行扩展接口,MCS51 读外部数据存贮器时序波形,第六章 MCS51单片机的并行扩展接口 MCS51,第六章 MCS51单片机的并行扩展接口,MCS51 写外部数据存贮器时序波形,第六章 MCS51单片机的并行扩展接口 MCS51,第六章 MCS51单片机的并行扩展接口,MCS51 和外部数据存贮器的接口方法,第六章 MCS51单片机的并行扩展接口 MCS51,第六章 MCS51单片机的并行扩展接口,三、存贮器扩展举例,下图中,扩展一片27256(32K),一片62256(32K),RAM的地址为:07FFFH(P2.7为片选信号, P2.7 =0)ROM的地址为:07FFFH(CE接地)由PSEN、RD、WR有效访问。,第六章 MCS51单片机的并行扩展接口三、存贮器扩展举例下,第六章 MCS51单片机的并行扩展接口,6.3 输入输出并行接口扩展,MCS51具有4个I/O口P0P3,但P0、P2口往往作为扩展总线使用,P3往往用其第二功能,故实际常用来作I / O口使用的就仅剩下P1口,如外接较多的I / O设备(打印机,键盘,显示器等),显然得扩展I / O接口。,I/O接口扩展一般用并行扩展,常用来扩展的器件有: 可编程并行接口8255; 三态门电路,锁存器 eg:74LS377(373,273)扩展输出,74LS244(245)扩展输入; 可编程RAM / IO扩展器8155;利用串行口的移位寄存器工作方式(方式0)也可以扩展I / O口,这时所扩展的I / O口不占用片外的RAM地址。,第六章 MCS51单片机的并行扩展接口 6.3 输入输出,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口一、采用8255A扩,第六章 MCS51单片机的并行扩展接口,P163表6-1列出了8255A的端口寻址和操作WR=0为写PA,PB,PC口及控制口。 D0D7 PA,PB,PC,控制口RD=0为读PA,PB,PC口。 PA,PB,PC D0D7,Vcc:主电源 +5VGND:线路地 8255A的引脚图及逻辑框图如下所示:,第六章 MCS51单片机的并行扩展接口8255A逻辑框图8,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口2、8255A操作方,第六章 MCS51单片机的并行扩展接口,8255A方式1输入时序波形,8255A方式1的输入逻辑组态(a),8255A方式1的输入逻辑组态(b),第六章 MCS51单片机的并行扩展接口8255A方式1输入,第六章 MCS51单片机的并行扩展接口,8255A方式1的输出逻辑组态(b),8255A方式1的输出逻辑组态(a),8255A方式1输出时序波形,第六章 MCS51单片机的并行扩展接口8255A方式1的输,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 方式2双方选通输入,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口3、8255A的控制,第六章 MCS51单片机的并行扩展接口,4、MCS-51和8255A的接口方法,eg: 8255 PA接一组开关,PB口接一组指示灯。以下程序是将开关状态读入PA口再从PB口输出。,第六章 MCS51单片机的并行扩展接口4、MCS-51和8,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:# include #include # define unchar unsigned char# define CONT 0 x90# define ADDR8D XBYTE 0 x7FFF /定义8255A端口地址# define ADDR8B XBYTE 0 x7FFD# define ADDR8A XBYTE 0 x7FFCunchar iofunc(void) /8255A 输入输出控制函数unchar mid;ADDR8D = CONT; /输出控制字 mid = ADDR8A; /读A口信息 ADDR8B = mid; /输出信息到B口 return mid;void main(void)unchar b;b = iofunc( ); /调用8255A 芯片控制程序,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,eg: 把内部RAM中30H开始的32个单元的字符输出至打印机。,第六章 MCS51单片机的并行扩展接口 eg: 把内部R,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned char#define _8255A_Control XBYTE0 xBFFF/8255A控制口的地址#define _8255A_PA XBYTE0 xBFFC /8255A的PA口的地址#define _8255A_PB XBYTE0 xBFFD /8255A的PB口的地址#define _8255A_PC XBYTE0 xBFFE /8255A的PC口的地址idata unchar text32 _at_ 0 x30; /定义从地址30H开始的32个单元的字符数组idata unchar count = 0; /text数组索引void INT0_ISR(void) interrupt 0 using 1 /外部中断0中断服务函数count = count + 1; /输出数据则自增1if(count = 32)EX0 = 0; /数据输出完,禁止外部中断0else_8255A_PB = textcount; /全部数据未输出完,继续输出数据,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,void main(void)unchar i;for(i = 0;i 32;i +)texti = i + 0 x30; /text数组初始化_8255A_Control = 0 x05; /置PC2=1(即INTEB置1)_8255A_Control = 0 xBC;/设置PB口为方式1输出_8255A_PB = textcount;/从PB口输出第一个数据EA = 1; /开中断EX0 = 1; /允许外部中断0,电平触发方式while(1);,当打印机取走CPU通过8255A的PB口送来的数据后,反馈回答信号使INTRB变为高电平,经过反向器后引起外部中断0提出中断申请,CPU响应外部中断0的中断申请,并执行相应的中断服务程序INT0_ISR。在中断服务程序中再输出一个数据至微型打印机,同样会再次引起中断,直至全部数据输出完毕并设置禁止外部中断0。,第六章 MCS51单片机的并行扩展接口void main(,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口二、采用8155A扩,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 3、8155的命令,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 状态字状态字只能读,第六章 MCS51单片机的并行扩展接口,eg: 图624是8155与MCS51单片机的一种接口逻辑。要求编写C51语言程序将MCS51单片机内部RAM 30H开始的32个单元内容转移到8155 RAM的80H开始的单元中。,第六章 MCS51单片机的并行扩展接口RAM地址: 5、M,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned charxdata unchar 8155_RAM32 _at_ 0 x7E80; /设置8155 中RAM的地址idata unchar text32 _at_ 0 x30; /单片机内部RAM数据数组void main(void)unchar i;for(i = 0;i 32;i +)texti = i + 0 x30; /初始化text数组for(i = 0;i 32;i +)8155_RAMi = texti; /将text中的字符传送到8155A指定的RAM中while(1);,eg:图6-24中使8155用作I/O和定时器工作方式,PA口定义为基本输入方式,PB口定义为基本输出方式,定时器作为方波发生器,对输入脉冲进行24分频。,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define 8155_Cmd XBYTE0 x7F00 /8155A命令字寄存器地址#define 8155_State XBYTE0 x7F00 /8155A状态字寄存器地址#define 8155_PA XBYTE0 x7F01 /8155A的PA口地址#define 8155_PB XBYTE0 x7F02 /8155A的PB口地址#define 8155_PC XBYTE0 x7F03 /8155A的PC口地址#define 8155_Tlow XBYTE0 x7F04 /8155A定时器/计数器低字节地址#define 8155_Thigh XBYTE0 x7F05 /8155A定时器/计数器高字节地址void main(void)8155_Tlow = 0 x18; /定时器低8位值(24分频)8155_Thigh = 0 x40; /输出连续方波 (M2M1 = 01)8155_Cmd = 0 xC2; /设定PA口为基本输入,PB口为基本输出,并启动定时器while(1);,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,#include # define _ADDR8D XBYTE 0 x7FFFvoid func1(unsigned char x) /74LS377输出控制函数_ADDR8D = x;,第六章 MCS51单片机的并行扩展接口WRQ0Q774L,第六章 MCS51单片机的并行扩展接口,以下程序是把累加器的内容从74LS377输出,读74LS245的数据到累加器A中。,#include # define _ADDR245D XBYTE0 xBFFF# define _ADDR377D XBYTE0 xBFFFunsigned char func2(unsigned char x )/ 74LS244 输入控制函数 unsigned char Da;Da = _ADDR245D;_ADDR377D=x;,第六章 MCS51单片机的并行扩展接口 用74LS245,第六章 MCS51单片机的并行扩展接口,第六章 MCS51单片机的并行扩展接口 采用锁存器扩展选通,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include#define _PORT_1 XBYTE0 xBFFF #define unchar unsigned charunchar idata IDA0 x20 _at_ 0 x30/置内部RAM数据地址30H,数据长度20Hunchar kk; void main (void)kk=0;IT0 = 1; /外部中断0选为边沿触发方式EA = 1; /开中断EX0 = 1; /允许外部中断0中断while(1);void service_INT0 (void) interrupt 1 using 1IDAkk = _PORT_1;kk+;if ( kk 0 x20 )kk=0;,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,四、采用串行口扩展并行I/O接口,eg:图630中从两个8位并行口读入32字节的数据,并把数据转存到内部RAM以30H为首地址的单元中。 需读入32个字节的数据,则显然需从第一片74LS165读入16个字节的数据,从第二片74LS165读入16个字节的数据,P1.0控制置入一次,则串行口应接收到一组数据。C51参考程序如下:,第六章 MCS51单片机的并行扩展接口四、采用串行口扩展并,第六章 MCS51单片机的并行扩展接口,#include #defined unchar unsigned charsbit P1_0 = P10; /与74LS165的移位/锁存端(S/L)相连sbit P3_0 = P30; /与74LS165的串行输出端相连sbit P3_1 = P31; /与74LS165的移位脉冲输出端idata unchar text32 _at_ 0 x30; /首地址为30H的32字节数组void main(void)unsigned char i;SCON = 0 x10; /串行口为方式0,允许接收P1_0=0; P1_0=1;/74LS165置入数据,允许74LS165移位 for(i = 0;i 16;i +)while(!RI); /等待接收完8位数据text2*i = SBUF;RI = 0; /准备下一次接收while(!RI);text2*i + 1 = SBUF;while(1);,第六章 MCS51单片机的并行扩展接口#include ,第六章 MCS51单片机的并行扩展接口,2、采用串入并出8位移位寄存器74LS164扩展并行输出口,输出时,将发送数据缓冲器中的内容串行地移到外部的移位寄存器中。 RxD(P3.0)为串行输出与74LS164数据输入端相连;TxD(P3.1)为移位脉冲输出,与74LS164的时钟脉冲输入端相连;由P1.0口线控制74LS164的清除端。,第六章 MCS51单片机的并行扩展接口 2、采用串入并出8,第六章 MCS51单片机的并行扩展接口,eg:图631中将内部RAM 30H、31H单元的内容输出到移位寄存器。C51参考程序如下:#include #include #defined unchar unsigned charidata unchar text2 _at_ 0 x30; /设置以地址30H为首的数组void main(void)text0 = 0 x55; /数组初始化,可为任意值text1 = 0 xAA;SCON = 0 x10; /串行口为方式0,允许接收SBUF = text0; /发送第一个数据while(!TI);TI = 0;SBUF = text1; /发送第二个数据while(1);,第六章 MCS51单片机的并行扩展接口 eg,第六章 MCS51单片机的并行本扩展接口,6.4 D/A转换器接口扩展,D/A是将数字量转换成模拟量的器件, D/A的输出是电压或电流信号。衡量D/A性能的主要参数是:,分辨率:即输出的模拟量的最小变化量。 满刻度误差:即输入为全1时,实际输出电压与理 想值之差。 输出范围: 转换时间:从转换器的输入改变到输出稳定的时 间间隔。是否容易与CPU接口,第六章 MCS51单片机的并行本扩展接口 6.4 D/A转,1、D / A转换器的转换特性,对n位D/A转换器,其输入是n位二进制数字输入信号Din,将Din看成小数二进制数码,则Din可表示为:,设D/A转换器的基准电压为UR,则理想D/A转换器的输出电压为:,则满量程输出电压值为:,即满量程值比基准电压小一个最低有效位(LSB)的数码。,第六章 MCS51单片机的并行扩展接口,一、 R2R梯形电阻式D/A转换原理,1、D / A转换器的转换特性对n位D/A转换器,其输入是n,即模拟输出电压Uo与二进制输入信号成正比。但电路用到的电阻规格太多,则电阻差别大,故精度不高。,2、D / A转换器结构及原理,单片D/A转换器的基本组成包括基准电压源、解码网络、电子开关阵列和相加运算放大器等部分,其中电阻解码网络是其核心,常用的解码网络有二进制加权电阻网络和R2R梯形电阻网络。,加权电阻网络电路,模拟开关由相应位的二进制数码控制,当某位为1时,模拟开关与参考电压源接通,则流向求和点A的总电流为:,第六章 MCS51单片机的并行扩展接口,即模拟输出电压Uo与二进制输入信号成正比。但电路用到的电阻规,R2R梯形电阻网络电路,图中A1An各节点往右看,对地的电阻值均等于R。从左到右,各路电流分配规律是IR/2, IR/22,, IR/2n,则输出电压为:,即模拟输出电压Uo与二进制输入信号成正比。,第六章 MCS51单片机的并行扩展接口,R2R梯形电阻网络电路 图中A1An各,第六章 MCS51单片机的并行扩展接口,二、 D/A芯片DAC0832的扩展,第六章 MCS51单片机的并行扩展接口二、 D/A芯片DA,第六章 MCS51单片机的并行扩展接口,VREF :基准电压输入线,-10 +10V VCC :+5+15V AGND:模拟地, DGND:数字地,,单缓冲方式 若应用系统中只有一路D/A转换或虽然有多路转换,但并不要求各路信号同步输出时,则采用单缓冲方式来接口。方法是:使锁存器和DAC寄存器同时接收数据。双缓冲方式 当多路D/A信号要求同步输出时,则采用双缓冲方式。方法是:分别使其输入锁存器接收数据;同时传送数据到其 DAC寄存器,以实现多路转换同步输出。,第六章 MCS51单片机的并行扩展接口 VREF :,第六章 MCS51单片机的并行扩展接口,直通方式 所有控制信号均有效,适宜于连续控制时。,3、电流输出转换成电压输出,MCS51执行下面的程序后在运放的输出端产生一个锯齿型的电压波形。,第六章 MCS51单片机的并行扩展接口 直通方式3、电流输,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define DAC0832_ADR XBYTE0 x7FFF /DAC0832寄存器地址#define unchar unsigned char#define MAX 0 xA0; /定义锯齿波的高度unchar count = 0;void main(void)while(1) DAC0832_ADR = count;count +;if( count MAX ) count = 0;,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,双缓冲方式应用的接口方法 先将数据写入锁存器 CS有效; 同时选中各路寄存器(XFER有效),输出模拟量。,第六章 MCS51单片机的并行扩展接口 双缓冲方式应用的接,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned char#define _DAC0832_1 XBYTE0 xDFFF /0832(1)的数据锁存器地址#define _DAC0832_2 XBYTE0 xBFFF /0832(2)的数据锁存器地址#define _DAC0832_SYN XBYTE0 x7FFF /两片共同的寄存器的地址const unchar data1 = 0 x55;/准备输出数据const unchar data2 = 0 xAA;void main(void)_DAC0832_1 = data1; /数据送入0832(1)的数据锁存器_DAC0832_2 = data2; /数据送入0832(2)的数据锁存器_DAC0832_SYN = 0; /同时启动两路D/A转换,同步输出while(1);,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,三、D/A芯片AD7520的扩展,低功耗的电流输出的10位、D/A器件,其片内无锁存器。1、AD7520结构,D0D09 :数字量输入线 RFE :反馈信号输入线 Iout1 :电流输出端1,其值随DAC内容线性变化 Iout2 :电流输出端2, Iout1+ Iout2 =常数 VREF :基准电压输入线,-10+10V VCC :电源+5+15V GND :线路地,,第六章 MCS51单片机的并行扩展接口三、D/A芯片AD7,第六章 MCS51单片机的并行扩展接口,74LS74(1)的口地址为0BFFFH,74LS74(2)和74LS377的口地址均为7FFFH。数据须分两次输出,在将高两位数据输出到74LS74(1)后,将低8位数据送到74LS377的同时,把已送到74LS74(1)的内容送到74LS74(2)上,因此10位数据是同时到达AD7520的数据输入端的。,第六章 MCS51单片机的并行扩展接口MSB+28P2.,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned char#define 74LS74_1 XBYTE0 xBFFF /74LS(1)的地址#define AD7520 XBYTE0 x7FFF /74LS(2) 和AD7520的地址const unchar data1 = 0 x55;/准备低2位数据const unchar data2 = 0 xAA;/准备高8位数据void main(void)74LS74_1 = data1; /低2位数据送入74LS(1)AD7520 = data2; /数据同时到达AD7520 while(1);,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,衡量A / D性能的主要参数是: 分辨率: 即输出的数字量变化一个相邻的值所对应的输 入模拟量的变化值。 满刻度误差:即输出全1时输入电压与理想输入量值之差。 转换速率: 完成一次转换所需时间的倒数。 转换精度: 量化值与一个理想A/D转换器进行模/数转换的差 值。或者说是实际A/D与理想A/D的差别。 是否可方便地与CPU接口,第六章 MCS51单片机的并行扩展接口 6.5 A/D转换,第六章 MCS51单片机的并行扩展接口,MCS51个别单片机内部具有A/D转换线路(例如:8XC51GA/GB内具有8路8位逐次逼近式A/D)。A/D种类:,逐次逼近式 双积分式(单积分、四积分)电荷平衡式 并行式,第六章 MCS51单片机的并行扩展接口MCS51个别单片,第六章 MCS51单片机的并行扩展接口,双积分A/D输出是采样周期内输入信号Vx的平均值,因此对叠加在输入信号的交流干扰有很强的抑制能力,但转换速度较慢。,二、MC14433的接口方法,第六章 MCS51单片机的并行扩展接口 双积,第六章 MCS51单片机的并行扩展接口,2、MCS51与MC14433的接口方法,第六章 MCS51单片机的并行扩展接口2、MCS51与M,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned charsbit P1_0 = P10; /P1.0P1.3连MC14433的Q0Q3sbit P1_1 = P11;sbit P1_2 = P12; sbit P1_3 = P13;sbit P1_4 = P14; /P1.4P1.7连MC14433的DS1DS4sbit P1_5 = P15;sbit P1_6 = P16;sbit P1_7 = P17;idata unchar ADC_Data2 _at_ 0 x20;/保存MC14433的转换结果 void main()IT1 = 1; /设置外部中断1为边沿触发方式IE = 0 x84; /允许外部中断1中断P1 = 0 xFF;. .,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,void INT1_ISR(void) interrupt 2 using 1 /外部中断1服务函数while(!P1_4); /等待千位选通DS1有效if(!P1_0) /P1_0 = 1则超量程,中断结束if(P1_2) /Vx = 0ADC_Data0 ,第六章 MCS51单片机的并行扩展接口void INT1_,三、逐次逼近式A/D转换原理,第六章 MCS51单片机的并行扩展接口,三、逐次逼近式A/D转换原理然后经D/A转换成对应的模拟电压,第六章 MCS51单片机的并行扩展接口,各位仍为0,然后再经D / A转换成对应的模拟电压Us,再比较以确定这一位的1是保留还是要清除。这样逐位进行比较,直至D/A转换器输出电压Us与Ui相等或Ui-Us小于最大量化误差值为止。比较结束时,寄存器中所保留的代码就是与Ui相应的数字代码,从而完成了A/D转换。这种A/D只需n次操作就能完成n位的转换,转换速度较高,精度也较高,电路结构简单。,第六章 MCS51单片机的并行扩展接口各位仍为0,然后再经,第六章 MCS51单片机的并行扩展接口,eg:在一个8路数据采集系统中。要求在P1.0输入的同步脉冲控制下对8路模拟量依次各采集256个数据,存放在外部0B000H0BFFFH单元中(0B000H0B0FFH中为IN0的采样数据, 0B100H0B1FFH中为IN1的采样数据, 0B700H0B7FFH中为IN07的采样数据。,第六章 MCS51单片机的并行扩展接口eg:在一个8路数据,第六章 MCS51单片机的并行扩展接口,C51参考程序如下:#include #include #define unchar unsigned charsbit P1_0 = P10; /P1_0 = 0;启动AD转换sbit P3_3 = P33;unchar xdata ADC0809_IN8 _at_ 0 x7FF8; /8路模拟输入unchar pdata extern_RAM0 x800 _at_ 0 xB000; /外部RAM地址void main(void)unchar i, j;while(P1_0); /等待启动转换for(i = 0; i 256; i +)for(j = 0; j 8; j +)/每一路采样一次数据ADC0809_INj = 0; /启动AD转换while(P3_3); /查询AD是否转换完毕extern_RAMj*256 + i = ADC0809_INj;while(1);,第六章 MCS51单片机的并行扩展接口C51参考程序如下:,第六章 MCS51单片机的并行扩展接口,五、ADC0816接口方法,ADC0816是一种16路模拟输入,8位逐次逼近式A/D。,第六章 MCS51单片机的并行扩展接口五、ADC0816接,第六章 MCS51单片机的并行扩展接口,6.6 显示、键盘及接口,一、 LED显示器及接口,在单片机应用系统中,使用的显示器主要有LED(发光二极管显示器)和LCD(液晶显示器)。1、LED显示器的结构 LED显示器是由发光二极管来显示字段的器件。,第六章 MCS51单片机的并行扩展接口 6.6 显示、键,第六章 MCS51单片机的并行扩展接口,共阴极与共阳极的段选码互为反码。,第六章 MCS51单片机的并行扩展接口 共阴极与共阳,第六章 MCS51单片机的并行扩展接口,静态显示方式就是当显示器显示某一个字符时,相应的发光二极管恒定地

    注意事项

    本文(单片机课件第六章.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开