?? stc12.h
字號:
/* 看門狗定時器寄存器 */
sfr WDT_CONTR = 0xe1; //看門狗定時器控制寄存器
/* ISP_IAP_EEPROM 寄存器 */
sfr ISP_DATA = 0xe2; //ISP/IAP Flash數據寄存器
sfr ISP_ADDRH = 0xe3; //ISP/IAP Flash地址高字節
sfr ISP_ADDRL = 0xe4; //ISP/IAP Flash地址低字節
sfr ISP_CMD = 0xe5; //ISP/IAP Flash命令寄存器
sfr ISP_TRIG = 0xe6; //ISP/IAP Flash命令觸發器
sfr ISP_CONTR = 0xe7; //ISP/IAP控制寄存器
/* 時鐘分頻控制寄存器 */
sfr CLK_DIV = 0xc7; //時鐘分頻控制寄存器
/* I/O 端口模式設定寄存器 */
sfr P0M0 = 0x93; //P0口工作模式寄存器0
sfr P0M1 = 0x94; //P0口工作模式寄存器1
sfr P1M0 = 0x91; //P1口工作模式寄存器0
sfr P1M1 = 0x92; //P1口工作模式寄存器1
sfr P2M0 = 0x95; //P2口工作模式寄存器0
sfr P2M1 = 0x96; //P2口工作模式寄存器1
sfr P3M0 = 0xb1; //P3口工作模式寄存器0
sfr P3M1 = 0xb2; //P3口工作模式寄存器1
/* SPI 寄存器 */
sfr SPSTAT = 0x84; //SPI狀態寄存器,本寄存器不支持位操作
sfr SPCTL = 0x85; //SPI控制寄存器
sfr SPDAT = 0x86; //SPI數據寄存器
/* ADC 寄存器 */
sfr ADC_CONTR = 0xc5; //ADC控制寄存器, 本寄存器不支持位操作
sfr ADC_DATA = 0xc6; //ADC轉換結果高8位寄存器
sfr ADC_LOW2 = 0xbe; //ADC轉換結果低2位寄存器
/* PCA 寄存器 */
sfr CCON = 0xD8; //PCA控制寄存器
sbit CF = CCON^7; //PCA計數器溢出(CH,CL由FFFFH變為0000H)標志
sbit CR = CCON^6; //PCA計數器計數允許控制位
sbit CCF3 = CCON^3; //PCA模塊3中斷標志
sbit CCF2 = CCON^2; //PCA模塊2中斷標志
sbit CCF1 = CCON^1; //PCA模塊1中斷標志
sbit CCF0 = CCON^0; //PCA模塊0中斷標志
sfr CMOD = 0xD9; //PCA工作模式寄存器
sfr CCAPM0 = 0xDA; //PAC模塊0的工作模式寄存器
sfr CCAPM1 = 0xDB; //PAC模塊1的工作模式寄存器
sfr CCAPM2 = 0xDC; //PAC模塊2的工作模式寄存器
sfr CCAPM3 = 0xDD; //PAC模塊3的工作模式寄存器
sfr CL = 0xE9; //PCA計數器低8位
sfr CCAP0L = 0xEA; //PAC模塊0捕捉/比較寄存器低8位
sfr CCAP1L = 0xEB; //PAC模塊1捕捉/比較寄存器低8位
sfr CCAP2L = 0xEC; //PAC模塊2捕捉/比較寄存器低8位
sfr CCAP3L = 0xED; //PAC模塊3捕捉/比較寄存器低8位
sfr CH = 0xF9; //PCA計數器高8位
sfr CCAP0H = 0xFA; //PAC模塊0捕捉/比較寄存器高8位
sfr CCAP1H = 0xFB; //PAC模塊1捕捉/比較寄存器高8位
sfr CCAP2H = 0xFC; //PAC模塊2捕捉/比較寄存器高8位
sfr CCAP3H = 0xFD; //PAC模塊3捕捉/比較寄存器高8位
sfr PCA_PWM0 = 0xF2; //PCA模塊0 PWM寄存器
sfr PCA_PWM1 = 0xF3; //PCA模塊1 PWM寄存器
sfr PCA_PWM2 = 0xF4; //PCA模塊2 PWM寄存器
sfr PCA_PWM3 = 0xF5; //PCA模塊3 PWM寄存器
/* 以上是STC12C5410AD單片機新增或修改的特殊功能寄存器 */
/*--------------------------------------------------------------------------
REG51F.H
Header file for 8xC31/51, 80C51Fx, 80C51Rx+
Copyright (c) 1988-1999 Keil Elektronik GmbH and Keil Software, Inc.
All rights reserved.
Modification according to DataSheet from April 1999
- SFR's AUXR and AUXR1 added for 80C51Rx+ derivatives
--------------------------------------------------------------------------*/
/* 字節寄存器 */
sfr P0 = 0x80; //P0口寄存器
sfr P1 = 0x90; //P1口寄存器
sfr P2 = 0xA0; //P2口寄存器
sfr P3 = 0xB0; //P3口寄存器
sbit T1 = P3^5; //定時器1外部輸入
sbit T0 = P3^4; //定時器0外部輸入
sbit INT1 = P3^3; //外部中斷1
sbit INT0 = P3^2; //外部中斷0
sbit TXD = P3^1; //串行輸入通道
sbit RXD = P3^0; //串行輸出通道
sfr PSW = 0xD0; //程序狀態字寄存器
sbit CY = PSW^7; //進位標志位
sbit AC = PSW^6; //輔助進位標志位
sbit F0 = PSW^5; //用戶標志位0
sbit RS1 = PSW^4; //工作寄存器組選擇控制位
sbit RS0 = PSW^3; //工作寄存器組選擇控制位
sbit OV = PSW^2; //溢出標志位
sbit F1 = PSW^1; //用戶標志位1
sbit P = PSW^0; //奇偶標志位
sfr ACC = 0xE0; //累加器
sfr B = 0xF0; //B 寄存器
sfr SP = 0x81; //堆棧指針寄存器
sfr DPL = 0x82; //數據指針0低字節
sfr DPH = 0x83; //數據指針0高字節
sfr PCON = 0x87; //電源控制寄存器
sfr TCON = 0x88; //定時/計數控制寄存器
sbit TF1 = TCON^7; //定時器1溢出中斷標志
sbit TR1 = TCON^6; //定時器1運行控制位
sbit TF0 = TCON^5; //定時器0溢出中斷標志
sbit TR0 = TCON^4; //定時器0運行控制位
sbit IE1 = TCON^3; //外部中斷1請求標志
sbit IT1 = TCON^2; //選擇外部中斷請求1為邊沿觸發方式的控制位
sbit IE0 = TCON^1; //外部中斷0請求標志
sbit IT0 = TCON^0; //選擇外部中斷請求0為邊沿觸發方式的控制位
sfr TMOD = 0x89; //定時/計數模式控制寄存器
sfr TL0 = 0x8A; //定時/計數器0低字節
sfr TL1 = 0x8B; //定時/計數器1低字節
sfr TH0 = 0x8C; //定時/計數器0高字節
sfr TH1 = 0x8D; //定時/計數器1高字節
sfr IE = 0xA8; //中斷允許寄存器
sbit EA = IE^7; //總中斷允許位
sbit EPCA_LVD = IE^6; //PCA和低電壓檢測共享的中斷控制位
sbit EADC_SPI = IE^5; //ADC/SPI中斷允許控制位
sbit ES = IE^4; //串行中斷允許位
sbit ET1 = IE^3; //定時器1溢出中斷允許位
sbit EX1 = IE^2; //外部中斷1允許位
sbit ET0 = IE^1; //定時器0溢出中斷允許位
sbit EX0 = IE^0; //外部中斷0允許位
sfr IP = 0xB8; //中斷優先級寄存器
sbit PPCA_LVD = IP^6; // PCA/低電壓檢測中斷優先級控制位
sbit PADC_SPI = IP^5; // ADC/SPI中斷優先級控制位
sbit PS = IP^4; //決定串行中斷優先級
sbit PT1 = IP^3; //決定定時器1中斷優先級
sbit PX1 = IP^2; //決定外部中斷1優先級
sbit PT0 = IP^1; //決定定時器0中斷優先級
sbit PX0 = IP^0; //決定外部中斷0優先級
sfr SCON = 0x98; //串行口控制寄存器
sbit SM0 = SCON^7; //串行口工作方式設定控制位0(與FE功能復用)
sbit FE = SCON^7;
sbit SM1 = SCON^6; //串行口工作方式設定控制位1
sbit SM2 = SCON^5; //UART的SM2設定
sbit REN = SCON^4; //接收允許位
sbit TB8 = SCON^3; //發送數據的第九位
sbit RB8 = SCON^2; //接收數據的第九位
sbit TI = SCON^1; //發送中斷標志
sbit RI = SCON^0; //接收中斷標志
sfr SBUF = 0x99; //串口數據緩沖器
/* 比80C51多出來的寄存器 */
sfr AUXR = 0x8E; //輔助寄存器
sfr IPH = 0xB7; //中斷優先級高位寄存器
/* PCA 引腳 */
sbit CEX3 = P2^4;
sbit CEX2 = P2^0;
sbit CEX1 = P3^5;
sbit CEX0 = P3^7;
sbit ECI = P3^4;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -