?? stc12c5a.h
字號:
sfr ADC_RES = 0xbd; //ADC結果高字節 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr ADC_RESL = 0xbe; //ADC結果低字節 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sfr IAP_DATA = 0xc2; //IAP數據寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=1111,1111 1 1 1 1 1 1 1 1
/////////////////////////////////
sfr IAP_ADDRH = 0xc3; //IAP地址高位寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr IAP_ADDRL = 0xc4; //IAP地址低位寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr IAP_CMD = 0xc5; //IAP命令寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=xxxx,xx00 x x x x x x 0 0
#define IAP_IDLE 0x00 //IAP待機命令
#define IAP_READ 0x01 //IAP讀字節數據命令
#define IAP_PROGRAM 0x02 //IAP字節編程命令
#define IAP_ERASE 0x03 //IAP扇區擦除命令(每扇區512字節))
/////////////////////////////////
sfr IAP_TRIG = 0xc6; //IAP命令觸發寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=xxxx,xxxx x x x x x x x x
#define IAP_TRIG0 0x5a //IAP功能觸發命令1
#define IAP_TRIG1 0xa5 //IAP功能觸發命令2
/////////////////////////////////
sfr IAP_CONTR = 0xc7; //IAP控制寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 IAPEN SWBS SWRST CMD_FAIL - WT2 WT1 WT0
//初始值=0000,0000 0 0 0 0 0 0 0 0
#define IAPEN 0x80 //IAP使能開關
#define SWBS 0x40 //軟啟動選擇,0:從用戶AP啟動 1:從ISP啟動
#define SWRST 0x20 //觸發軟件復位
#define CMD_FAIL 0x10 //IAP命令失敗標志
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sfr SPSTAT = 0xcd; //SPI狀態寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 SPIF WCOL - - - - - -
//初始值=11xx,xxxx 1 1 x x x x x x
#define SPIF 0x80 //SPI傳輸完成標志,當SPI中斷使能時會觸發SPI中斷請求,需要用軟件向此位寫"1"來清0
#define WCOL 0x40 //SPI寫沖突標志,需要用軟件向此位寫"1"來清0
/////////////////////////////////
sfr SPCTL = 0xce; //SPI控制寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 SSIG SPEN DORD MSTR CPOL CPHA SPR1 SPR0
//初始值=0000,0100 0 0 0 0 0 1 0 0
#define SSIG 0x80 //SS忽略位,1:由MSTR確定主/從 0:由SS腳確定主/從
#define SPEN 0x40 //SPI模塊使能位
#define DORD 0x20 //SPI數據順序,1:LSB(先收/發最低位) 0:MSB(先收/發最高位)
#define MSTR 0x10 //主/從模式選擇位
#define CPOL 0x08 //SPI時鐘極性
#define CPHA 0x04 //SPI相位選擇
#define SPSPEEDHH 0x00 //最快的速度,CPU_CLK/4
#define SPSPEEDH 0x01 //最快的速度,CPU_CLK/16
#define SPSPEEDL 0x02 //最快的速度,CPU_CLK/64
#define SPSPEEDLL 0x03 //最快的速度,CPU_CLK/128
/////////////////////////////////
sfr SPDAT = 0xcf; //SPI數據寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sfr CCON = 0xd8; //PCA控制寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 CF CR - - - - CCF1 CCF0
//初始值=00xx,xx00 0 0 x x x x 0 0
sbit CF = CCON^7; //PCA計數器溢出標志,當PCA中斷使能時會觸發PCA中斷請求,需要用軟件清0
sbit CR = CCON^6; //PCA計數器啟動控制位,寫"1"啟動東計數器
sbit CCF1 = CCON^1; //PCA模塊1中斷標志,需要用軟件清0
sbit CCF0 = CCON^0; //PCA模塊0中斷標志,需要用軟件清0
/////////////////////////////////
sfr CMOD = 0xd9; //PCA模式寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 CIDL - - - CPS2 CPS1 CPS0 ECF
//初始值=0xxx,0000 0 x x x 0 0 0 0
#define CIDL 0x80 //計時器陣列空閑控制,0:空閑模式下PCA繼續工作 1:空閑模式下PCA停止工作
#define PCACLK0 0x00 //Fosc/12
#define PCACLK1 0x02 //Fosc/2
#define PCACLK2 0x04 //定時器0的溢出率
#define PCACLK3 0x06 //ECI外部時鐘
#define PCACLK4 0x08 //Fosc/1
#define PCACLK5 0x0a //Fosc/4
#define PCACLK6 0x0c //Fosc/6
#define PCACLK7 0x0e //Fosc/8
#define ECF 0x01 //PCA計數器溢出中斷允許位
/////////////////////////////////
sfr CCAPM0 = 0xda; //PCA模塊0模式寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 - ECOM0 CAPP0 CAPN0 MAT0 TOG0 PWM0 ECCF0
//初始值=x000,0000 x 0 0 0 0 0 0 0
#define PCA0_ECOM 0x40 //使能比較器0
#define PCA0_CAPP 0x20 //使能PCA模塊0的上升沿捕獲
#define PCA0_CAPN 0x10 //使能PCA模塊0的下降沿捕獲
#define PCA0_MAT 0x08 //匹配使能,當PCA的計數值與模塊0設定的值相匹配時,置CCON.CCF0
#define PCA0_TOG 0x04 //翻轉控制位,當PCA的計數值與模塊0設定的值相匹配時,翻轉CEX0的電平
#define PCA0_PWM 0x02 //脈寬調制模式,使能CEX0為脈寬調制輸出口
#define PCA0_ECCF 0x01 //使能CCF0中斷
/////////////////////////////////
sfr CCAPM1 = 0xdb; //PCA模塊1模式寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 - ECOM1 CAPP1 CAPN1 MAT1 TOG1 PWM1 ECCF1
//初始值=x000,0000 x 0 0 0 0 0 0 0
#define PCA1_ECOM 0x40 //使能比較器1
#define PCA1_CAPP 0x20 //使能PCA模塊1的上升沿捕獲
#define PCA1_CAPN 0x10 //使能PCA模塊1的下降沿捕獲
#define PCA1_MAT 0x08 //匹配使能,當PCA的計數值與模塊1設定的值相匹配時,置CCON.CCF1
#define PCA1_TOG 0x04 //翻轉控制位,當PCA的計數值與模塊1設定的值相匹配時,翻轉CEX1的電平
#define PCA1_PWM 0x02 //脈寬調制模式,使能CEX1為脈寬調制輸出口
#define PCA1_ECCF 0x01 //使能CCF1中斷
/////////////////////////////////
//CCAPM0 - ECOM CAPP CAPN MAT TOG PWM CCF
// 00H 0 0 0 0 0 0 0 0 無操作,待機狀態
// 42H 0 1 0 0 0 0 1 0 8位PWM輸出,無中斷
// 63H 0 1 1 0 0 0 1 1 8位PWM輸出,產生CEX0上升沿中斷
// 53H 0 1 0 1 0 0 1 1 8位PWM輸出,產生CEX0下降沿中斷
// 73H 0 1 1 1 0 0 1 1 8位PWM輸出,產生CEX0跳變中斷
// 20H 0 x 1 0 0 0 0 0 16位捕獲模式,CEX0上升沿觸發捕獲
// 10H 0 x 0 1 0 0 0 0 16位捕獲模式,CEX0下降沿觸發捕獲
// 30H 0 x 1 1 0 0 0 0 16位捕獲模式,CEX0跳變觸發捕獲
// 48H 0 1 0 0 1 0 0 0 16位軟件定時器
// 4CH 0 1 0 0 1 1 0 0 16位高速脈沖輸出
/////////////////////////////////
sfr CL = 0xe9; //PCA計數器低8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr CH = 0xf9; //PCA計數器高8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr CCAP0L = 0xea; //PCA模塊0寄存器低8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr CCAP1L = 0xeb; //PCA模塊1寄存器低8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr CCAP0H = 0xfa; //PCA模塊0寄存器高8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr CCAP1H = 0xfb; //PCA模塊1寄存器高8位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//初始值=0000,0000 0 0 0 0 0 0 0 0
/////////////////////////////////
sfr PCA_PWM0 = 0xf2; //PCA0模式PWM輔助寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 - - - - - - EPC0H EPC0L
//初始值=xxxx,xx00 x x x x x x 0 0
/////////////////////////////////
sfr PCA_PWM1 = 0xf3; //PCA1模式PWM輔助寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
//位描述 - - - - - - EPC1H EPC1L
//初始值=xxxx,xx00 x x x x x x 0 0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -