1. 51單片機的工作寄存器R0~R7位於內部RAM什麼位置其位置是如何設定的
51單片機的工作寄存器一共有32個,為RAM中的00H--1FH單元,分為4組,分別是
0組:00H--07H單元、
1組:08H--0FH單元、
2組:10H--17H單元、
3組:18H--1FH單元,
每組的8個單元分別對應R0--R7。這四組中只有一組是當前工作寄存器,程序中使用的就是當前工作寄存器中的8個單元。當前工作寄存器是由程序狀態字PSW中的第三第四位決定的。在PSW中,的PSW4、PSW3兩位組合的00、01、10、11四個狀態,分別指定工作寄存器的0組、1組、2組、3組,只需要用指令改變PSW的這兩位狀態,就可以改變當前工作寄存器組。這樣,實際上就是有32個工作寄存器可以選用。
2. 51單片機中的4個工作寄存器組,什麼時候用到怎麼用,請舉個簡單例子,謝謝了
一般情況下,都是用的是第一個寄存器組,即R0~R7對應00H~07H,當使用中斷的時候,為了避免使用工作寄存器造成的相互影響,常常使用其他工作寄存器組。比如:
void t0isr() interrupt 1 using 2 就是使用10H~17H這一組工作寄存器。
3. 51單片機16位特殊功能寄存器有幾個
51單片機16位特殊功能寄存器只有PC和DPTR,其中PC不可以直接操作,就剩下DPTR了。
另外定時器雖是16位的,但被分成了兩個8位寄存器分別操作。
4. 51單片機關於寄存器的問題,請幫助我解釋一下
P1M0和P1M1是兩個寄存器,用來設置P1口各個埠的工作狀態的,從說明上看,你的P1的八個口中的每一個口都有四個工作狀態,分別為00b,01b,10b,11b這四種狀態。用P1M0的第一位和P1M1的第一位控制P1.0這個埠的工作方式,用P1M0和P1M1的第二位的兩個位來控制P1.1的埠的工作狀態。所以,P1M0和P1M1兩個寄存器就可以用來管理P1的八個口的所有四種工作狀態了。
對應的方式是這們的:
埠工作控制寄存器位 埠的工作狀態
P1M0.7 P1M1.7 P1.7
0 0 准雙向口
0 1 推挽輸出
1 0 僅為輸入
1 1 開漏(Open Drain)
上邊的是以P1.7的埠為例的情況,其他的七個埠(P1.6,P1.5,P1.4,P1.3,P1.2,P1.1,P1.0)也是一樣的道理。
即P1.6受控於P1M0.6和P1M1.6,P1.5受控於P1M0.5和P1M1.5,等等。。。。。
程序中,P1M0和P1M1都賦的值是0x00,說明你的P1的八個口都工作在00b這個工作模式下,也就是「准雙向口」。
程序中對於P3口的工作方式設定,P3M0 = oxoo, P3M1 = 0x0f,說明,P3口的工作方式是
底四位(P3.0,P3.1,P3.2,P3.3):為01b,即,推挽輸出;
高四位(P3.4,P3.5,P3.6,P3.7):為00b,即,准雙向口
5. c51單片機的16位寄存器有哪些
DPTR,因為51單片機雖然是8位機,但地址匯流排是16位的,所以數據指針一定得是16位,還有就是兩個定時器的計數寄存器counter也是16位的,
6. 51系列單片機工作寄存器有幾組
工作寄存器有4組,每組都是8個工作寄存器R0~R7,通過PSW中的RS1、RS0兩位來選擇使用哪一組,如果不選,默認是選擇第0組。
RS1RS0組合為00時,選中第0組工作寄存器,R0~R7地址為00H~07H;
RS1RS0組合為01時,選中第1組工作寄存器,R0~R7地址為08H~0FH;
RS1RS0組合為10時,選中第2組工作寄存器,R0~R7地址為10H~17H;
RS1RS0組合為11時,選中第3組工作寄存器,R0~R7地址為18H~1FH。
7. 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指令只讀
8. 51單片機中工作寄存器作用是什麼
簡單的說是用來存放數據的。
51單片機是對所有兼容Intel 8031指令系統的單片機的統稱。該系列單片機的始祖是Intel的8004單片機,後來隨著Flash rom技術的發展,8004單片機取得了長足的進展,成為應用最廣泛的8位單片機之一,其代表型號是ATMEL公司的AT89系列。
它廣泛應用於工業測控系統之中。很多公司都有51系列的兼容機型推出,今後很長的一段時間內將佔有大量市場。51單片機是基礎入門的一個單片機,還是應用最廣泛的一種。需要注意的是51系列的單片機一般不具備自編程能力。
(8)c51單片機寄存器擴展閱讀:
硬體說明
1、使用用戶板的晶振:模擬器晶振旁有兩組跳線用來切換內部晶振和用戶板晶振,當兩個短路塊位於模擬器晶振一側時,默認使用模擬板上的晶振(11.0592MHz), 當兩個短路塊位於電容一側時,使用用戶板的晶振。
2、為便於調試帶看門狗的用戶板,模擬器的復位端未與用戶板復位端相連;故模擬器的復位按鈕只復位模擬器,不復位用戶板;若要復位用戶板,請使用用戶板復位按鈕。
9. C51單片機工作寄存器是怎樣選擇的
C51單片機內部RAM最低端的32位元組稱為工作寄存器
10. 51單片機中寄存器是什麼
寄存器是特殊的RAM,特殊功能寄存器是控制單片機硬體的開關(例如IE)或者是指示單片機狀態的信號(例如PSW),通過特殊寄存器你就可以方便的控制整個MCU,並且知道當前的MCU的工作狀態。
還有是通用寄存器,例如R0~R7,這些寄存器由於設計上的目的,比一般的RAM使用起來更方便,更快捷,並且某些指令必須通過它們才能執行