单片机课件第四章MCS-51系列单片机的扩展.ppt

上传人:小飞机 文档编号:5003538 上传时间:2023-05-28 格式:PPT 页数:75 大小:1.02MB
返回 下载 相关 举报
单片机课件第四章MCS-51系列单片机的扩展.ppt_第1页
第1页 / 共75页
单片机课件第四章MCS-51系列单片机的扩展.ppt_第2页
第2页 / 共75页
单片机课件第四章MCS-51系列单片机的扩展.ppt_第3页
第3页 / 共75页
单片机课件第四章MCS-51系列单片机的扩展.ppt_第4页
第4页 / 共75页
单片机课件第四章MCS-51系列单片机的扩展.ppt_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《单片机课件第四章MCS-51系列单片机的扩展.ppt》由会员分享,可在线阅读,更多相关《单片机课件第四章MCS-51系列单片机的扩展.ppt(75页珍藏版)》请在三一办公上搜索。

1、1,第四章MCS-51系列单片机的扩展,2,程序存储器ROM的扩展,数据存储器RAM的扩展,并行I/O口的扩展,本章内容,3,问题的提出,在单片机应用系统的设计中,往往出现RAM,ROM或者I/O口不够的情况,怎么办?,ROM的扩展,RAM的扩展,并行I/O口的扩展,4,MCS-51可扩展片外数据存储器、程序存储器各64KB。主要通过P0和P2口进行扩展:P0口:外部存储器的低8位地址/数据复用总线;P2口:外部存储器的高8位地址总线。,4-1 最小系统与程序存储器的扩展,扩展总线的产生,常用单向总线驱动器 74LS244、74LS240、74LS241;常用双向总线驱动器 74LS245。,

2、总线驱动器,一、8031最小系统(图 4-4),1、最小系统工作时序(图4-5),注意:上述时序是在取指令过程中自动产生,9,2、EPROM芯片,EPROM:紫外线可擦除(紫外线照射1520min)、电可编程的半导体只读存储器,掉电后信息不丢失。,10,11,EPROM的操作方式,12,3、常用地址锁存器芯片及其连接,二、用EPROM的程序存储器扩展,程序存储器扩展的基本原理,/EA:程序存储器选择信号输入线“0”只选用外部程序存储器,“1”0000H0FFFH内部;0FFFH以上外部8031、8032的/EA必须接地!/PSEN 外部程序存储器读选通信号输出线。从外部ROM取指或常数时,每机

3、器周期2次有效,访问外部RAM时无此信号。,15,1、用单片EPROM的扩展电路(P 141 图4-10),8051 27128(16K,14位地址线),地址:XX000000 00000000 XX111111 11111111 0000H 3FFFH(片内:0000H 0FFFH),2、用多片EPROM的扩展电路,P2.7 P2.6 P2.5 P2.4P0.02764(1)X X 0 0.01.1 0000H1FFFH C000HDFFFH,2764(2)X X 1 0.01.1 2000H3FFFH E000HFFFFH,3、扩展多片芯片时的片选方法:,线选法:连线简单,占口线多;单根高

4、位地址线或控制线直接加到存储器的片选端。,2732(1)0000H0FFFH2732(2)1000H1FFFH2732(3)2000H2FFFH2732(4)3000H3FFFH,译码法:省口线,增加芯片74LS1392-4译码器74LS1383-8译码器74LS1544-16译码器,三、用E2PROM的程序存储器扩展,E2PROM:电可擦除、电可编程的半导体存储器,掉电后信息不丢失。+5V供电下即可编程,可进行在线改写。,与的程序存储器扩展的区别?自学,4-2 数据存储器的扩展,一、用静态RAM的数据存储器扩展,1、静态RAM芯片(P 145 图 4-18),21,22,6116、6264、

5、62256的工作方式工作方式 CEOEWEIO0IO7(片选)(输出允许)(写允许)(输入/输出)未选中 H 高阻 读 L L H数据输出 写 L H L数据输入,用E2PROM作数据存储器:读写时间长动态RAM芯片iRAM刷新电路集成在芯片中,2186、2187,8K8,2、用静态RAM的扩展电路,地址:XXXXX000 00000000XXXXX111 11111111 0000H 07FFH0800H0FFFH F800H FFFFH,多片静态RAM的扩展,地址:XXX00000 00000000XXX11111 11111111 0000H1FFFH 2000H3FFFH 4000H5

6、FFFH 6000H7FFFH E000H FFFFH,3、兼有片外ROM和片外RAM的扩展电路,4、工作时序,MCS-51对外部数据存储器的操作指令:MOVXA,Ri;(P2)(Ri)AMOVX Ri,A;(A)(P2)(Ri)MOVX A,DPTR;(DPTR)AMOVX DPTR,A;(A)(DPTR),28,4-3 输入输出口的扩展,一、用多功能芯片的扩展(P 151 表4-7),扩展的I/O接口多,兼有RAM、ROM、EPROM、定时器等。芯片内部设有各种命令寄存器,可通过程序设计设定或修改这些命令寄存器的内容(叫做设控制字),从而改变这些接口芯片的工作方式和状态。,MCS-51:P

7、0、P1、P2、P3,当系统需连接较多的I/O设备时要扩展I/O口。用多功能芯片的扩展;用TTL芯片的扩展;用串行口的扩展。,二、用TTL芯片的扩展,1、用74LS377扩展输出口(8D锁存器)(图 4-38),地址377(1)FEH A0G377(2)FDH A1G,将一个数据从377(1)输出的指令MOVR0,#0FEHMOVA,#dataMOVXR0,A,2、用74LS244扩展输入口(P165 图 4-41),3、通过串行口扩展(方式 0),地址244(1)00H244(2)01H,32,习题,、一个8751应用系统,需扩展一片6116RAM作为数据存储器,地址从0000H开始,请画出

8、扩展电路图。对于该系统,若要将片内EPROM中自100H单元开始的10个字节的内容依次移到片外RAM的100H单元开始的10个字节中去,编写该程序段。,33,第五章MCS-51系列单片机的接口与应用,5-1 拨盘开关、键盘与单片机的接口,一、拨盘开关与单片机的接口,1、拨盘开关(图 5-2),2、拨盘开关应用实例(图 5-3),READ:CLR P1.0MOVX A,R0ANL A,#0FHMOV 20H,AMOVX A,R0ANL A,#0F0HSWAP AMOV 21H,ARET,拨盘输入程序:将千、百、十、个 位依次读入存放在 8031 片内RAM30H33H单元。,RDS:MOVR0,

9、#30H;存放单元首址MOVR2,#7FH;控制字(千位);输入方式MOVR3,#04H;读4个BCD码LOOP:MOVA,R2MOVP1,AMOVA,P1;读入BCD码ANLA,#0FH;屏蔽高4位MOVR0,A;送入存储单元INCR0;指向下一个存储单元MOVA,R2;准备下一片拨盘的控制端置0RRAMOVR2,ADJNZR3,LOOPRET,二、键盘与单片机的接口,1、键盘工作原理,行信号:扫瞄、输出低电平列信号:读入、判是否有键合上,若有键合上,行、列信号组成一个特征字,即键值。,扫描程序安排:主程序、定时、中断。,10111011,11100111,11011110,2、键盘应用示例

10、,5-2 显示器与单片机的接口,是常用廉价输出设备,由若干个LED组成,当LED导通时,相应的一个点或一个笔画点亮。控制不同的二极管导通,显示各种字符。,点阵式结构:一个LED导通,点亮一个点,字型逼真,种类多,控制复杂;,八段数码管:一个LED导通,点亮一个笔画,字型失真,种类少,控制简单。,段码:与数码(字符)对应的笔画信息,输出译码:软件译码:段码表,查表输出;硬件译码:BCD-7段锁存、译码、驱动芯片CD4511、74LS46、47。,静态显示:相应的发光二极管恒定地导通或截止,亮度高,占I/O口多。,动态显示:轮流点亮各位LED;亮度:导通电流、占空比。,动态显示程序设计(P180)

11、:1、设置显示缓冲区2、代码转换-查表法3、软件保证逐位点亮八段LED(段选码、位选码),45,8279可编程序键盘/显示器专用接口芯片,键盘接口功能:键盘、乒乓开关、钮子开关显示器接口功能:发光二级管(LED)、液晶显示器(LCD)、一般指示灯64个按键,自动扫描,存入FIFO RAM;16*8位显示RAM,自动扫描;8或16位LED数码管显示。,1、8279的引脚功能,40脚双列直插式封装。P181 图5-11,表5-2,46,2、8279的电路逻辑(P181 图5-12),芯片接口控制逻辑、键盘接口控制逻辑、显示器接口控制,1)芯片接口控制逻辑,实现8279和单片机的连接数据缓冲器双向、

12、三态;信号引脚D7D0实现芯片内部总线和系统总线的连接,进行8279和单片机之间的数据传送。I/O控制电路用于接受单片机方面送来的控制信号,并产生所需的8279内部控制信号,例如控制数据缓冲器的数据输入输出等。中断请求产生电路根据键盘存储区的状态产生中断请求信号。IRQ,47,2)键盘接口控制逻辑,扫描电路,4位扫描信号从扫描线SL0SL3输出。两种输出形式:内部译码形式,即SL0SL3提供的就是键盘扫描信号,可直接使用4*8键盘和4位显示器 外部译码形式,SL0SL3的信号经外部译码器扩充后才去扫描(最多可扩到16条),适用于键数较多的键盘。,48,去抖动及键码生成电路,键盘存储区FIFO

13、RAM,扫描回送电路(输入缓冲器),输入每次扫描的列线状态,(RL0RL7),以进行闭合键的搜索。,软件去抖动,(延时10ms)。键码生成:将键的地址(行列)和附加的换挡键、控制键的状态结合起来,生成闭合的键码数据,送入FIFO存储区中。,8个FIFO单元,存储闭合键的键码数据。,时序和控制逻辑,用于对键盘扫描进行控制。,49,3)显示器接口控制逻辑,显示存储区,显示缓冲器,16*8显示用RAM,每个8位RAM单元对应一位LED显示器,即015地址对应LED显示器的015位,0位在最左边,15最右边。,用于为显示器提供段控数据。使用时,8279自动对显示器扫描,将显示缓冲器中的数据输出在显示器

14、上显示出来。,50,3、8279的寄存器,1)命令寄存器,共有3个可寻址的寄存器,对应两个地址(A0)数据寄存器:A0=0。命令寄存器、状态寄存器:A0=1。写命令寄存器,读状态寄存器。,D7 D6 D5是命令的特征位。,51,10 显示RAM全部清零;显示RAM全部清成20H;111 显示RAM全部置1;0 不消除显示RAM。,D4=1、每次读出或写入后地址自动加1;D4=0、只读出或写入一个单元。,D3=1 屏蔽高半字节;D2=1 屏蔽低半字节。,D1=1 消隐高半字节;D0=1 消隐低半字节。,D1=1 清除FIFO状态标志(空,无数据),复位IRQ。,D0=1 总清除:包括FIFO R

15、AM,显示RAM。,52,FIFO RAM 中数据的个数,2)状态寄存器,用于指出键数据缓冲器FIFO RAM中的数据字节个数及是否出错等。,FIFO RAM已满,“不足”错误,即FIFO RAM已空,仍企图读出。,“超出”错误,即FIFO RAM已满,仍企图写入。,用于传感器矩阵输入方式,几个传感器同时闭合置“1”。,显示无效,清除命令未完成时置1,此时对显示RAM“写”无效。,53,闭合键的列号(由RL0RL7确定),即FIFO RAM中最前面的那个单元,其内容为按键信息,通过读它而把键信息输入单片机,进行处理。,闭合键的行号(扫描计数值)。,SHIFT的状态(换挡键)。,CNTL的状态(

16、控制键)。,3)数据寄存器,在传感器扫描方式和选通输入方式中,输入数据即为RL0RL7的输入状态,54,MOV DPTR,#2001HMOV A,#0D0H;将显示RAM全部置为“0”MOVX DPTR,AMOV A,#00H;8*8字符显示左边输入,外部译码键扫描方式,双键互锁MOVX DPTR,A MOV A,#2AH;分频系数,10分频。MOVX DPTR,A,编程举例(设8279芯片的地址为2000H),8279的初始化,55,取键值,MOV DPTR,#2001HMOV A,#40H;读FIFO RAM命令,仅读000号单元MOVX DPTR,AMOV DPTR,#2000HMOVX

17、 A,DPTR;读出000号单元的键值:;键分析,处理。,56,写显示RAM,MOV DPTR,#2001HMOV A,#90H;写显示RAM命令,000号单元开始,写入后地址自动加1MOVX DPTR,A.;准备写 RAM内容。MOV DPTR,#2000HMOVX DPTR,A;写显示RAM,5-3 行程开关、继电器、晶闸管元件与单片机的接口,一、行程开关、继电器触点与单片机的接口,二、继电器线圈与单片机的接口,“1”不吸合“0”吸合,三、晶闸管元件与单片机的接口,“1”导通“0”截止,5-4 A/、/转换芯片与单片机的接口,一、A/D转换芯片与单片机的接口,常用:双积分式、逐次逼近式,1

18、、5G14433应用示例(MC14433)ICL7135,62,3位半BCD码输出,范围:00001999,211=2048;转换速度:110次s,工作电压:5V;输入电压:199.9 mv 或 1.999 v;基准电压:200 mv 或 2v。,引脚24:Q3Q0转换结果输出端,一个BCD码;DS1DS4指示BCD码的位,DS1 千位、.、DS4个位;当DS1=1时,利用Q2、Q3输出数的极性、超量程标志。,注意:,5G14433的输出不能直接与单片机的数据线相连;转换过程控制:将EOC与DU固定相连,连续转换;程序以中断方式,从千位至个位依次取数,以压缩BCD码形式存放。,START、AL

19、E启动A转换EOC转换结束信号:低电平 开始转换;高电平 结束。OE输出允许信号,用以打开三态门,2、ADC 0809 应用示例,8位8通道诼次比较式A/D转换器,转换速度:100us左右芯片时钟频率 640 KHZ片内有地址译码和锁存,输出也有三态锁存,可直接与单片机相连。,8031 与 ADC 0809 的连接:,图 5-23 ADC0809应用示例,转换程序:P 192ORG 0000HLJMP SAMPLE外部中断 0服务程序:ORG 0003HTRANS:LJMP TRANSMOVX A,R1SAMPLE:MOV R0,AMOV R0,#30HDJNZ R2,INPUTMOV R1,

20、#78HSJMP DONEMOV R2,#08HINPUT:MOVX R1,AINC R0SETB EAINC R1SETB EX0MOVX R1,ACLR F0RETINEXT:DONE:JBC F0,ELSESETB F0SJMP NEXTRETIELSE:,10位、12位A转换器ADC1210与单片机的连接:输出没有三态锁存,外接三态缓冲器,数据分两次送 8031。,二、D/A转换芯片与单片机的接口,1、DAC0832应用示例8位T型电阻解码网络,结构框图,两个8位输入数据锁存器,可用不同的信号进行控制,既可使用单缓冲,也可使用双缓冲,对于多路D/A转换结果需要同时输出的情况特别合适。,

21、DAC0832与 8031的连接,转换程序:DAC:MOV R1,#30HMOV R0,#0DFHMOV A,R1MOVX R0,A,2、利用DA转换芯片产生波形(P 195 图5-26),8位D/A转换的分辨率为:(5V-0V)/255步=0.01960.02V/步下降一步的时间:1/256=4ms,产生锯齿波的程序:DAC:MOV R0,#0DFHMOV A,#0FFHLOP:MOVX R0,AACALL DELAYDEC ASJMP LOP.,73,3、DAC1210应用示例,74,75,习题与思考题十六(P187、201),1、什么是DAC0832接口的单缓冲方式?双缓冲方式?它们各占用8031外部RAM几个单元?软件编程有什么区别?2、用8031单片机和DAC0832组成单缓冲工作方式产生梯形波。斜边采用步幅为1的线形波,幅度从00H到80H,水平部分靠调用延时程序来维持,写出梯形波产生程序。3、若梯形波的水平部分用8031内部定时器来产生,程序应如何修改?4、若8031和ADC0809的连接采用图5-30的方式,用8031内部定时器来控制对模拟信号的采集,要求每分钟采集一次,写出对8路信号采集一遍的程序。5、静态显示电路和动态显示电路各有什么特点?,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号