新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > STC12C5A60S2系列雙串口1T 8051單片機頭文件

        STC12C5A60S2系列雙串口1T 8051單片機頭文件

        作者: 時間:2013-05-11 來源:網(wǎng)絡(luò) 收藏

        // 7 6 5 4 3 2 1 0 Reset Value
        sfr TCON = 0x88; //T0/T1 Control TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 0000,0000
        //-----------------------------------
        sbit TF1 = TCON^7;
        sbit TR1 = TCON^6;
        sbit TF0 = TCON^5;
        sbit TR0 = TCON^4;
        sbit IE1 = TCON^3;
        sbit IT1 = TCON^2;
        sbit IE0 = TCON^1;
        sbit IT0 = TCON^0;
        //-----------------------------------
        sfr TMOD = 0x89; //T0/T1 Modes GATE1 C/T1 M1_1 M1_0 GATE0 C/T0 M0_1 M0_0 0000,0000
        sfr TL0 = 0x8A; //T0 Low Byte 0000,0000
        sfr TH0 = 0x8C; //T0 High Byte 0000,0000
        sfr TL1 = 0x8B; //T1 Low Byte 0000,0000
        sfr TH1 = 0x8D; //T1 High Byte 0000,0000
        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機串行口特殊功能寄存器
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr SCON = 0x98; //Serial Control SM0/FE SM1 SM2 REN TB8 RB8 TI RI 0000,0000
        //-----------------------------------
        sbit SM0 = SCON^7; //SM0/FE
        sbit SM1 = SCON^6;
        sbit SM2 = SCON^5;
        sbit REN = SCON^4;
        sbit TB8 = SCON^3;
        sbit RB8 = SCON^2;
        sbit TI = SCON^1;
        sbit RI = SCON^0;
        //-----------------------------------
        sfr SBUF = 0x99; //Serial Data Buffer xxxx,xxxx
        sfr SADEN = 0xB9; //Slave Address Mask 0000,0000
        sfr SADDR = 0xA9; //Slave Address 0000,0000
        //-----------------------------------
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr S2CON = 0x9A; //S2 Control S2SM0 S2SM1 S2SM2 S2REN S2TB8 S2RB8 S2TI S2RI 00000000B
        sfr S2BUF = 0x9B; //S2 Serial Buffer xxxx,xxxx
        sfr BRT = 0x9C; //S2 Baud-Rate Timer 0000,0000
        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機看門狗定時器特殊功能寄存器
        sfr WDT_CONTR = 0xC1; //Watch-Dog-Timer Control register
        // 7 6 5 4 3 2 1 0 Reset Value
        // WDT_FLAG - EN_WDT CLR_WDT IDLE_WDT PS2 PS1 PS0 xx00,0000
        //-----------------------

        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機PCA/PWM 特殊功能寄存器
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr CCON = 0xD8; //PCA 控制寄存器。 CF CR - - - - CCF1 CCF0 00xx,xx00
        //-----------------------
        sbit CF = CCON^7; //PCA計數(shù)器溢出標(biāo)志,由硬件或軟件置位,必須由軟件清0。
        sbit CR = CCON^6; //1:允許 PCA 計數(shù)器計數(shù), 必須由軟件清0。
        //-
        //-
        sbit CCF1 = CCON^1; //PCA 模塊1 中斷標(biāo)志, 由硬件置位, 必須由軟件清0。
        sbit CCF0 = CCON^0; //PCA 模塊0 中斷標(biāo)志, 由硬件置位, 必須由軟件清0。
        //-----------------------
        sfr CMOD = 0xD9; //PCA 工作模式寄存器。 CIDL - - - CPS2 CPS1 CPS0 ECF 0xxx,x000
        /*
        CIDL: idle 狀態(tài)時 PCA 計數(shù)器是否繼續(xù)計數(shù), 0: 繼續(xù)計數(shù), 1: 停止計數(shù)。

        CPS2: PCA 計數(shù)器脈沖源選擇位 2。
        CPS1: PCA 計數(shù)器脈沖源選擇位 1。
        CPS0: PCA 計數(shù)器脈沖源選擇位 0。
        CPS2 CPS1 CPS0
        0 0 0 系統(tǒng)時鐘頻率 fosc/12。
        0 0 1 系統(tǒng)時鐘頻率 fosc/2。
        0 1 0 Timer0 溢出。
        0 1 1 由 ECI/P3.4 腳輸入的外部時鐘,最大 fosc/2。
        1 0 0 系統(tǒng)時鐘頻率, Fosc/1
        1 0 1 系統(tǒng)時鐘頻率/4,F(xiàn)osc/4
        1 1 0 系統(tǒng)時鐘頻率/6,F(xiàn)osc/6
        1 1 1 系統(tǒng)時鐘頻率/8,F(xiàn)osc/8

        ECF: PCA計數(shù)器溢出中斷允許位, 1--允許 CF(CCON.7) 產(chǎn)生中斷。
        */
        //-----------------------
        sfr CL = 0xE9; //PCA 計數(shù)器低位 0000,0000
        sfr CH = 0xF9; //PCA 計數(shù)器高位 0000,0000
        //-----------------------
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr CCAPM0 = 0xDA; //PCA 模塊0 PWM 寄存器 - ECOM0 CAPP0 CAPN0 MAT0 TOG0 PWM0 ECCF0 x000,0000
        sfr CCAPM1 = 0xDB; //PCA 模塊1 PWM 寄存器 - ECOM1 CAPP1 CAPN1 MAT1 TOG1 PWM1 ECCF1 x000,0000

        //ECOMn = 1:允許比較功能。
        //CAPPn = 1:允許上升沿觸發(fā)捕捉功能。
        //CAPNn = 1:允許下降沿觸發(fā)捕捉功能。
        //MATn = 1:當(dāng)匹配情況發(fā)生時, 允許 CCON 中的 CCFn 置位。
        //TOGn = 1:當(dāng)匹配情況發(fā)生時, CEXn 將翻轉(zhuǎn)。
        //PWMn = 1:將 CEXn 設(shè)置為 PWM 輸出。
        //ECCFn = 1:允許 CCON 中的 CCFn 觸發(fā)中斷。

        //ECOMn CAPPn CAPNn MATn TOGn PWMn ECCFn
        // 0 0 0 0 0 0 0 0x00 未啟用任何功能。
        // x 1 0 0 0 0 x 0x21 16位CEXn上升沿觸發(fā)捕捉功能。
        // x 0 1 0 0 0 x 0x11 16位CEXn下降沿觸發(fā)捕捉功能。
        // x 1 1 0 0 0 x 0x31 16位CEXn邊沿(上、下沿)觸發(fā)捕捉功能。
        // 1 0 0 1 0 0 x 0x49 16位軟件定時器。
        // 1 0 0 1 1 0 x 0x4d 16位高速脈沖輸出。
        // 1 0 0 0 0 1 0 0x42 8位 PWM。

        //ECOMn CAPPn CAPNn MATn TOGn PWMn ECCFn
        // 0 0 0 0 0 0 0 0x00 無此操作
        // 1 0 0 0 0 1 0 0x42 普通8位PWM, 無中斷
        // 1 1 0 0 0 1 1 0x63 PWM輸出由低變高可產(chǎn)生中斷
        // 1 0 1 0 0 1 1 0x53 PWM輸出由高變低可產(chǎn)生中斷
        // 1 1 1 0 0 1 1 0x73 PWM輸出由低變高或由高變低都可產(chǎn)生中斷

        //-----------------------
        sfr CCAP0L = 0xEA; //PCA 模塊 0 的捕捉/比較寄存器低 8 位。 0000,0000
        sfr CCAP0H = 0xFA; //PCA 模塊 0 的捕捉/比較寄存器高 8 位。 0000,0000
        sfr CCAP1L = 0xEB; //PCA 模塊 1 的捕捉/比較寄存器低 8 位。 0000,0000
        sfr CCAP1H = 0xFB; //PCA 模塊 1 的捕捉/比較寄存器高 8 位。 0000,0000
        //-----------------------
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr PCA_PWM0 = 0xF2; //PCA 模塊0 PWM 寄存器。 - - - - - - EPC0H EPC0L xxxx,xx00
        sfr PCA_PWM1 = 0xF3; //PCA 模塊1 PWM 寄存器。 - - - - - - EPC1H EPC1L xxxx,xx00
        //PCA_PWMn: 7 6 5 4 3 2 1 0
        // - - - - - - EPCnH EPCnL
        //B7-B2: 保留
        //B1(EPCnH): 在 PWM 模式下,與 CCAPnH 組成 9 位數(shù)。
        //B0(EPCnL): 在 PWM 模式下,與 CCAPnL 組成 9 位數(shù)。
        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機 ADC 特殊功能寄存器
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr ADC_CONTR = 0xBC; //A/D 轉(zhuǎn)換控制寄存器 ADC_POWER SPEED1 SPEED0 ADC_FLAG ADC_START CHS2 CHS1 CHS0 0000,0000
        sfr ADC_RES = 0xBD; //A/D 轉(zhuǎn)換結(jié)果高8位 ADCV.9 ADCV.8 ADCV.7 ADCV.6 ADCV.5 ADCV.4 ADCV.3 ADCV.2 0000,0000
        sfr ADC_RESL = 0xBE; //A/D 轉(zhuǎn)換結(jié)果低2位 ADCV.1 ADCV.0 0000,0000
        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機 SPI 特殊功能寄存器
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr SPCTL = 0xCE; //SPI Control Register SSIG SPEN DORD MSTR CPOL CPHA SPR1 SPR0 0000,0100
        sfr SPSTAT = 0xCD; //SPI Status Register SPIF WCOL - - - - - - 00xx,xxxx
        sfr SPDAT = 0xCF; //SPI Data Register 0000,0000
        //--------------------------------------------------------------------------------
        //新一代 1T 8051系列 單片機 IAP/ISP 特殊功能寄存器
        sfr IAP_DATA = 0xC2;
        sfr IAP_ADDRH = 0xC3;
        sfr IAP_ADDRL = 0xC4;
        // 7 6 5 4 3 2 1 0 Reset Value
        sfr IAP_CMD = 0xC5; //IAP Mode Table 0 - - - - - MS1 MS0 0xxx,xx00
        sfr IAP_TRIG = 0xC6;
        sfr IAP_CONTR = 0xC7; //IAP Control Register IAPEN SWBS SWRST CFAIL - WT2 WT1 WT0 0000,x000
        //--------------------------------------------------------------------------------

        塵埃粒子計數(shù)器相關(guān)文章:塵埃粒子計數(shù)器原理

        上一頁 1 2 下一頁

        關(guān)鍵詞: STC12C5A60S2 雙串口 頭文件

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 南丹县| 东辽县| 固镇县| 宁化县| 唐山市| 高邮市| 石狮市| 泰州市| 徐汇区| 井陉县| 汾阳市| 临夏市| 祥云县| 上林县| 绥滨县| 津南区| 武穴市| 哈尔滨市| 江城| 琼海市| 青海省| 北票市| 进贤县| 石嘴山市| 绍兴县| 弥勒县| 府谷县| 中阳县| 调兵山市| 澄城县| 武定县| 出国| 吐鲁番市| 平山县| 古浪县| 自治县| 安乡县| 马鞍山市| 临海市| 磴口县| 田阳县|