51单片机C语言编程模板
51单片机C语言编程模板
[程序开始处的程序说明]
/*********************************************************************************************
程序名: xxxx
编写人: XXX
编写时间: xx年xx月xx日
硬件支持:
接口说明:
修改日志:
NO.1-
/*********************************************************************************************
说明:
/*********************************************************************************************/
[单片机SFR定义的头文件]
#include //通用89C51头文件
#include //通用89C52头文件
#include //STC11Fxx或STC11Lxx系列单片机头文件
#include //STC12Cx052或STC12Cx052AD系列单片机头文件
#include //STC12C5A60S2系列单片机头文件
[更多库函数头定义]
#include //设定插入点
#include //字符处理
#include //定义错误码
#include //浮点数处理
#include //文件输入/输出
#include //参数化输入/输出
#include //数据流输入/输出
#include //定义各种数据类型最值常量
#include //定义本地化函数
#include //定义数学函数
#include //定义输入/输出函数
#include //定义杂项函数及内存分配函数
#include //字符串处理
#include //基于数组的输入/输出
#include //定义关于时间的函数
#include //宽字符处理及输入/输出
#include //宽字符分类
#include //51基本运算(包括_nop_空函数)
[常用定义声明]
sfr [自定义名] = [SFR地址] ; //按字节定义SFR中的存储器名。例:sfr P1 = 0x90;
sbit [自定义名] = [系统位名] ; //按位定义SFR中的存储器名。例:sbit Add_Key = P3 ^ 1;
bit [自定义名] ; //定义一个位(位的值只能是0或1)例:bit LED;
#define [代替名] [原名] //用代替名代替原名。例:#define LED P1 / #define TA 0x25
unsigned char [自定义名] ; //定义一个0~255的整数变量。例:unsigned char a;
unsigned int [自定义名] ; //定义一个0~65535的整数变量。例:unsigned int a;
[定义常量和变量的存放位置的关键字]
data字节寻址片内RAM,片内RAM的128字节(例:data unsigned char a;)
bdata可位寻址片内RAM,16字节,从0x20到0x2F(例:bdata unsigned char a;)
idata所有片内RAM,256字节,从0x00到0xFF(例:idata unsigned char a;)
pdata片外RAM,256字节,从0x00到0xFF(例:pdata unsigned char a;)
xdata片外RAM,64K字节,从0x00到0xFFFF(例:xdata unsigned char a;)
codeROM存储器,64K字节,从0x00到0xFFFF(例:code unsigned char a;)
[选择、循环语句]
if(1){
//为真