Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2970358
  • 博文数量: 523
  • 博客积分: 11908
  • 博客等级: 上将
  • 技术积分: 5475
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-03 15:50
文章分类

全部博文(523)

文章存档

2019年(3)

2013年(4)

2012年(71)

2011年(78)

2010年(57)

2009年(310)

分类:

2009-06-19 22:36:50

ALE/PROG: 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用 于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

当访问外部存储器时,ALE作为锁存扩展地址的低8位字节的控制信号。当访问外部数据存储器时,ALE以十二分之一振荡频率输出正脉冲,同时这个引脚也是EPROM编程时的编程脉冲输入端。

但是这个引脚还有一个非常有用的功能往往被很多人给忽视了,那就是当非访问外部数据存储器时,ALE以六分之一振荡 频率固定输出正脉冲, 8051一个机器周期=6个状态周期=12个振荡周期,若采用6MHz的晶体振荡器,则ALE会发出1MHz的固定的正脉冲。因此它可以用来做外部时钟或 定时。如果我们把这个功能应用与实际,可能给我们的设计带来简化,降低生产成本。

ALE脚是在使用MOVX、MOVC指令时才会变成有效(这些指令都使用到外部RAM或ROM的地址。这些指令都有 一个特点:地址和数据分时出现在P0口)。使用C写程序时,要使用它有效,可用访问内部RAM地址的方法。如:uVariable=*((char *)0x12C),把0x12C地址的内容给uVariable变量。这个过程有效的脚为ALE、RD。

这个信号线的信号生成是MCU硬件电路实现的,不可以人工控制。
在某些内置TOM的MCU里,可以关闭ALE信号输出,以降低EMI。
阅读(3782) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-07-01 03:10:41

好文章,学习了 自我介绍一下,我是ARM技术论坛 www.armjishu.com 的一名嵌入式老师 我的QQ号码是7819226,咱们有空切磋一下啊,很高兴能认识你啊