单片机stc89STC89C52C51系列头文件doc.docx

上传人:b****4 文档编号:4984263 上传时间:2023-05-07 格式:DOCX 页数:15 大小:17.78KB
下载 相关 举报
单片机stc89STC89C52C51系列头文件doc.docx_第1页
第1页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第2页
第2页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第3页
第3页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第4页
第4页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第5页
第5页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第6页
第6页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第7页
第7页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第8页
第8页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第9页
第9页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第10页
第10页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第11页
第11页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第12页
第12页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第13页
第13页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第14页
第14页 / 共15页
单片机stc89STC89C52C51系列头文件doc.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

单片机stc89STC89C52C51系列头文件doc.docx

《单片机stc89STC89C52C51系列头文件doc.docx》由会员分享,可在线阅读,更多相关《单片机stc89STC89C52C51系列头文件doc.docx(15页珍藏版)》请在冰点文库上搜索。

单片机stc89STC89C52C51系列头文件doc.docx

单片机stc89STC89C52C51系列头文件doc

/*------------------------------------------------*/

/*---宏晶科技STCMCU---------------------------*/

/*---Mobile:

(86)-------------------*/

/*---Fax:

86-----------------------*/

/*---Tel:

86-----------------------*/

/*---Web:

-----------------------*/

/*适用于:

STC89C5xRCSTC89LE5xRC--------------*/

/*-------STC89C5xRD+STC89LE5xRD+--------------*/

/*------------------------------------------------*/

#ifndef__STC89_H__

#define__STC89_H__

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrPSW=0xd0;//程序状态字Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述CYACF0RS1RS0OVF1P

//初始值=0000,000000000000

sbitCY=PSW^7;//进位标志

sbitAC=PSW^6;//辅助进位标志

sbitF0=PSW^5;//用户标志

sbitRS1=PSW^4;//寄存器组选择位

sbitRS0=PSW^3;//寄存器组选择位

sbitOV=PSW^2;//溢出标志

sbitP=PSW^0;//ACC的偶校验位

/////////////////////////////////

sfrACC=0xe0;//累加器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

sbitACC7=ACC^7;//累加器第位

sbitACC6=ACC^6;//累加器第位

sbitACC5=ACC^5;//累加器第位

sbitACC4=ACC^4;//累加器第位

sbitACC3=ACC^3;//累加器第位

sbitACC2=ACC^2;//累加器第位

sbitACC1=ACC^1;//累加器第位

sbitACC0=ACC^0;//累加器第位

/////////////////////////////////

sfrB=0xf0;//B寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

/////////////////////////////////

sfrSP=0x81;//堆栈指针Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,011100000111

/////////////////////////////////

sfrDPL=0x82;//数据指针低字节Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

sfrDPH=0x83;//数据指针高字节Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrPCON=0x87;//电源控制寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述SMODSMOD0-POFGF1GF0PDIDL

//初始值=00x1,000000x10000

#defineSMOD0x80//串口波特率倍速位,置可使波特率快倍

#defineSMOD00x40//FE/SM0选择位,0:

为SM01:

为FE

#definePOF0x10//上电复位标志位,上电时由硬件置,需由软件清

#defineGF10x08//通用标志位

#defineGF00x04//通用标志位

#definePD0x02//掉电控制位,写可以使MCU进入PowerDown模式

#defineIDL0x01//空闲控制位,写可以使MCU进入Idle模式

/////////////////////////////////

sfrWDT_CONTR=0xe1;//看门狗定时器控制器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述--EN_WDTCLR_WDTIDL_WDTPS2PS1PS0

//初始值=xx00,0000xx000000

#defineEN_WDT0x20//软件使能看门狗,打开后不能用软件的方式关闭

#defineCLR_WDT0x10//清看门狗定时器

#defineIDLE_WDT0x08//IDLE模式下,看门狗定时器是否继续计时

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrAUXR=0x8e;//辅助寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述------EXTRAMS1BRS

//初始值=xxxx,xx00xxxxxx00

#defineEXTRAM0x02//内部扩展RAM禁能位,0:

内部扩展RAM有效1:

禁用内部扩展RAM

#defineALEOFF0x01//禁止ALE信号输出,0:

使能ALE信号输出1:

关闭ALE信号输出

/////////////////////////////////

sfrAUXR1=0xa2;//辅助寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述----GF2--DPS

//初始值=xxxx,0xx0xxxx0xx0

#defineGF20x08//通用标志位

#defineDPS0x01//DPTR0/DPTR1选择位,0:

DPTR01:

DPTR1

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrP0=0x80;//I/O端口Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述

//初始值=1111,111111111111

sbitP07=P0^7;//I/O口

sbitP06=P0^6;//I/O口

sbitP05=P0^5;//I/O口

sbitP04=P0^4;//I/O口

sbitP03=P0^3;//I/O口

sbitP02=P0^2;//I/O口

sbitP01=P0^1;//I/O口

sbitP00=P0^0;//I/O口

/////////////////////////////////

sfrP1=0x90;//I/O端口Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述

//初始值=1111,111111111111

sbitP17=P1^7;//I/O口

sbitP16=P1^6;//I/O口

sbitP15=P1^5;//I/O口

sbitP14=P1^4;//I/O口

sbitP13=P1^3;//I/O口

sbitP12=P1^2;//I/O口

sbitP11=P1^1;//I/O口

sbitP10=P1^0;//I/O口

sbitT2=P1^0;//定时器的外部信号输入口

sbitT2CLKO=P1^0;//定时器定的时钟溢出脉冲输出脚

sbitT2EX=P1^1;//定时器的中断控制源

/////////////////////////////////

sfrP2=0xa0;//I/O端口Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述

//初始值=1111,111111111111

sbitP27=P2^7;//I/O口

sbitP26=P2^6;//I/O口

sbitP25=P2^5;//I/O口

sbitP24=P2^4;//I/O口

sbitP23=P2^3;//I/O口

sbitP22=P2^2;//I/O口

sbitP21=P2^1;//I/O口

sbitP20=P2^0;//I/O口

/////////////////////////////////

sfrP3=0xb0;//I/O端口Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述

//初始值=1111,111111111111

sbitP37=P3^7;//I/O口

sbitP36=P3^6;//I/O口

sbitP35=P3^5;//I/O口

sbitP34=P3^4;//I/O口

sbitP33=P3^3;//I/O口

sbitP32=P3^2;//I/O口

sbitP31=P3^1;//I/O口

sbitP30=P3^0;//I/O口

sbitRXD=P3^0;//串口的数据接收口

sbitTXD=P3^1;//串口的数据发送口

sbitINT0=P3^2;//外部中断的信号输入口

sbitINT1=P3^3;//外部中断的信号输出口

sbitT0=P3^4;//定时器的外部信号输入口

sbitT1=P3^5;//定时器的外部信号输入口

sbitWR=P3^6;//外部数据存储器的写信号

sbitRD=P3^7;//外部数据存储器的读信号

/////////////////////////////////

sfrP4=0xc0;//I/O端口Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述-

//初始值=xxxx,1111xxxx1111

sbitP43=P4^3;//I/O口

sbitP42=P4^2;//I/O口

sbitP41=P4^1;//I/O口

sbitP40=P4^0;//I/O口

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrIE=0xa8;//中断使能寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述EA-ET2ESET1EX1ET0EX0

//初始值=0x00,00000x000000

sbitEA=IE^7;//总中断开关

sbitET2=IE^5;//定时器中断使能位

sbitES=IE^4;//串口中断使能位

sbitET1=IE^3;//定时器中断使能位

sbitEX1=IE^2;//外部中断中断使能位

sbitET0=IE^1;//定时器中断使能位

sbitEX0=IE^0;//外部中断中断使能位

/////////////////////////////////

sfrIPH=0xb7;//中断优先级寄存器高位Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述PX3HPX2HPT2HPSHPT1HPX1HPT0HPX0H

//初始值=0000,000000000000

#definePX3H0x80//外部中断中断优先级控制高位

#definePX2H0x40//外部中断中断优先级控制高位

#definePT2H0x20//定时器中断优先级控制高位

#definePSH0x10//串口中断优先级控制高位

#definePT1H0x08//定时器中断优先级控制高位

#definePX1H0x04//外部中断中断优先级控制高位

#definePT0H0x02//定时器中断优先级控制高位

#definePX0H0x01//外部中断中断优先级控制高位

/////////////////////////////////

sfrIP=0xb8;//中断优先级寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述--PT2PSPT1PX1PT0PX0

//初始值=xx00,0000xx000000

sbitPT2=IP^5;//定时器中断优先级控制低位

sbitPS=IP^4;//串口中断优先级控制低位

sbitPT1=IP^3;//定时器中断优先级控制低位

sbitPX1=IP^2;//外部中断中断优先级控制低位

sbitPT0=IP^1;//定时器中断优先级控制低位

sbitPX0=IP^0;//外部中断中断优先级控制低位

/////////////////////////////////

sfrXICON=0xe8;//辅助中断使能寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述PX3EX3IE3IT3PX2EX2IE2IT2

//初始值=0000,000000000000

sbitPX3=XICON^7;//外部中断中断优先级控制低位

sbitEX3=XICON^6;//使能外部中断

sbitIE3=XICON^5;//外部中断的中断请求位,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitIT3=XICON^4;//外部中断的触发类型,0:

低电平触发外部中断1:

下降沿触发外部中断

sbitPX2=XICON^3;//外部中断中断优先级控制低位

sbitEX2=XICON^2;//使能外部中断

sbitIE2=XICON^1;//外部中断的中断请求位,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitIT2=XICON^0;//外部中断的触发类型,0:

低电平触发外部中断1:

下降沿触发外部中断

#defineX0_INTNO0//外部中断中断号,入口地址为H

#defineT0_INTNO1//定时器中断号,入口地址为BH

#defineX1_INTNO2//外部中断中断号,入口地址为H

#defineT1_INTNO3//定时器中断号,入口地址为BH

#defineUART_INTNO4//串口中断号,入口地址为H

#defineT2_INTNO5//定时器中断号,入口地址为BH

#defineX2_INTNO6//外部中断中断号,入口地址为H

#defineX3_INTNO7//外部中断中断号,入口地址为BH

////////////////////////////////////////////////////////////////////////////////////////////////////////////////

sfrTCON=0x88;//定时器/1控制寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述TF1TR1TF0TR0IE1IT1IE0IT0

//初始值=0000,000000000000

sbitTF1=TCON^7;//定时器溢出标志,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitTR1=TCON^6;//定时器的启动控制位,1:

启动定时器0:

停止定时器

sbitTF0=TCON^5;//定时器溢出标志,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitTR0=TCON^4;//定时器的启动控制位,1:

启动定时器0:

停止定时器

sbitIE1=TCON^3;//外部中断的中断请求位,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitIT1=TCON^2;//外部中断的触发类型,0:

低电平触发外部中断1:

下降沿触发外部中断

sbitIE0=TCON^1;//外部中断的中断请求位,由硬件置,可由软件清或者在中断处理程序完成后由硬件自动清

sbitIT0=TCON^0;//外部中断的触发类型,0:

低电平触发外部中断1:

下降沿触发外部中断

/////////////////////////////////

sfrTMOD=0x89;//定时器/1模式寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述GATEC/T#M1M0GATEC/T#M1M0

//初始值=0000,000000000000

#defineGATE10x80//定时器启动控制位,0:

TR1为时启动定时器1:

TR1为且INT1为高电平时才启动定时器

#defineC_T10x40//定时器/计数器选择位,0:

定时器(时钟源为内部时钟)1:

计数器(时钟源为T1引脚的外部时钟)

#defineT1_M00x00//定时器操作模式:

13位定时器

#defineT1_M10x10//定时器操作模式:

16位定时器

#defineT1_M20x20//定时器操作模式:

8位自动重载定时器

#defineT1_M30x30//定时器操作模式:

定时器停止

#defineGATE00x08//定时器启动控制位,0:

TR0为时启动定时器1:

TR0为且INT0为高电平时才启动定时器

#defineC_T00x04//定时器/计数器选择位,0:

定时器(时钟源为内部时钟)1:

计数器(时钟源为T0引脚的外部时钟)

#defineT0_M00x00//定时器操作模式:

13位定时器

#defineT0_M10x01//定时器操作模式:

16位定时器

#defineT0_M20x02//定时器操作模式:

8位自动重载定时器

#defineT0_M30x03//定时器操作模式:

TL0和TH0为两组独立位定时器

/////////////////////////////////

sfrTL0=0x8a;//定时器的低位计数值Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

/////////////////////////////////

sfrTL1=0x8b;//定时器的低位计数值Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

/////////////////////////////////

sfrTH0=0x8c;//定时器的高位计数值Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

/////////////////////////////////

sfrTH1=0x8d;//定时器的高位计数值Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//初始值=0000,000000000000

/////////////////////////////////

sfrT2CON=0xc8;//定时器控制寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0

//位描述TF2EXF2RCLKTCLKEXEN2TR2C/T2#CP/RL#

//初始值=0000,000000000000

sbitTF2=T2CON^7;//定时器溢出标志,由硬件置,必须由软件清

sbitEXF2=T2CON^6;//定时器的外部标志,由硬件置,必须由软件清

sbitRCLK=T2CON^5;//接收时钟标志,0:

使用定时器作为串口接收发生器1:

使用定时器作为串口接收发生器

sbitTCLK=T2CON^4;//发送时钟标志,0:

使用定时器作为串口发送发生器1:

使用定时器作为串口发送发生器

sbitEXEN2=T2CON^3;//定时器的外部使能标志

sbitTR2=T2CON^2;//启动定时期

sbitC_T2=T2CON^1;//定时器/计数器选择位,0:

定时器(时钟源为内部时钟)1:

计数器(时钟源为T2引脚的外部时钟)

sbitCP_RL2=T2CON^0;//捕获/重载标志

//////////////////

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2