⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stc12c5a.h

📁 STC单片机全系列头文件
💻 H
📖 第 1 页 / 共 4 页
字号:

sbit SPISCLK    =   P1^7;       //SPI总线的时钟脚
sbit SPIMISO    =   P1^6;       //SPI总线的主出从入脚
sbit SPIMOSI    =   P1^5;       //SPI总线的主入从出脚
sbit SPISS      =   P1^4;       //SPI总线的从机选择脚

sbit CEX1       =   P1^4;       //比较/捕获/PWM1外部引脚
sbit CEX0       =   P1^3;       //比较/捕获/PWM0外部引脚
sbit ECI        =   P1^2;       //比较/捕获/PWM模块的外部时钟输入脚(最大值为Fosc/2)

sbit TXD2       =   P1^3;       //串口2数据输出脚
sbit RXD2       =   P1^2;       //串口2数据输入脚

sbit BRTCLKO    =   P1^0;       //BRT时钟溢出脉冲输出脚

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

sfr  P2         =   0xa0;       //I/O端口2              Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                P2.7    P2.6    P2.5    P2.4    P2.3    P2.2    P2.1    P2.0
                                //初始值=1111,1111      1       1       1       1       1       1       1       1

sbit P27        =   P2^7;       //I/O口P2.7
sbit P26        =   P2^6;       //I/O口P2.6
sbit P25        =   P2^5;       //I/O口P2.5
sbit P24        =   P2^4;       //I/O口P2.4
sbit P23        =   P2^3;       //I/O口P2.3
sbit P22        =   P2^2;       //I/O口P2.2
sbit P21        =   P2^1;       //I/O口P2.1
sbit P20        =   P2^0;       //I/O口P2.0

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

sfr  P3         =   0xb0;       //I/O端口3              Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                P3.7    P3.6    P3.5    P3.4    P3.3    P3.2    P3.1    P3.0
                                //初始值=1111,1111      1       1       1       1       1       1       1       1

sbit P37        =   P3^7;       //I/O口P3.7
sbit P36        =   P3^6;       //I/O口P3.6
sbit P35        =   P3^5;       //I/O口P3.5
sbit P34        =   P3^4;       //I/O口P3.4
sbit P33        =   P3^3;       //I/O口P3.3
sbit P32        =   P3^2;       //I/O口P3.2
sbit P31        =   P3^1;       //I/O口P3.1
sbit P30        =   P3^0;       //I/O口P3.0

sbit RXD        =   P3^0;       //串口1的数据接收口
sbit TXD        =   P3^1;       //串口1的数据发送口
sbit INT0       =   P3^2;       //外部中断0的信号输入口
sbit INT1       =   P3^3;       //外部中断1的信号输出口
sbit T0         =   P3^4;       //定时器0的外部信号输入口
sbit T1         =   P3^5;       //定时器1的外部信号输入口
sbit WR         =   P3^6;       //外部数据存储器的写信号
sbit RD         =   P3^7;       //外部数据存储器的读信号

sbit T0CLKO     =   P3^4;       //定时器0的时钟溢出脉冲输出脚
sbit T1CLKO     =   P3^5;       //定时器1的时钟溢出脉冲输出脚

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

sfr  P4         =   0xc0;       //I/O端口4              Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                P4.7    P4.6    P4.5    P4.4    P4.3    P4.2    P4.1    P4.0
                                //初始值=1111,1111      1       1       1       1       1       1       1       1

sbit P47        =   P4^7;       //I/O口P4.7
sbit P46        =   P4^6;       //I/O口P4.6
sbit P45        =   P4^5;       //I/O口P4.5
sbit P44        =   P4^4;       //I/O口P4.4
sbit P43        =   P4^3;       //I/O口P4.3
sbit P42        =   P4^2;       //I/O口P4.2
sbit P41        =   P4^1;       //I/O口P4.1
sbit P40        =   P4^0;       //I/O口P4.0

sbit RST        =   P4^7;       //复位脚,可通过编程器设置
sbit EX_LVD     =   P4^6;       //外部低压检测引脚

sbit P4SPISCLK  =   P4^3;       //SPI总线的时钟脚
sbit P4SPIMISO  =   P4^2;       //SPI总线的主出从入脚
sbit P4SPIMOSI  =   P4^1;       //SPI总线的主入从出脚
sbit P4SPISS    =   P4^0;       //SPI总线的从机选择脚

sbit P4CEX1     =   P4^3;       //比较/捕获/PWM1外部引脚
sbit P4CEX0     =   P4^2;       //比较/捕获/PWM0外部引脚
sbit P4ECI      =   P4^1;       //比较/捕获/PWM模块的外部时钟输入脚(最大值为Fosc/2)

sbit P4TXD2     =   P4^3;       //串口2数据输出脚
sbit P4RXD2     =   P4^2;       //串口2数据输入脚

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

sfr  P5         =   0xc8;       //I/O端口5              Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                -       -       -       -       P5.3    P5.2    P5.1    P5.0
                                //初始值=xxxx,1111      x       x       x       x       1       1       1       1

sbit P53        =   P5^3;       //I/O口P5.3
sbit P52        =   P5^2;       //I/O口P5.2
sbit P51        =   P5^1;       //I/O口P5.1
sbit P50        =   P5^0;       //I/O口P5.0

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

sfr  P1M1       =   0x91;       //I/O口1模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初/始值=0000,0000     0       0       0       0       0       0       0       0

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

sfr  P1M0       =   0x92;       //I/O口1模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P0M1       =   0x93;       //I/O口0模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P0M0       =   0x94;       //I/O口0模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P2M1       =   0x95;       //I/O口2模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P2M0       =   0x96;       //I/O口2模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P3M1       =   0xb1;       //I/O口3模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初/始值=0000,0000     0       0       0       0       0       0       0       0

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

sfr  P3M0       =   0xb2;       //I/O口3模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P4M1       =   0xb3;       //I/O口4模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P4M0       =   0xb4;       //I/O口4模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

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

sfr  P5M1       =   0xc9;       //I/O口5模式控制器1     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=xxxx,0000      x       x       x       x       0       0       0       0

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

sfr  P5M0       =   0xca;       //I/O口5模式控制器0     Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //初始值=xxxx,0000      x       x       x       x       0       0       0       0

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

// PxM1 PxM0
//  0    0     准双向口
//  0    1     强推挽输出
//  1    0     高阻输入态
//  1    1     开漏输出

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

sfr  P1ASF      =   0x9d;       //P1口模拟功能控制位    Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                P17ASF  P16ASF  P15ASF  P14ASF  P13ASF  P12ASF  P11ASF  P10ASF
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

#define P17ASF      0x80        //P1.7口为ADC输入脚
#define P16ASF      0x40        //P1.7口为ADC输入脚
#define P15ASF      0x20        //P1.7口为ADC输入脚
#define P14ASF      0x10        //P1.7口为ADC输入脚
#define P13ASF      0x08        //P1.7口为ADC输入脚
#define P12ASF      0x04        //P1.7口为ADC输入脚
#define P11ASF      0x02        //P1.7口为ADC输入脚
#define P10ASF      0x01        //P1.7口为ADC输入脚

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

sfr  P4SW       =   0xbb;       //P4口的功能开关        Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                -    LVD_P4.6 ALE_P4.5 NA_P4.4  -       -       -       -
                                //初始值=x000,xxxx      x       0       0       0       x       x       x       x

#define P46EN       0x40        //传统的EA脚 0:为LVD的信号引入脚 1:为P4.6
#define P45EN       0x20        //传统的ALE脚 0:仍为ALE 1:为P4.5
#define P44EN       0x10        //传统的PSEN脚 0:无任何功能 1:为P4.4

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

sfr  IE         =   0xa8;       //中断使能寄存器        Bit7    Bit6    Bit5    Bit4    Bit3    Bit2    Bit1    Bit0
                                //位描述                EA      ELVD    EADC    ES      ET1     EX1     ET0     EX0
                                //初始值=0000,0000      0       0       0       0       0       0       0       0

sbit EA         =   IE^7;       //总中断开关
sbit ELVD       =   IE^6;       //LVD中断使能位
sbit EADC       =   IE^5;       //ADC中断使能位
sbit ES         =   IE^4;       //串口中断使能位
sbit ET1        =   IE^3;       //定时器1中断使能位

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -