發布日期:2022-10-09 點擊率:74
AT89S52單片機的存儲器構造共分片內程序存儲器、片外程序存儲器、片內數據存儲器和片外數據存儲器4個有些。
1.程序存儲器
方案人員編寫的程序寄存在微處理器的程序存儲器中。
AT89S52具有64KB程序存儲器尋址空間,它是用于寄存用戶程序、數據和表格等信息,程序存儲器的構造如圖1所示。
圖1 AT89S52程序存儲器的構造
AT89S52片內片外的程序存儲器在一同邏輯空間中,地址從0000H~FFFFH,共有64K字節方案。引腳接高電往常,程序從片內程序存儲器0000H開端施行,即拜訪片內存儲器。當PC值超出片內ROM容量時,會自動轉向片外程序存儲器空間施行。引腳接低電往常,迫使體系悉數施行片外程序存儲器0000H開端寄存的程序。
2.數據存儲器
AT89S52 有256 字節片內數據存儲器。地址為00H~FFH。這256個單元共分為兩有些。其一是地址從00H~7FH單元(共128個字節)為用戶數據RAM。從80H~FFH地址單元(也是128個字節)為格外寄存器(SFR)單元。高128 字節與格外功用寄存器堆疊,也即是說高128字節與格外功用寄存器有相同的地址,而物理上是分隔的。
在00H~1FH共32個單元中被均勻地分為四塊,每塊包含八個8位寄存器,均以R0~R7來命名,稱這些寄存器為通用寄存器。這四塊中的寄存器都稱為R0~R7,運用PSW的第3和第4位(RS0和RS1),即可選中這四組通用寄存器。
內部數據存儲器的20H—2FH單元為位尋址區,可作為通常單元用字節尋址,也可對它們的位進行尋址,位尋址區地址如表1所示
表1 RAM位尋址區地址表
3. 接連效勞程序的進口地址
在程序存儲區中,為接連效勞程序保留了一段接連效勞程序的進口地址:其間一組格外單元是0003H—0032H,各個單元各有用處,它們被分為六段,每個段8個字節,專門留給接連效勞程序運用,被稱為接連矢量區。AT89S52共有8個接連源,6個接連矢量,它們的界說如下表2所,
表2 接連效勞程序的進口地址
4.格外功用寄存器SFR(Special Function Register)
格外功用寄存器是指有格外用處的寄存器集結,也稱為專用寄存器,實質上是一些具有格外功用的片內RAM單元,反映單片機的作業狀況,許多功用也經過火外功用寄存器來界說和操控程序的施行。
AT89S52單片機內部高128(80~FFH)地址分配給格外功用寄存器。這個地址空間和芯片內數據存儲器的高128字節地址徹底堆疊,但兩者在物理硬件上是徹底獨立的,用尋址辦法來差異這個徹底堆疊的地址空間。運用直接尋址辦法拜訪這個地址空間時,拜訪的是格外功用寄存器;運用直接尋址辦法拜訪這個地址空間時,拜訪的是數據存儲器。
AT89S52有32個格外功用寄存器,它們被離散地散布在內部RAM的80H~FFH地址中,這些寄存的功用已作了專門的規矩,用戶不能批改其構造。
5.幾個留神疑問
(1)地址的堆疊性
單片機中的悉數存儲器都有必要分配地址,可以尋址的地址方案為64KB,數據存儲器與程序存儲器都占用相同的地址。
程序存儲器中片內片外0000H~0FFFFH低4KB地址徹底堆疊,可是咱們運用引腳進行差異:=0時,挑選片外,=1時,挑選片內,這么就徹底差異隔來了。
數據存儲器中片表里0000H~00FFH的256個單元地址徹底堆疊,片表里數據的拜訪選用紛歧樣指令來差異:MOV指令拜訪片內數據存儲器,MOVX指令拜訪片外數據存儲器。
(2)程序存儲器(ROM)與數據存儲器(RAM)的差異
程序存儲器(ROM)與數據存儲器(RAM)的差異在運用上是嚴峻差異的,程序存儲器只能放置程序指令及常數表格,對程序存儲器中數據的拜訪只可以運用MOVC指令。而數據存儲器則寄存數據,片表里的操作指令別離用MOV,MOVX進行操作。
(3)位地址空間的區域差異
片內RAM中的20H~2FH的128位,以及SFR中的位地址,這些位尋址單元與位指令集構成了位處理器體系
上一篇:ADC0809芯片與單片機的接口
欄 目:PLC基礎知識
下一篇:51單片機程序施行流程
本文標題:AT89S52單片機存儲器構造
本文地址:http://www.22plc.com/xuexi/zhishi/27528.html
分享到:
更多PLC基礎知識
下一篇: PLC、DCS、FCS三大控
上一篇: MATLAB和Simulink在航