




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、項(xiàng)目七:程序存儲器的擴(kuò)展項(xiàng)目七:程序存儲器的擴(kuò)展v項(xiàng)目預(yù)備知識項(xiàng)目預(yù)備知識v知識點(diǎn)鏈接知識點(diǎn)鏈接 通過調(diào)用不同程序存儲器中的程序,通過調(diào)用不同程序存儲器中的程序,觀察控制現(xiàn)象,學(xué)習(xí)觀察控制現(xiàn)象,學(xué)習(xí)程序存儲器擴(kuò)展程序存儲器擴(kuò)展的的方法,理解擴(kuò)展程序存儲器的意義,掌方法,理解擴(kuò)展程序存儲器的意義,掌握握INC、DEC、JZ、JNZ指令的功能并編指令的功能并編寫控制程序。寫控制程序。 應(yīng)用應(yīng)用AT89C51芯片和程序存儲器芯片,芯片和程序存儲器芯片,實(shí)現(xiàn)單片機(jī)系統(tǒng)程序存儲器的擴(kuò)展。實(shí)現(xiàn)單片機(jī)系統(tǒng)程序存儲器的擴(kuò)展。 本項(xiàng)目通過編寫不同的程序存儲于不本項(xiàng)目通過編寫不同的程序存儲于不同的程序存儲器(片內(nèi)
2、和片外),學(xué)習(xí)程同的程序存儲器(片內(nèi)和片外),學(xué)習(xí)程序存儲器擴(kuò)展和讀取程序的方法。序存儲器擴(kuò)展和讀取程序的方法。 在在MCS-51指令系統(tǒng)中,為了使用方便,特別設(shè)計(jì)了指令系統(tǒng)中,為了使用方便,特別設(shè)計(jì)了7條條對累加器對累加器A的邏輯操作指令,包括清零、取反、移位和高低的邏輯操作指令,包括清零、取反、移位和高低半字節(jié)交換,其中的移位指令已經(jīng)在項(xiàng)目二中進(jìn)行了學(xué)習(xí),半字節(jié)交換,其中的移位指令已經(jīng)在項(xiàng)目二中進(jìn)行了學(xué)習(xí),下面我們學(xué)習(xí)其余指令。下面我們學(xué)習(xí)其余指令。 匯編指令匯編指令 指令功能指令功能 清零:清零: CLR A 將將A的內(nèi)容清成的內(nèi)容清成00H 取反:取反: CPL A 將將A中內(nèi)容按位取
3、反中內(nèi)容按位取反 半字節(jié)交換:半字節(jié)交換: SWAP A 將將A中高低半字節(jié)交換中高低半字節(jié)交換項(xiàng)目預(yù)備知識:匯編指令學(xué)習(xí)項(xiàng)目預(yù)備知識:匯編指令學(xué)習(xí) 加加1指令又稱為增量指令,共有指令又稱為增量指令,共有5條指令;減條指令;減1指令又指令又稱減量指令,有稱減量指令,有4條。和加法、減法指令所不同的是,除條。和加法、減法指令所不同的是,除奇偶標(biāo)志位外,這些指令的操作不影響奇偶標(biāo)志位外,這些指令的操作不影響PSW中的標(biāo)志位。中的標(biāo)志位。 1)加)加1指令指令 匯編指令匯編指令 指令功能指令功能 INC A 累加器內(nèi)容加累加器內(nèi)容加1 INC direct 直接地址單元內(nèi)容加直接地址單元內(nèi)容加1 I
4、NC Rn 通用寄存器內(nèi)容加通用寄存器內(nèi)容加1 INC Ri 加加 INC DPTR 數(shù)據(jù)指針數(shù)據(jù)指針EPTR內(nèi)容加內(nèi)容加1 例如,(例如,(30H)=22H,執(zhí)行,執(zhí)行 INC 30H 后,(后,(30H)=23H。 本組指令將操作數(shù)內(nèi)容加本組指令將操作數(shù)內(nèi)容加1,結(jié)果仍然送回原,結(jié)果仍然送回原地址存放,如果原地址單元中內(nèi)容為地址存放,如果原地址單元中內(nèi)容為0FFH,加,加1后將要變?yōu)楹髮⒁優(yōu)?0H,運(yùn)算結(jié)果不影響任何標(biāo)志位。指,運(yùn)算結(jié)果不影響任何標(biāo)志位。指令中前令中前4條是條是8位數(shù)加位數(shù)加1指令,可以用來對指定的指令,可以用來對指定的單元操作,第單元操作,第5條指令是條指令是16位數(shù)的
5、加位數(shù)的加1指令,指令,運(yùn)算過程中,若有低運(yùn)算過程中,若有低8位(位(DPL)向高)向高8位(位(DPH)的進(jìn)位,直接進(jìn)位即可。這也是的進(jìn)位,直接進(jìn)位即可。這也是MCS-51指令系統(tǒng)指令系統(tǒng)中唯一的一條中唯一的一條16位算術(shù)運(yùn)算指令。位算術(shù)運(yùn)算指令。 匯編指令匯編指令 指令功能指令功能 DEC A 累加器內(nèi)容減累加器內(nèi)容減1 DEC direct 直接地址單元內(nèi)容減直接地址單元內(nèi)容減1 DEC Rn 通用寄存器內(nèi)容減通用寄存器內(nèi)容減1 DEC Ri 減減 本組指令將操作數(shù)減本組指令將操作數(shù)減1,結(jié)果仍送回原地址單元,若,結(jié)果仍送回原地址單元,若原指定單元中的內(nèi)容為原指定單元中的內(nèi)容為00H,減
6、,減1后將變?yōu)楹髮⒆優(yōu)?FFH,運(yùn)算結(jié),運(yùn)算結(jié)構(gòu)也不影響任何標(biāo)志位。這構(gòu)也不影響任何標(biāo)志位。這4條指令全是條指令全是8位數(shù)減位數(shù)減1指令,指令,若需要對若需要對16位數(shù)進(jìn)行減位數(shù)進(jìn)行減1操作,可通過簡單的編程實(shí)現(xiàn)。操作,可通過簡單的編程實(shí)現(xiàn)。例如,例如,R0=30H,(,(30H)=22H,執(zhí)行,執(zhí)行 DEC R0 后,后,(30H)=21H。 匯編指令匯編指令 指令功能指令功能 JZ rel 若(若(A)=0,則程序轉(zhuǎn)移;否則順序執(zhí)行,則程序轉(zhuǎn)移;否則順序執(zhí)行 JNZ rel 若(若(A)0,則程序轉(zhuǎn)移;否則順序執(zhí)行,則程序轉(zhuǎn)移;否則順序執(zhí)行 這兩條指令是以累加器這兩條指令是以累加器A的內(nèi)容
7、是否為零作為程序是的內(nèi)容是否為零作為程序是否轉(zhuǎn)移的條件。否轉(zhuǎn)移的條件。 單個(gè)的單片機(jī)芯片用途是有限的,它往往要和其他具單個(gè)的單片機(jī)芯片用途是有限的,它往往要和其他具有專門用途的芯片組成單片機(jī)應(yīng)用系統(tǒng),才會更好的發(fā)揮有專門用途的芯片組成單片機(jī)應(yīng)用系統(tǒng),才會更好的發(fā)揮它在控制方面的優(yōu)勢。單片機(jī)應(yīng)用系統(tǒng)的組成特點(diǎn)之一就它在控制方面的優(yōu)勢。單片機(jī)應(yīng)用系統(tǒng)的組成特點(diǎn)之一就是單片機(jī)、存儲器、是單片機(jī)、存儲器、I/O口、外設(shè)控制均以芯片的形式存在???、外設(shè)控制均以芯片的形式存在。典型單片機(jī)應(yīng)用系統(tǒng)的硬件組成框圖如圖所示。典型單片機(jī)應(yīng)用系統(tǒng)的硬件組成框圖如圖所示。知識點(diǎn)鏈接知識點(diǎn)鏈接 : 單片機(jī)系統(tǒng)擴(kuò)展技術(shù)單
8、片機(jī)系統(tǒng)擴(kuò)展技術(shù) MCS 51系統(tǒng)單片機(jī)(系統(tǒng)單片機(jī)(8031、8032除外)盡管是一除外)盡管是一功能完全的單片機(jī),但因其內(nèi)部資源(功能完全的單片機(jī),但因其內(nèi)部資源(RAM、ROM、I/O、A/D、D/A等)不足,在實(shí)際應(yīng)用中不加以擴(kuò)展直等)不足,在實(shí)際應(yīng)用中不加以擴(kuò)展直接用其基本系統(tǒng)的情況較少,一般情況下需擴(kuò)展。接用其基本系統(tǒng)的情況較少,一般情況下需擴(kuò)展。 單片機(jī)擴(kuò)展的首要問題就是構(gòu)造系統(tǒng)總線,然后再往單片機(jī)擴(kuò)展的首要問題就是構(gòu)造系統(tǒng)總線,然后再往系統(tǒng)總線上系統(tǒng)總線上“掛掛”存儲芯片或存儲芯片或I/O接口芯片。接口芯片。 MCS-51MCS-51系列單片機(jī)片外引腳可以構(gòu)成三總線結(jié)構(gòu):系列單
9、片機(jī)片外引腳可以構(gòu)成三總線結(jié)構(gòu): 地址總線(地址總線(ABAB) 數(shù)據(jù)總線(數(shù)據(jù)總線(DBDB) 控制總線(控制總線(CBCB) 所有外部芯片都通過這三組總線進(jìn)行擴(kuò)展所有外部芯片都通過這三組總線進(jìn)行擴(kuò)展 二、外部總線的擴(kuò)展二、外部總線的擴(kuò)展單片機(jī)擴(kuò)展構(gòu)造圖單片機(jī)擴(kuò)展構(gòu)造圖ALE0P2PPSENRDWREA8031815AA8位地址位地址高高07AA8位地址位地址低低數(shù)據(jù)線數(shù)據(jù)線控制線控制線鎖鎖存存器器 1)地址總線()地址總線(AB) 地址總線寬度為地址總線寬度為16位,尋址可達(dá)位,尋址可達(dá)64KB。地址總線由地址總線由P0口提供地址的低口提供地址的低8位,位,P2口提供地口提供地址的高址的高
10、8位。由于位。由于P0口是數(shù)據(jù)口是數(shù)據(jù)/地址復(fù)用線,只地址復(fù)用線,只能分時(shí)使用,故能分時(shí)使用,故P0口先輸出的地址低口先輸出的地址低8位只能鎖位只能鎖存到地址鎖存器中保存。存到地址鎖存器中保存。P2口具有輸出鎖存功口具有輸出鎖存功能,故不需外加鎖存器便可保存地址高能,故不需外加鎖存器便可保存地址高8位。位。P0口和口和P2口作系統(tǒng)擴(kuò)展的地址線后,便不能再作口作系統(tǒng)擴(kuò)展的地址線后,便不能再作一般的一般的I/O口使用??谑褂?。 數(shù)據(jù)總線由數(shù)據(jù)總線由P0口提供,其寬度為口提供,其寬度為8位,該口位,該口為三態(tài)雙向口,是應(yīng)用系統(tǒng)中使用最為頻繁的通為三態(tài)雙向口,是應(yīng)用系統(tǒng)中使用最為頻繁的通道。單片機(jī)與外
11、部交換的數(shù)據(jù)、指令、信息大部道。單片機(jī)與外部交換的數(shù)據(jù)、指令、信息大部分由分由P0口傳送。通常系統(tǒng)數(shù)據(jù)總線上連有很多芯口傳送。通常系統(tǒng)數(shù)據(jù)總線上連有很多芯片,而在某一時(shí)刻,數(shù)據(jù)總線上只能有一個(gè)有效片,而在某一時(shí)刻,數(shù)據(jù)總線上只能有一個(gè)有效的數(shù)據(jù),究竟哪個(gè)芯片的數(shù)據(jù)有效,則由地址信的數(shù)據(jù),究竟哪個(gè)芯片的數(shù)據(jù)有效,則由地址信號控制各個(gè)芯片的片選端來選擇。號控制各個(gè)芯片的片選端來選擇。 單片機(jī)控制信號有單片機(jī)控制信號有PSEN、WR、RD、ALE和和EA。 PSEN:用于片外程序存存儲器(:用于片外程序存存儲器(EPROM)的)的“讀讀”控制,控制,實(shí)際上就是實(shí)際上就是 取指令選通控制(低電平有效)
12、。取指令選通控制(低電平有效)。 WR、RD:用于片外數(shù)據(jù)存儲器(包括其它接口芯片)的:用于片外數(shù)據(jù)存儲器(包括其它接口芯片)的“讀讀”、“寫寫”控制(低電平有效)控制(低電平有效) 。 ALE:用于鎖存:用于鎖存P0口上地址低口上地址低8位的控制線。位的控制線。 EA:用于選擇片內(nèi)或片外程序存儲器。當(dāng):用于選擇片內(nèi)或片外程序存儲器。當(dāng)EA=0時(shí),只訪時(shí),只訪問外部程序存儲器,不管片內(nèi)有無程序存儲器,因此使用片問外部程序存儲器,不管片內(nèi)有無程序存儲器,因此使用片內(nèi)內(nèi)ROM時(shí)時(shí)EA=1。 作為數(shù)據(jù)作為數(shù)據(jù)/地址復(fù)用總線,地址復(fù)用總線,P0口可驅(qū)動口可驅(qū)動8個(gè)個(gè)TTL門電路,門電路,P1、P2、P
13、3只能驅(qū)動只能驅(qū)動4個(gè)個(gè)TTL門電路。當(dāng)應(yīng)用系統(tǒng)規(guī)模門電路。當(dāng)應(yīng)用系統(tǒng)規(guī)模較大、超過其負(fù)載能力時(shí),系統(tǒng)便不能穩(wěn)定可靠地工作。較大、超過其負(fù)載能力時(shí),系統(tǒng)便不能穩(wěn)定可靠地工作。在這種情況下,系統(tǒng)設(shè)計(jì)時(shí)應(yīng)加總線驅(qū)動器,以增強(qiáng)系在這種情況下,系統(tǒng)設(shè)計(jì)時(shí)應(yīng)加總線驅(qū)動器,以增強(qiáng)系統(tǒng)總線的驅(qū)動能力。常被用戶選擇的有單向總線驅(qū)動器統(tǒng)總線的驅(qū)動能力。常被用戶選擇的有單向總線驅(qū)動器74LS244、74LS273,雙向驅(qū)動器,雙向驅(qū)動器74LS245等芯片。如等芯片。如下圖下圖7-8所示,所示,74LS273作作8位并行輸出接口,位并行輸出接口,74LS244作作8位并行輸入接口。位并行輸入接口。74LS244是
14、一個(gè)三態(tài)輸出八緩沖器是一個(gè)三態(tài)輸出八緩沖器及總線驅(qū)動器,其帶負(fù)載能力強(qiáng),可直接驅(qū)動小于及總線驅(qū)動器,其帶負(fù)載能力強(qiáng),可直接驅(qū)動小于130的負(fù)載。的負(fù)載??偩€驅(qū)動能力總線驅(qū)動能力芯片功能介紹芯片功能介紹 (1)74LS244三態(tài)緩沖器三態(tài)緩沖器(2 4路路)1G狀態(tài)狀態(tài)輸入輸入/輸出輸出1高阻高阻隔離隔離0驅(qū)動驅(qū)動輸入輸出輸入輸出 74LS24474LS244三態(tài)緩沖器功能表三態(tài)緩沖器功能表A1Y1A2Y2主要功能:主要功能:數(shù)據(jù)保持(鎖存)數(shù)據(jù)保持(鎖存)8D1D:8位數(shù)據(jù)輸入;位數(shù)據(jù)輸入;8Q1Q:8位數(shù)據(jù)輸出;位數(shù)據(jù)輸出;CLK:時(shí)鐘信號,上升沿?cái)?shù)據(jù)鎖存;:時(shí)鐘信號,上升沿?cái)?shù)據(jù)鎖存; CL
15、R:清除端清除端典型芯片:典型芯片:帶清除端的帶清除端的8D鎖存器鎖存器74273LS(2)74LS273 8D鎖存器鎖存器74LS273只有清除端為高電平才具鎖存功能只有清除端為高電平才具鎖存功能鎖存器控制較鎖存器控制較CLK,上升沿鎖存數(shù)據(jù)。單片機(jī),上升沿鎖存數(shù)據(jù)。單片機(jī)ALE引腳需接引腳需接反相器反相器輸入輸入 輸出輸出 CLR CLRCLKCLKD DQ QL LL L H HH HH HH HL LL LH HL LQ Q不變不變74LS273功能表功能表CLK(3 3)用)用74LS27374LS273和和74LS24474LS244擴(kuò)展擴(kuò)展I/OI/O口口芯片及連線說明芯片及連線
16、說明P0口作為雙向口作為雙向8位數(shù)據(jù)線,既能夠從位數(shù)據(jù)線,既能夠從74LS244輸入輸入數(shù)據(jù),又能夠從數(shù)據(jù),又能夠從74LS273輸出數(shù)據(jù)。輸出數(shù)據(jù)。 輸入控制信號由輸入控制信號由P2.7和和 相相“或或”后形成。當(dāng)后形成。當(dāng)二者都為二者都為0時(shí),時(shí),74LS244的控制端有效,選通的控制端有效,選通74LS244,外部的信息輸入到,外部的信息輸入到P0數(shù)據(jù)總線上。當(dāng)與數(shù)據(jù)總線上。當(dāng)與74LS244相連的按鍵都沒有按下時(shí),輸入全為相連的按鍵都沒有按下時(shí),輸入全為1,若,若按下某鍵,則所在線輸入為按下某鍵,則所在線輸入為0。RD 輸出控制信號由輸出控制信號由P2.7和和 相相“或或”后形成。當(dāng)二
17、者都為后形成。當(dāng)二者都為0后,后,74LS273的控制端有效,選通的控制端有效,選通74LS273,P0上的數(shù)據(jù)鎖存上的數(shù)據(jù)鎖存到到74LS273的輸出端,控制發(fā)光二極管的輸出端,控制發(fā)光二極管LED,當(dāng)某線輸出為,當(dāng)某線輸出為0時(shí),相應(yīng)的時(shí),相應(yīng)的LED發(fā)光。發(fā)光。I/O口地址確定口地址確定 因?yàn)橐驗(yàn)?4LS244和和74LS273都是在都是在P2.7為為0時(shí)被選通的,所以時(shí)被選通的,所以二者的口地址都為二者的口地址都為7FFFH(這個(gè)地址不是惟一的,只要保證(這個(gè)地址不是惟一的,只要保證P2.7=0,其它地址位無關(guān))。但是由于分別由,其它地址位無關(guān))。但是由于分別由RD和和WR控制,控制,
18、因而兩個(gè)信號不可能同時(shí)為因而兩個(gè)信號不可能同時(shí)為0(執(zhí)行輸入指令,如(執(zhí)行輸入指令,如MOVX A,DPTR時(shí),時(shí),RD有效;執(zhí)行輸出指令,如有效;執(zhí)行輸出指令,如MOVX DPTR,A時(shí),時(shí),WR有效),所以邏輯上二者不會發(fā)生沖突。有效),所以邏輯上二者不會發(fā)生沖突。WR 編程應(yīng)用編程應(yīng)用 下述程序?qū)崿F(xiàn)的功能是按下任意鍵,對應(yīng)的下述程序?qū)崿F(xiàn)的功能是按下任意鍵,對應(yīng)的LED發(fā)光。發(fā)光。 CONT:MOV DPTR,#7FFFH ;數(shù)據(jù)指針指向口地址;數(shù)據(jù)指針指向口地址 MOVXA,DPTR ;檢測按鍵,向;檢測按鍵,向74LS244 讀入數(shù)據(jù)讀入數(shù)據(jù) MOVX DPTR,A ;向;向74LS2
19、73輸出數(shù)據(jù),輸出數(shù)據(jù), 驅(qū)動驅(qū)動LED SJMP CONT ;循環(huán);循環(huán) 三、程序存儲器的擴(kuò)展三、程序存儲器的擴(kuò)展 MCS-51的程序存儲器尋址空間為的程序存儲器尋址空間為64KB,其中片內(nèi)包含,其中片內(nèi)包含4K的的ROM/EPROM。當(dāng)片內(nèi)。當(dāng)片內(nèi)ROM不夠而需要擴(kuò)展程序存儲不夠而需要擴(kuò)展程序存儲器時(shí),器時(shí),MCS-51的的EA管腳應(yīng)接地,其它控制信號還有:管腳應(yīng)接地,其它控制信號還有:1、常用的程序存儲器芯片、常用的程序存儲器芯片 可用紫外線擦除、由電編程的只讀存儲器可用紫外線擦除、由電編程的只讀存儲器EPROM芯片芯片常用作常用作MCS-51應(yīng)用系統(tǒng)的外部程序存儲器。常用的應(yīng)用系統(tǒng)的外
20、部程序存儲器。常用的EPROM芯片有芯片有2716、2732、2764、27128、27256、27512等,這些芯片的窗口在專門的紫外線燈光照射下,經(jīng)等,這些芯片的窗口在專門的紫外線燈光照射下,經(jīng)20min后,存儲器所有單元的信息全部變?yōu)楹?,存儲器所有單元的信息全部變?yōu)?,從而擦去了,從而擦去了程序指令代碼。用戶可用專門的程序指令代碼。用戶可用專門的EPROM編程(寫入)電路編程(寫入)電路將程序固化在這些將程序固化在這些EPROM芯片之中。芯片之中。 以以27256A為例說明其工作方式及引腳功能。下圖是為例說明其工作方式及引腳功能。下圖是27256A的管腳圖。的管腳圖。 27256A是一種
21、是一種32K8位位EPROM存儲器,單一存儲器,單一+5V供電,工作電流為供電,工作電流為100mA,維持電流為,維持電流為40mA,讀出時(shí)間最大為,讀出時(shí)間最大為250ns。27256A為為28線雙線雙列直插式封裝。列直插式封裝。 27256A工作方式見下表: CE(第(第20腳)腳) OE(第(第20腳)腳) VPP(第(第1腳)腳) VCC(第(第28腳)腳)輸出輸出輸出輸出低電平低電平低電平低電平5V5V程序代碼輸出程序代碼輸出維持維持高電平高電平任意任意5V5V高阻抗?fàn)顟B(tài)高阻抗?fàn)顟B(tài)編程編程低電平低電平高電平高電平12.5V6V程序代碼輸入程序代碼輸入編程校驗(yàn)編程校驗(yàn)高電平高電平低電平
22、低電平12.5V6V程序代碼輸出程序代碼輸出 編程禁止編程禁止高電平高電平高電平高電平12.5V6V高阻抗?fàn)顟B(tài)高阻抗?fàn)顟B(tài) 2、常用的擴(kuò)展方法、常用的擴(kuò)展方法: 為保證系統(tǒng)正常工作,為保證系統(tǒng)正常工作,P0口應(yīng)通過地址鎖存器口應(yīng)通過地址鎖存器與存儲器低與存儲器低8位地址相連,以保持存儲器的低位地址相連,以保持存儲器的低8位地位地址。常用的址。常用的8位地址鎖存器有位地址鎖存器有74LS373、74LS273、8282等。等。74LS373用于單片機(jī)系統(tǒng)的擴(kuò)展時(shí),其電用于單片機(jī)系統(tǒng)的擴(kuò)展時(shí),其電路的連接采用路的連接采用74LS373實(shí)現(xiàn)。實(shí)現(xiàn)。74LS373的的D0D7接接P0口,口,G端接端接A
23、LE,E端接地,則端接地,則Q0Q7輸出為輸出為A0A7,即地址的低,即地址的低8位。位。27256A的地址與系統(tǒng)地的地址與系統(tǒng)地址線相連接,數(shù)據(jù)線與址線相連接,數(shù)據(jù)線與89C51的的P0口連接,口連接, 端端與與PSEN連接,這樣,系統(tǒng)擴(kuò)展了連接,這樣,系統(tǒng)擴(kuò)展了32KB的程序存儲的程序存儲器,地址為器,地址為0000H7FFFH。D7D6D5D4D3D2D1D0G74LS373GND+5VEQ7Q6Q5Q4Q3Q2Q1Q0 74LS373373引腳功能引腳功能D0D0D6D6數(shù)據(jù)輸入數(shù)據(jù)輸入 E E輸出允許輸出允許 G G數(shù)據(jù)輸出數(shù)據(jù)輸出 Q0 Q0Q7Q7使能端使能端當(dāng)E=0,G=1時(shí),
24、 輸出Q=輸入D(透明);當(dāng)E=0,G=0時(shí), 輸出Q端不變(鎖存)當(dāng)E=1,輸出高阻態(tài)G G一般與單片機(jī)的鎖存控制信號一般與單片機(jī)的鎖存控制信號ALEALE相連相連(2)原理分析原理分析 單片機(jī)取指令是各個(gè)部件相互協(xié)調(diào)工作的一個(gè)過程單片機(jī)取指令是各個(gè)部件相互協(xié)調(diào)工作的一個(gè)過程.主要是主要是以下幾步以下幾步. 第一步,送第一步,送16位地址,指明要取的指令的存放位置。高位地址,指明要取的指令的存放位置。高8位位地址通過地址通過P2送到送到27256的的A8-A14和片選端和片選端CE。低。低8位地址由位地址由P0口提供,是通過口提供,是通過373連接到連接到27256的的A7-A0上的。上的。
25、 這里要注意:高這里要注意:高8位地址是由位地址是由A8-A14和片選端和片選端CE共同組共同組成的。片選端成的。片選端CE為最高位。真正的地址范圍為為最高位。真正的地址范圍為0000H-7FFFH. 第二步,等待第二步,等待ALE第一次有效(高電平)。此時(shí),第一次有效(高電平)。此時(shí),373通通道被打開,低道被打開,低8位地址被送入位地址被送入A7-A0。與此同時(shí),。與此同時(shí),PSEN為高為高電平,因此電平,因此27256的數(shù)據(jù)輸出端還未打開,即數(shù)據(jù)沒有送出。的數(shù)據(jù)輸出端還未打開,即數(shù)據(jù)沒有送出。 第三步,第三步,ALE出現(xiàn)下降沿。此時(shí),出現(xiàn)下降沿。此時(shí),373的門被關(guān)?。ㄦi的門被關(guān)?。ㄦi存
26、數(shù)據(jù)),與此同時(shí),存數(shù)據(jù)),與此同時(shí), PSEN出現(xiàn)低電平,出現(xiàn)低電平,27256的數(shù)的數(shù)據(jù)輸出端被打開,要取的指令代碼通過據(jù)輸出端被打開,要取的指令代碼通過O0-O7端口送入端口送入數(shù)據(jù)總線。數(shù)據(jù)總線。第四步,第四步,ALE第二次有效,此時(shí),總線上的代碼通過第二次有效,此時(shí),總線上的代碼通過P0口讀入單片機(jī)。雖然此時(shí)口讀入單片機(jī)。雖然此時(shí)373被打開,但是由于此時(shí)被打開,但是由于此時(shí)PSEN為高電平,把為高電平,把27256關(guān)掉了。因此,即使剛才的關(guān)掉了。因此,即使剛才的代碼通過代碼通過373被送到被送到A7-A0,也不會送入,也不會送入27256中。中。一、硬件電路設(shè)計(jì)一、硬件電路設(shè)計(jì)二、
27、控制程序的編寫二、控制程序的編寫三、程序仿真與調(diào)試三、程序仿真與調(diào)試 項(xiàng)項(xiàng) 目目 實(shí)實(shí) 施施 在單片機(jī)系統(tǒng)擴(kuò)展存儲器時(shí),根據(jù)在單片機(jī)系統(tǒng)擴(kuò)展存儲器時(shí),根據(jù)4個(gè)并行個(gè)并行I/O口使口使用的一般原則,使用用的一般原則,使用MCS-51單片機(jī)芯片的單片機(jī)芯片的P0口和口和P2口口進(jìn)行程序存儲器的擴(kuò)展。進(jìn)行程序存儲器的擴(kuò)展。P0口具有數(shù)據(jù)口具有數(shù)據(jù)/地址復(fù)用功能,地址復(fù)用功能,既可在片外存儲器和單片機(jī)芯片之間進(jìn)行數(shù)據(jù)傳送,又既可在片外存儲器和單片機(jī)芯片之間進(jìn)行數(shù)據(jù)傳送,又可以和可以和P2口共同組成地址線,利用口共同組成地址線,利用74HC373鎖存器實(shí)鎖存器實(shí)現(xiàn)此功能?,F(xiàn)此功能。一、硬件電路設(shè)計(jì)一、硬
28、件電路設(shè)計(jì) 1、擴(kuò)展電路設(shè)計(jì)、擴(kuò)展電路設(shè)計(jì) 擴(kuò)展用的程序存儲器選用擴(kuò)展用的程序存儲器選用27C512芯片,內(nèi)存芯片,內(nèi)存64KB。使用。使用74HC373鎖存器實(shí)現(xiàn)鎖存器實(shí)現(xiàn)P0口的數(shù)據(jù)口的數(shù)據(jù)/地址分地址分時(shí)復(fù)用功能。將時(shí)復(fù)用功能。將P0口與鎖存器的輸入引腳口與鎖存器的輸入引腳D0D7進(jìn)行進(jìn)行連接,同時(shí)與連接,同時(shí)與27C512芯片的數(shù)據(jù)引腳芯片的數(shù)據(jù)引腳D0D7連接,連接,鎖存器的輸出鎖存器的輸出Q0Q7與與27C512芯片的地址線的低芯片的地址線的低8位位(A0A7)連接。)連接。P2口直接與程序存儲器的地址線的口直接與程序存儲器的地址線的高高8位(位(D8D15)連接即可。)連接即可。
29、 設(shè)計(jì)要求根據(jù)不同的程序控制單個(gè)發(fā)光二極管閃設(shè)計(jì)要求根據(jù)不同的程序控制單個(gè)發(fā)光二極管閃爍,因此利用爍,因此利用P1.1引腳連接引腳連接1只發(fā)光二極管。只發(fā)光二極管。 2、控制電路設(shè)計(jì)、控制電路設(shè)計(jì) 1)EA /VPP引腳:本設(shè)計(jì)選用引腳:本設(shè)計(jì)選用AT89C51單片機(jī)單片機(jī)芯片,由于要實(shí)現(xiàn)存儲器擴(kuò)展,因此芯片,由于要實(shí)現(xiàn)存儲器擴(kuò)展,因此EA /VPP引腳引腳連接一只雙向開關(guān),可以在高電平和低電平之間轉(zhuǎn)連接一只雙向開關(guān),可以在高電平和低電平之間轉(zhuǎn)換,以選擇要讀取的程序的存儲空間換,以選擇要讀取的程序的存儲空間-片內(nèi)或片片內(nèi)或片外。外。 2)ALE引腳:使用此引腳的引腳:使用此引腳的“地址鎖存允許
30、信地址鎖存允許信號號”功能,功能, 將將ALE引腳與引腳與74HC373鎖存器的允許鎖存器的允許端端G連接。連接。 3)PSEN引腳:使用此引腳對外部程序存儲器引腳:使用此引腳對外部程序存儲器進(jìn)行讀選通,因以將進(jìn)行讀選通,因以將PSEN引腳與引腳與27C512芯片的數(shù)芯片的數(shù)據(jù)輸入選通引腳據(jù)輸入選通引腳OE連接。連接。綜合以上分析,得到如圖所示的控制電路圖。(三)材料表(三)材料表 從原理圖可以得到實(shí)現(xiàn)本項(xiàng)目所需的元器件。從原理圖可以得到實(shí)現(xiàn)本項(xiàng)目所需的元器件。序號序號 元件名稱元件名稱 元件型號元件型號 元件數(shù)量元件數(shù)量 備注備注 1單片機(jī)芯片單片機(jī)芯片 AT89C511片片DIP封裝封裝
31、2鎖存器鎖存器74HC373N 1片片DIP封裝封裝3程序存儲器芯片程序存儲器芯片W27C512 1片片DIP封裝封裝4發(fā)光二極管發(fā)光二極管5 1只只普通型普通型5晶振晶振12MHz1只只6電容電容30pF 2只只瓷片電容瓷片電容22uF 1只只電解電容電解電容7電阻電阻200 8只只碳膜電阻,可用排阻代替碳膜電阻,可用排阻代替 10k 1只只碳膜電阻碳膜電阻8按鍵按鍵1只只無自鎖無自鎖1只只帶自鎖帶自鎖9雙向開關(guān)雙向開關(guān)1只只1040腳腳IC座座 1片片安裝安裝AT89C51芯片芯片1120腳腳IC座座1片片安裝鎖存器芯片安裝鎖存器芯片1228腳腳IC座座1片片安裝程序存儲器芯片安裝程序存儲
32、器芯片13導(dǎo)線導(dǎo)線二、二、 控制程序的編寫控制程序的編寫(一)繪制程序流程圖(一)繪制程序流程圖 為了說明不同存儲器的使用方法,編寫單個(gè)發(fā)光二極管閃爍的控制程為了說明不同存儲器的使用方法,編寫單個(gè)發(fā)光二極管閃爍的控制程序,采用循環(huán)程序結(jié)構(gòu)。序,采用循環(huán)程序結(jié)構(gòu)。 (二)編制匯編源程序(二)編制匯編源程序1、存儲于片內(nèi)、存儲于片內(nèi)ROM中的程序(中的程序(EA接高電平)接高電平)(1)參考程序清單)參考程序清單標(biāo)標(biāo) 號號操作碼操作碼操作數(shù)操作數(shù)指令意義(注釋)指令意義(注釋)ORG0000H;偽指令,指明程序從;偽指令,指明程序從0000H單元開始存放單元開始存放 LJMPMAIN7;控制程序跳
33、轉(zhuǎn)到;控制程序跳轉(zhuǎn)到“MAIN7”處執(zhí)行處執(zhí)行 ORG0700HMAIN7:MOVA,#10;確定閃爍次數(shù)(;確定閃爍次數(shù)(5次)次) CLRP1.1;將;將P1.1引腳清零引腳清零 SS1:LCALLDELAY;調(diào)延時(shí)程序;調(diào)延時(shí)程序 DECA;累加器內(nèi)容減;累加器內(nèi)容減1 CPLP1.1;將;將P1.1狀態(tài)取反狀態(tài)取反 JNZSS1;判斷閃爍次數(shù)是否到,不到跳轉(zhuǎn)到;判斷閃爍次數(shù)是否到,不到跳轉(zhuǎn)到SS1繼繼續(xù)執(zhí)行續(xù)執(zhí)行 SJMP$;閃爍次數(shù)到,程序停止;閃爍次數(shù)到,程序停止 ORG0F00HDELAY:MOVR7,#10;延時(shí)程序同前;延時(shí)程序同前標(biāo)標(biāo) 號號操作碼操作碼操作數(shù)操作數(shù)指令意義(注釋)指令意義(注釋) RETEND(2)程序執(zhí)行過程:程序執(zhí)行過程: ORG0000HLJMP MAIN7ORG0700HMAIN7:MOVA,#10CLRP1.1SS1:LCALLDELAYDECACPLP1.1JNZSS1SJMP $ORG0F00HDELAY:MOVR7,#10 RETEND2、存儲于片外、存儲于片外ROM中的程序(中的程序(EA接低電平)接低電平)(1)參考程序清單)參考程序清單標(biāo)標(biāo) 號號操作碼操作碼操作數(shù)操作數(shù)指令意義(注釋)指令意
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026屆四川省成都市重點(diǎn)中學(xué)中考物理模試卷含解析
- 2025 醫(yī)學(xué)皮膚科兒童雄激素性脫發(fā)病例查房課件
- 口腔消毒操作規(guī)范教程
- 隨機(jī)對照研究文獻(xiàn)匯報(bào)
- 2025版國企改革背景下的股權(quán)轉(zhuǎn)讓協(xié)議多方實(shí)施合同
- 二零二五年度智慧城市基礎(chǔ)設(shè)施承包合同
- 2025版光伏發(fā)電工程投標(biāo)居間及綠色能源推廣合同
- 二零二五版企事業(yè)單位租車合同范本貼心服務(wù)
- 二零二五年度美容產(chǎn)品美容院美容儀器租賃與維修合同
- 2025-2030中國建筑膜市場運(yùn)營態(tài)勢及發(fā)展新趨勢預(yù)測分析報(bào)告
- 專票購銷合同模板
- 婚后房子給老婆一半?yún)f(xié)議范文(2篇)
- 足浴店員工服務(wù)意識培養(yǎng)考核試卷
- 賽迪西門子:“碳”索之路-企業(yè)綠色出海深度洞察報(bào)告2024-2025
- 《學(xué)生是如何學(xué)習(xí)的:從學(xué)習(xí)科學(xué)到高效教學(xué)》札記
- 2024年浙江省單獨(dú)考試招生文化考試語文試卷真題(含答案詳解)
- 人教版初一數(shù)學(xué)上冊預(yù)習(xí)資料
- CJ/T 133-2012 IC卡冷水水表 標(biāo)準(zhǔn)
- 設(shè)計(jì)院安全生產(chǎn)管理制度
- 無償使用協(xié)議書模版
- 預(yù)應(yīng)力簡支T型橋梁綜合項(xiàng)目施工專項(xiàng)方案設(shè)計(jì)
評論
0/150
提交評論