單片機存儲器讀寫
❶ 單片機裡面CPU讀寫存儲器的步驟過程
1)存儲器的讀操作。例如,若要將存儲器40H中的內容50H讀出,其過程如下:
①CPU將地址碼40H送到地址匯流排上,經存儲器地址解碼器選通地址為40H的存儲單元:
②CPU發出「瀆」信號,存儲器讀/寫控制開關將數據傳輸方向撥向「讀」;
③存儲器將地址為40H的存儲單元中的內容50H送到數據匯流排上;
④CPU將數據匯流排上的數據50H讀人指定的某一寄存器。
對存儲單元的讀操作,不會破壞其原來的內容。相當於復制。
2)存儲器的寫操作。例如,若要將數據ABH寫入存儲器地址為CDH的存儲單元中,其過程如下: 內容來自單片機之家www.dpj100.com
①CPU將地址碼CDH送到地址匯流排上,經存儲器地址解碼器選通地址為CDH的存儲單元;
②CPU將數據ABH送到數據匯流排上;
③CPU發出「寫」信號,存儲器讀/寫控制開關將數據傳送方向撥向「寫」;
④存儲器將數據匯流排上的數據ABH送人已被選中的地址為CDH的存儲單元中。
❷ 單片機有沒有把數據寫入程序存儲器的功能
S52沒有,但是AT89C51RB2是有的,其它很多容量超過20K的單片機也有這個功能
❸ 關於C51單片機的外擴數據存儲器的讀寫操作時序的問題
c51存儲器類型有bit
sbit
data
xdata
bdata
pdata
sfr
code等,可能不全面有遺漏
對應的物理存儲器是:
bit,即位數據:數據存儲器位定址區,即20h~2fh的范圍,共16個位元組,16*8=128個位,位地址00h~7fh,連續的。
sbit:特殊功能寄存器中的位數據:只有能夠被8整除的那些特殊功能寄存器中的各個位才能被稱為sbit,位地址80h~ffh,不連續的,間斷的。
data:數據區,對51為00h~7fh共128個位元組,對52為00h~ffh,共256個位元組,用mov定址,前128用直接定址或寄存器(r0~r7)定址,後128用r0、r1間接定址。
xdata:外部數據區,0000h~ffffh連續,用dptr間接定址(movx指令)
bdata:位定址去的位元組,20h~2fh
sfr:特殊功能寄存器(80h~ffh),直接定址
pdata:外部數據區,p2口保持數據,用r0r1間接定址(movx指令)
code:程序存儲器,用movc指令只讀