標(biāo)題: 51單片機(jī)ALE口(30腳)的作用是什么? [打印本頁]

作者: chysh    時(shí)間: 2017-6-20 19:54
標(biāo)題: 51單片機(jī)ALE口(30腳)的作用是什么?
51/52單片機(jī)ALE口(30腳)的是用來干什么的,在什么情況下用到?需要注意什么問題?
作者: yzwzfyz    時(shí)間: 2017-6-21 04:41
51的P0口有兩個(gè)功能,既可以做16位地址的高字節(jié),又可以做數(shù)據(jù)線。
如果實(shí)現(xiàn)兩個(gè)功能呢?分時(shí)。!,即:有時(shí)作為地址、有時(shí)作為數(shù)據(jù)。
又如何做到分時(shí)呢。用ALE做分時(shí)“標(biāo)記”!
所以:ALE是擴(kuò)充外部存儲(chǔ)器時(shí)用的。
CPU訪問外部存儲(chǔ)器時(shí):先在P0口送出地址高位,再送出ALE,這樣就方便你用ALE脈沖將高位地址鎖存起來!否則,讀寫數(shù)據(jù)時(shí)就沒有高位地址了!
然后,CPU將P0作為數(shù)據(jù)口,讀寫數(shù)據(jù)。
另外,ALE頻率相對(duì)固定(不保險(xiǎn)),可以作固定的頻率源用(不建議)。
作者: chysh    時(shí)間: 2017-6-24 10:47
感謝回答,受教了
作者: zl2168    時(shí)間: 2017-6-24 15:28
yzwzfyz 發(fā)表于 2017-6-21 04:41
51的P0口有兩個(gè)功能,既可以做16位地址的高字節(jié),又可以做數(shù)據(jù)線。
如果實(shí)現(xiàn)兩個(gè)功能呢?分時(shí)。!,即: ...

不是高8位,而是低8位。
作者: zl2168    時(shí)間: 2017-6-24 15:28
ALE功能:用來鎖存P0口送出的低8位地址。80C51在并行擴(kuò)展外存儲(chǔ)器(包括并行擴(kuò)展I/O口)時(shí),P0口用于分時(shí)傳送低8位地址和數(shù)據(jù)信號(hào),且均為二進(jìn)制數(shù)。那么如何區(qū)分是低8位地址還是8位數(shù)據(jù)信號(hào)呢?當(dāng)ALE信號(hào)有效時(shí),P0口傳送的是低8位地址信號(hào);ALE信號(hào)無效時(shí),P0口傳送的是8位數(shù)據(jù)信號(hào)。用戶可在ALE信號(hào)的下降沿,鎖定P0口傳送的內(nèi)容,即低8位地址信號(hào)。
作者: zl2168    時(shí)間: 2017-6-24 15:35
在不擴(kuò)展外RAM的系統(tǒng)中,ALE信號(hào)以1/6時(shí)鐘頻率的速率發(fā)出;在擴(kuò)展外RAM的系統(tǒng)中,在讀寫外RAM時(shí),少一個(gè)ALE脈沖。ALE信號(hào)稍稍不規(guī)則,以低于1/6時(shí)鐘頻率的速率發(fā)出。
作者: zl2168    時(shí)間: 2017-6-24 15:40
ALE信號(hào)通常用于ADC 0808/0809 CLK時(shí)鐘。80C51 ALE信號(hào)固定為CPU時(shí)鐘頻率的1/6,若fosc=6MHz,則1/6為1MHz,正好用于0809 CLK。因此,80C51 ALE信號(hào)除用于74LS373鎖存低8位地址外,還與0809 CLK端連接,用于0809 A-D轉(zhuǎn)換的時(shí)鐘信號(hào)。但若fosc=12MHz,則1/6為2MHz,超出0809最高工作頻率,就需要用分頻器分頻了。
作者: sdust2005    時(shí)間: 2017-6-24 15:51
兩個(gè)功能,既可以做16位地址的高字節(jié),又可以做數(shù)據(jù)線。
如果實(shí)現(xiàn)兩個(gè)功能呢?分時(shí)!!,即:有時(shí)作為地址、有時(shí)作為數(shù)據(jù)。
又如何做到分時(shí)呢。用ALE做分時(shí)“標(biāo)記”!
所以:ALE是擴(kuò)充外部存儲(chǔ)器時(shí)用的。
CPU訪問外部存儲(chǔ)器時(shí):先在P0口送出地址高位,再送出ALE,這樣就方便你用ALE脈沖將高位地址鎖存起來!否則,讀寫數(shù)據(jù)時(shí)就沒有高位地址了!
作者: yzwzfyz    時(shí)間: 2017-6-24 20:10
地板糾正的是!謝了!
作者: b4997939    時(shí)間: 2017-12-22 09:27
學(xué)習(xí)了!
作者: yjp123    時(shí)間: 2017-12-22 11:02
Address lock enable . 地址鎖存允許端。 訪問外部存儲(chǔ)器用的,比如RAM、ROM 51有外部總線,16位的地址線,8為的數(shù)據(jù)線,但是地址的低8位跟數(shù)據(jù)線是重合的,因此訪問的時(shí)候需要區(qū)分開低8位(P0口,高8位是P2口)地址和數(shù)據(jù),這就需要用到ALE信號(hào)了。 訪問存儲(chǔ)器的時(shí)候,P2口輸出高地址,P0輸出低地址。利用外部的鎖存器(一般用74LS373)配合ALE脈沖,鎖存P0地址,這時(shí)候讀寫信號(hào)開始起作用(WR或者RD),P0口讀入或者輸出數(shù)據(jù)。在整個(gè)過程中,外部存儲(chǔ)器的地址總線上的數(shù)據(jù)始終是穩(wěn)定的,低8位地址的穩(wěn)定靠的就是ALE和外部鎖存器。
作者: @老江    時(shí)間: 2019-6-16 15:03
請(qǐng)問ALE要怎么樣才能使能,C語言如何實(shí)現(xiàn),匯編語言時(shí)MOVC指令的時(shí)候有作用。



作者: cjm82    時(shí)間: 2019-6-16 17:08
沙發(fā)已經(jīng)解釋得很詳細(xì)了,,ALE只有在比較老的芯片上有,新的芯片RAM都比較大,很少需要擴(kuò)展RAM,對(duì)外輸出時(shí)鐘也可以通過定時(shí)器或者片上PWM模塊等功能輕松實(shí)現(xiàn),所以新的芯片干脆就取消了該引腳.這個(gè)就當(dāng)聽故事,大概了解下即可.
作者: bonusnoon    時(shí)間: 2019-6-16 22:00
訪問單片機(jī)外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器提供低八位地址的鎖存控制信號(hào)
作者: libin123    時(shí)間: 2019-6-17 11:00
ALE信號(hào)通常用于ADC 0808/0809 CLK時(shí)鐘。80C51 ALE信號(hào)固定為CPU時(shí)鐘頻率的1/6,若fosc=6MHz,則1/6為1MHz,正好用于0809 CLK。因此,80C51 ALE信號(hào)除用于74LS373鎖存低8位地址外,還與0809 CLK端連接,用于0809 A-D轉(zhuǎn)換的時(shí)鐘信號(hào)。但若fosc=12MHz,則1/6為2MHz,超出0809最高工作頻率,就需要用分頻器分頻了。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1