- 單片機開發從入門到精通(第2版)
- 白林鋒 曲培新等編著
- 760字
- 2024-06-26 16:45:07
1.2.3 存儲器
單片機內部包含隨機存取存儲器(RAM)和程序存儲器(ROM),RAM用于保存單片機運行的中間數據;單片機的ROM不只是用來裝載程序,增強51系列也可以在單片機運行過程中利用程序把數據存儲在ROM(EEPROM)的部分空間內。
MCS-51系列單片機在系統結構上采用哈佛結構,即程序存儲器和數據存儲器的尋址空間是分開管理的。它共有4個物理上獨立的存儲器空間,即內部和外部程序存儲器及內部和外部數據存儲器。從用戶的角度來看,單片機的存儲器邏輯上分為3個存儲空間,如圖1-9所示,即統一編址的64KB的程序存儲器地址空間(包括片內ROM和外部擴展ROM),地址為0000H~FFFFH;256B的片內數據存儲地址空間(包括128B的片內RAM和特殊功能寄存器的地址空間);64KB的外部擴展數據存儲器地址空間。圖中是單片機的程序擴展控制引腳。

圖1-9 51系列單片機的存儲器空間分布
1.單片機的RAM
8051單片機芯片中共有256B的RAM單元,其中128B被專用寄存器占用,用戶使用的只是前128B,即通常所說的片內128B數據存儲器,它可以用來存放臨時可讀寫的數據,但在單片機掉電時,RAM單元的所有數據將丟失。單片機對RAM的尋址空間可達64KB。
單片機片內128B的RAM根據功能又劃分為工作寄存器區R0~R7,地址范圍00H~1FH;位尋址區地址范圍20H~2FH;堆棧區、數據緩沖區地址范圍30H~7FH,其中位尋址區共有16字節128個位單元。
8051單片機共有21個特殊功能寄存器,它是片內RAM的一部分。特殊功能寄存器用于對片內各功能模塊進行監控和管理,是一些控制寄存器和狀態寄存器,與片內RAM單元統一編址。
2.內部程序存儲器(內部ROM)
8051單片機共有4KB的ROM,單片機的生產商不同,內部程序存儲器可以是EEPROM或EEPROM。增強型的51單片機內部ROM空間可以達到64KB,在使用時不須再擴展片外ROM。
數據存儲器、程序存儲器以及位地址空間的地址有一部分是重疊的,但在具體尋址時,可由不同的匯編指令格式和相應的控制信號來區分不同的地址空間,因此不會造成沖突。