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

📄 stk6031.h

📁 太欣单片机STK6031的测试程序
💻 H
字号:
/*
********************************************************************************
*
*	                                LCD控制程序
*
*	                          MCU STK6031的寄存器定义
*
*	文件名	: STK6031.H
*	设计者	: Terry
********************************************************************************
*                                   功 能 描 述
*
*		1. STK6031和标准的8051是有一定的差异的
********************************************************************************
*/

#ifndef __STK6031_H__
#define __STK6031_H__

#include <absacc.h>

/*
================================================================================
=	BYTE Registers
================================================================================
*/
sfr P0    = 0x80;
sfr P1    = 0x90;
sfr P2    = 0xA0;
sfr P3    = 0xB0;

sfr PSW   = 0xD0;
sfr ACC   = 0xE0;
sfr B     = 0xF0;
sfr SP    = 0x81;
sfr DPL   = 0x82;
sfr DPH   = 0x83;

sfr PCON  = 0x87;
sfr TCON  = 0x88;
sfr TMOD  = 0x89;
sfr TL0   = 0x8A;
sfr TL1   = 0x8B;
sfr TH0   = 0x8C;
sfr TH1   = 0x8D;
sfr IE    = 0xA8;
sfr IP    = 0xB8;
sfr SCON  = 0x98;
sfr SBUF  = 0x99;

/*
================================================================================
=	STK6031所扩充的寄存器,位于8051特殊功能寄存器地址范围内
================================================================================
*/
sfr P4    = 0xC0;

sfr DPL1   = 0x84;
sfr DPH1   = 0x85;
sfr DPS    = 0x86;

sfr CHIPCON = 0xBF;
sfr CKCON     = 0x8E;

sfr T2CON = 0xC8;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;

sfr  XFR_WDT      = 0xE1;

sfr XFR_ISPSLV  = 0xE2;
sfr XFR_ISPEN   = 0xE3;

sfr  P0_OPT      = 0xDD;
sfr  P1_OPT      = 0xD1;
sfr  P2_OPT      = 0xDE;
sfr  P4_OPT      = 0xD9;

sfr  XFR_PWMDA0	 = 0xD2;
sfr  XFR_PWMDA1	 = 0xD3;
sfr  XFR_PWMDA2	 = 0xD4;
sfr  XFR_PWMDA3	 = 0xD5;
sfr  XFR_PWMDA4	 = 0xD6;

#define XFR_PADOPT_ADC		P4_OPT	// 选择引脚是ADC还是IO
#define XFR_PADOPT_PWM	        P1_OPT	// 选择引脚是PWM还是IO

sfr XFR_ADC   = 0xDB;	// AD 转换后的6 位2 进制结果
sfr XFR_ADCCH = 0xDA;	// 启动ADC和选择ADC的输入通道

/*
================================================================================
=	位寄存器定义
================================================================================
*/
/*  PSW  */
sbit CY    = PSW^7;
sbit AC    = PSW^6;
sbit F0    = PSW^5;
sbit RS1   = PSW^4;
sbit RS0   = PSW^3;
sbit OV    = PSW^2;
sbit P     = PSW^0; //8052 only

/*  TCON  */
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;

/*  IE  */
sbit EA     = IE^7;
sbit ET2   = IE^5;
sbit ES     = IE^4;
sbit ET1   = IE^3;
sbit EX1   = IE^2;
sbit ET0   = IE^1;
sbit EX0   = IE^0;

/*  IP  */
sbit PT2   = IP^5;
sbit PS    = IP^4;
sbit PT1   = IP^3;
sbit PX1   = IP^2;
sbit PT0   = IP^1;
sbit PX0   = IP^0;

/*  P3  */
sbit RD    = P3^7;
sbit WR    = P3^6;
sbit T1    = P3^5;
sbit T0    = P3^4;
sbit INT1  = P3^3;
sbit INT0  = P3^2;
sbit TXD   = P3^1;
sbit RXD   = P3^0;

/*  SCON  */
sbit SM0   = SCON^7;
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;

/*  T2CON  */
sbit TF2   = T2CON^7;
sbit EXF2   = T2CON^6;
sbit RCLK   = T2CON^5;
sbit TCLK   = T2CON^4;
sbit EXEN2   = T2CON^3;
sbit TR2   = T2CON^2;
sbit C_T2    = T2CON^1;
sbit CP_RL2    = T2CON^0;


/*
================================================================================
=	STK6031中断向量定义
================================================================================
*/
#define INTERRUPT_INT0			0			// 外部中断0
#define INTERRUPT_TIMER0		1			// 定时中断0
#define INTERRUPT_INT1			2			// 外部中断1
#define INTERRUPT_TIMER1		3			// 定时中断1
#define INTERRUPT_SERIAL		4			// 串行口中断
#define INTERRUPT_TIMER2	 	5			// 定时中断2 或T2EX 中断


/*
================================================================================
=	定义两个STK6031的进入和退出临界区的宏
================================================================================
*/
#define ENTER_CRITICAL()			 EA=0
#define EXIT_CRITICAL()		        EA=1


#endif
/*
********************************************************************************
*                                文 件 结 束                                   *
********************************************************************************
*/


⌨️ 快捷键说明

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