chunfengstdx51.h

来自「c51的温度测量程序,利用的是模拟输入初学哦」· C头文件 代码 · 共 87 行

H
87
字号
/*
 * File: ChunfengStdX51.h
 *
 * Detail: 89X51的通用API包含文件
 *
 * Created by Pandar(sudazcf@163.com) on 2009-2-22
 *
 * Modified by Pandar(sudazcf@163.com) on 2009-2-22
 *
 */
#ifndef CHUNFENGSTDX51_H_INCLUDED
#define CHUNFENGSTDX51_H_INCLUDED

#include "Reg.h"

#ifdef __CPLUSPLUS
extern "C"
{
#endif //__CPLUSPLUS

#define uint8 unsigned char
#define uint16 unsigned short
#define uint32 unsigned long

#define pause() PCON|=0x01

#define EnableAllInt() EA=1
#define DisableAllInt() EA=0

#define DisableEveryInt() IE&=0x80
#define DisableTotalInt() IE=0x00




/*
 *                                         定时器/计数器资源利用简图
 * 
 * |________________________|________________________|____________________________________|
 *
 *	  Timer0_0/Counter0_0	     Timer0_1		  	             	BaudSource		                     		 						   
 *
 *                   Timer0/Counter0				             Timer1/Counter1
 *			 				 
 */	
 
//Timer0 API 中断号 interrupt 1
#define TurnOnTimer0() TR0=1	//开启定时器
#define TurnOffTimer0() TR0=0  //
#define EnableTimer0Int() ET0=1	 //使能定时器中断
#define DisableTimer0Int() ET0=0   //
void ConfigTimer0(unsigned short cycle,	 //定时时长,单位为12个时钟周期
                  unsigned char resetValue	//是否重设初值,用于循环,如为1,cycle需小于0xFF
				  );
void ResetTimer0Value(unsigned short cycle); //重置初值,一般在中断后使用,使用前最好关闭定时器

//Timer1 API 中断号 interrupt 3
#define TurnOnTimer1() TR1=1
#define TurnOffTimer1() TR1=0
#define EnableTimer1Int() ET1=1
#define DisableTimer1Int() ET1=0
void ConfigTimer1(unsigned short cycle, unsigned char resetValue);
void ResetTimer1Value(unsigned short cycle);

//Timer0_0 API 中断号 interrupt 1
#define TurnOnTimer0_0() TR0=1;
#define TurnOffTimer0_0() TR0=0;
#define EnableTimer0_0Int() ET0=1;
#define DisableTimer0_0Int() ET0=0;
void ConfigTimer0_0(unsigned char cycle);
#define ResetTimer0_0Value(cycle) TL0=0xFF-cycle

//Timer0_1 API 中断号 interrupt 3
#define TurnOnTimer0_1() TR1=1;
#define TurnOffTimer0_1() TR1=0;
#define EnableTimer0_1Int() ET1=1;
#define DisableTimer0_1Int() ET1=0;
void ConfigTimer0_1(unsigned char cycle);
#define ResetTimer0_1Value(cycle) TH0=0xFF-cycle



#ifdef __CPLUSPLUS
}
#endif //__CPLUSPLUS

#endif //CHUNFENGSTDX51_H_INCLUDED

⌨️ 快捷键说明

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