51單片機的寄存器分為工作寄存器和特殊功能寄存器兩大類。工作寄存器在內部RAM的00H~1FH地址區,共分4組,都用R0~R7表示,因為編寫主程序時需要調用子程序或響應中斷服務程序,如果都使用一組工作寄存器,必然會造成寄存器的數據沖突,而出現錯誤。因此,需用特殊功能寄存器程序狀態字(PSW)的RS0、RS1兩位來設置使用的工作寄存器組,應單片機開機上電復位時,PSW為00H,故自動選擇第0組工作寄存器,而子程序和中斷服務程序可使用第1組、第2組或第3組工作寄存器,這樣即使編程時使用了相同的工作寄存器,也不會造成寄存器的數據沖突了。
特殊功能寄存器在內部RAM的80H~0FFH地址區,主要有累加器A,寄存器B,程序狀態字PSW,P0~P3 I/O口寄存器,定時/計數器及串行通信控制、中斷控制等特殊功能寄存器,這些寄存器的應用課本上都有詳細的介紹,需要慢慢的學習體會。最好賣塊51單片機的仿真實驗板,邊練邊學,才能提高學習興趣加深理解。
|