《c语言编程模板.docx》由会员分享,可在线阅读,更多相关《c语言编程模板.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机C语言编程模板(基础模板)程序开始处的程序说明/*程序名: 编写人: 编写时间: 年 月 日硬件支持:接口说明: /*说明:/*/单片机SFR定义的头文件#include /通用89C51头文件#include /通用89C52头文件#include /STC11Fxx或STC11Lxx系列单片机头文件#include /STC12Cx052或STC12Cx052AD系列单片机头文件#include /STC12C5A60S2系列单片机头文件更多库函数头定义#include /设定插入点#include /字符处理#include /定义错误码#include /浮点数处理#includ
2、e /文件输入输出#include /参数化输入输出#include /数据流输入输出#include /定义各种数据类型最值常量#include /定义本地化函数#include /定义数学函数#include /定义输入输出函数#include /定义杂项函数及内存分配函数#include /字符串处理#include /基于数组的输入输出#include /定义关于时间的函数#include /宽字符处理及输入输出#include /宽字符分类#include /51基本运算(包括_nop_空函数)常用定义声明sfr 自定义名 = SFR地址 ; /按字节定义SFR中的存储器名。例:sf
3、r P1 = 0x90;sbit 自定义名 = 系统位名 ; /按位定义SFR中的存储器名。例:sbit Add_Key = P3 1;bit 自定义名 ; /定义一个位(位的值只能是0或1)例:bit LED;#define 代替名 原名 /用代替名代替原名。例:#define LED P1 / #define TA 0x25unsigned char 自定义名 ; /定义一个0255的整数变量。例:unsigned char a;unsigned int 自定义名 ; /定义一个065535的整数变量。例:unsigned int a;定义常量和变量的存放位置的关键字data 字节寻址片内
4、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;)code ROM存储器,64K字节,从0x00到0xFFFF(例:code
5、 unsigned char a;)选择、循环语句if(1)/为真时语句else/否则时语句-while(1)/为真时内容-do/先执行内容while(1);-switch (a) case 0x01: /为真时语句 break; case 0x02: /为真时语句 break; default: /冗余语句 break;-for(;)/循环语句-主函数模板/*函数名:主函数调 用:无参 数:无返回值:无结 果:程序开始处,无限循环备 注:/*/void main (void) /初始程序 while(1) /无限循环程序 /*/中断处理函数模板/*函数名:中断处理函数调 用:无参 数:无返回
6、值:无结 果:备 注:/*/void name (void) interrupt 1 using 1 /处理内容/*/中断入口说明interrupt 0 外部中断0(ROM入口地址:0x03)interrupt 1 定时/计数器中断0(ROM入口地址:0x0B)interrupt 2 外部中断1(ROM入口地址:0x13)interrupt 3 定时/计数器中断1(ROM入口地址:0x1B)interrupt 4 UART串口中断(ROM入口地址:0x23)(更多的中断依单片机型号而定,ROM中断入口均相差8个字节)using 0 使用寄存器组0using 1 使用寄存器组1using 2 使用寄存器组2using 3 使用寄存器组3普通函数框架/*函数名:调 用:参 数:无返回值:无结 果:备 注:/*/void name (void)/函数内容/*/*函数名:调 用:参 数:065535 / 0255返回值:065535 / 0255结 果:备 注:/*/unsigned int name (unsigned char a,unsigned int b)/函数内容return a; /返回值/*/