51单片机ALE引脚
ALE/PROG:?當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。
在FLASH編程期間,此引腳用于輸入編程脈沖。
在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用?于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),?ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。
當(dāng)訪問外部存儲(chǔ)器時(shí),ALE作為鎖存擴(kuò)展地址的低8位字節(jié)的控制信號(hào)。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE以十二分之一振蕩頻率輸出正脈沖,同時(shí)這個(gè)引腳也是EPROM編程時(shí)的編程脈沖輸入端。
但是這個(gè)引腳還有一個(gè)非常有用的功能往往被很多人給忽視了,那就是當(dāng)非訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE以六分之一振蕩?頻率固定輸出正脈沖,?8051一個(gè)機(jī)器周期=6個(gè)狀態(tài)周期=12個(gè)振蕩周期,若采用6MHz的晶體振蕩器,則ALE會(huì)發(fā)出1MHz的固定的正脈沖。因此它可以用來做外部時(shí)鐘或?定時(shí)。如果我們把這個(gè)功能應(yīng)用于實(shí)際,可能給我們的設(shè)計(jì)帶來簡(jiǎn)化,降低生產(chǎn)成本。
ALE腳是在使用MOVX、MOVC指令時(shí)才會(huì)變成有效(這些指令都使用到外部RAM或ROM的地址。這些指令都有?一個(gè)特點(diǎn):地址和數(shù)據(jù)分時(shí)出現(xiàn)在P0口)。使用C寫程序時(shí),要使用它有效,可用訪問內(nèi)部RAM地址的方法。如:uVariable=*((char?*)0x12C),把0x12C地址的內(nèi)容給uVariable變量。這個(gè)過程有效的腳為ALE、RD。
這個(gè)信號(hào)線的信號(hào)生成是MCU硬件電路實(shí)現(xiàn)的,不可以人工控制。?
在某些內(nèi)置TOM的MCU里,可以關(guān)閉ALE信號(hào)輸出,以降低EMI。?
總結(jié)
以上是生活随笔為你收集整理的51单片机ALE引脚的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java中都是值传递 pass-by-v
- 下一篇: 情歌-吉他谱