www.whkt.net > 单片机AlE指令

单片机AlE指令

ALE是地址锁存允许引脚,当访问外部存储器时,ALE的输出用于锁存地址的低位字节,以便使P0口实现地址/数据复用.当不访问外部程序存储器时,ALE端将输出一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当做一个时钟向外输出.我想这里用的就是ALE输出的正脉冲吧.

ALE是地址锁存,要扩展外部存储器,只能用ALE作为地址数据锁存器的选通信号. 因为在一个读写周期里,P0既有地址信号还有数据信号,区分这两个信号就是靠的ALE信号

1. ale,故名思意,“地址 锁存 允许”.具体动作时机为:访问外部 rom/ram时,p0口先发出一个字节到74hc373芯片,然后 ale 给出一个脉冲,把这个字节锁在373芯片输出端,成为a0~a7, ale使命完成.而p2口出现的是a8~a15. 当地址就绪

ALE就是地址锁存控制信号,ALE吧P0输出低8位地址送锁存器存起来,视线地位和数据的隔离,另外ALE是以晶振1/6固定频率输出的正脉冲,如果系统无使用外部存储器时可以当做外部时钟使用(仅限没有外接存储器的情况)

ALE(Address Lock Enable)功能是在访问外部存储器时,P0口做为地址/数据复用口,ALE信号用于锁存低8位地址.当ALE信号为高电平时,P0口上的信息为低8位地址,在ALE信号的下降沿时将P0口上的低8位地址送到地址锁存器锁存起来.

单片机的时钟根源上都是晶振上发展而来的,也就是说,晶振,是整个单片机的时钟树的树根,由这颗树根上,发展出其他的枝叶,例如单片机指令读取时钟,定时器时钟,外中断采样时钟,串口波特率发生时钟,ALE时钟等等.ALE时钟,是众多单片机时钟中的一员,是单片机对机器时钟的二分频,所以是机器时钟的一半.为什么会这样呢?因为ALE是用于外部总线的,外部总线是地址总线和数据总线复用,也就是说,有一个时钟周期用来读写地址,另一个时钟用来读写数据,所以,ALE的频率只能是单片机机器频率的一半.

ALE是地址锁存控制脚,ORG是程序的入口地址

ALE是总线地址有效信号,没有直接的C语言可以操作.但是在扩展外部SRAM的时候,A15..7,AD7..0充当地址和数据总线时,单片机在执行指令时自动赋予ALE地址有效信号,具体可以参看单片机数据手册,总线时序部分.程序如:#include //XBYTE[];#define ram_dat XBYTE[0x0300] //假设sram某一存储单元地址void main (void){ ram_dat = 0x55; //将0x55存储到SRAM地址单元,指令执行过程中,ALE会有效..}

在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或 时钟使用.然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过.如果需要,通过将地址为8EH的SFR的第0位置 “1”,ALE操作将无效.这一位置 “1”,ALE 仅在执行MOVX 或MOVC指令时有效.否则,ALE 将被微弱拉高.这个ALE 使 能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效.

ALE写代码时不用定义,这是锁存信号,使用MOVX或MOVC指令时,自动生效.

友情链接:xyjl.net | zhnq.net | 369-e.com | xcxd.net | 2639.net | 网站地图

All rights reserved Powered by www.whkt.net

copyright ©right 2010-2021。
www.whkt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com