C51语言及编程浅析[权威资料]
C51语言及编程浅析
TP31A1673-0992(2011)01-0193-01
摘要:现在单片机的程序设计,C51已经得到广泛的推广和应用,算是单片机的主流设计程序,甚至可以说作为单片机开发人员必须要掌握的一门语言了。本文简要介绍了Franklin C51交叉编译器的特点,较详细地讨论了C51语言程序设计的基本技巧及其与汇编语言程序的混合编程、中断处理过程等实际问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
。
关键词:C51;C语言;编程
在研制单片机应用系统时,汇编语言是一种常用的软件工具。它能直接操作硬件,指令的执行速度快。但其指令系统的固有格式受硬件结构的限制很大,且难于编写与调试,可移植性也差。随着单片机硬件性能的提高,其工作速度越来越快,因此在编写单片机应用系统程序时,更着重于程序本身的编写效率。而Franklin C51交叉编译器是专为80C51系列单片机设计的一种高效的C语言编译器,使用它可以缩短开发周期,降低开发成本,因此目前它已成为开发80C51系列单片机的流行工具。
一、C51的编程规范
(一)注释
1.开始的注释:
文件(模块)注释
内容
财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容
:
公司名称、版权、作者名称、修改时间、模块功能、背景介绍等,复杂的算法需要加上流程说明;
函数开头的注释内容:
函数名称、功能、说明 输入、返回、函数描述、流程处理、全局变量、调用样例等,复杂的函数需要加上变量用途说明 ;
2.程序中的注释内容:
修改时间和作者、方便理解的注释等。注释内容应简炼、清楚、明了,一目了然的语句不加注释。
(二)命名:
命名必须具有一定的实际意义。
1.常量的命名:全部用大写。
2.变量的命名:
3.结构体命名:
4.函数的命名:
函数名首字大写,若包含有两个单词的每个单词首字母大写。
函数原型说明包括:引用外来函数及内部函数,外部引用必须在右侧注明函数来源: 模块名及文件名, 内部函数,只要注释其定义文件名 ;
(三)编辑风格
1.缩进:缩进以Tab为单位,一个Tab为四个空格大小。预处理语句、全局数据、函数原型、标题、附加说明、函数说明、标号等均顶格书写。语句块的“{”“}”配对对齐,并与其前一行对齐;
2.空格:数据和函数在其类型,修饰名称之间适当空格并据情况对齐。关键字原则上空一格,如:
if ( ... ) 等,运算符的空格规定如下:“->”、“[”、“]”、“++”、“--”、“~”、“!”、“+”、“-”(指正负号),“
”(取址或引用)、“*”(指使用指针时)等几个运算符两边不空格(其中单目运算符系指与操作数相连的一边),其它运算符(包括大多数二目运算符和三目运算符“?:”两边均空一格,“(”、“)”运算符在其内侧空一格,在作函数定义时还可据情况多空或不空格来对齐,但在函数实现时可以不用。
3.空行:程序文件结构各部分之间空两行,若不必要也可只空一行,各函数实现之间一般空两行
4.修改:版本封存以后的修改一定要将老语句用/* */ 封闭,不能自行删除或修改,并要在文件及函数的修改记录中加以记录。
二、C51语言程序设计的基本技巧
C语言是一种高级程序设计语言,它提供了十分完备的规范化流程控制结构。因此采用C51语言设计单片机应用系统程序时,首先要尽可能地采用结构化的程序设计方法,这样可使整个应用系统程序结构清晰,易于调试和维护。对于不同的功能模块,分别指定相应的入口参数和出口参数,而经常使用的一些程序最好编成函数,这样既不会引起整个程序管理的混乱,还可增强可读性,移植性也好。
在程序设计过程中,要充分利用C51语言的预处理命令。对于一些常用的常数,如TRUE,FALSE,PI以及各种特殊功能寄存器,或程序中一些重要的依据外界条件可变的常量,可采用宏定义",define"或集中起来放在一个头文件中进行定义,再采用文件包含命令",include"将其加入到程序中去。这样当需要修改某个参量时,只须修改相应的包含文件或宏定义,而不必对使用它们的每个程序文件都作修改,从而有利于文件的维护和更新。
三、C51语言与汇编语言程序的混合编程
C51编译器能对C语言源程序进行高效率的编译,生成高效简洁的代码,在绝大多数场合采用C语言编程即可完成预期的目的。但有时为了编程直观或某些特殊地址的处理,还须采用一定的汇编语言编程。它们必须有完整的约定,否则数据的交换就可能出错。下面就以力源公司的10位串行A/D转换器TLC1549 为例说明C语言程序与汇编语言程序的调用。
四、C51中断处理过程
C51编译器支持在C源程序中直接开发中断过程,因此减轻了使用汇编语言的繁琐工作,提高了开发效率。中断服务函数的完整语法如下:
void函数名(void),模式,
,再入,interrupt n [using r]
其中n(0,31)代
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
中断号。C51编译器允许32个中断,具体使用哪个中断由80C51系列的芯片决定。r(0,3)代表第r组寄存器。在调用中断函数时,要求中断过程调用的函数所使用的寄存器组必须与其相同。"再入"用于说明中断处理函数有无"再入"能力。C51编译器及其对C语言的扩充允许编程者对中断所有方面的控制和寄存器组的使用。这种支持能使编程者创建高效的中断服务程序,用户只须在C语言下关心中断和必要的寄存器组切换操作。
四、结语
C51编译器不但可以缩短单片机控制系统的开发周期,而且易于调试和维护。此外,C51语言还有许多强大的功能,如提供丰富的库函数供用户直接调用,完整的编译控制指令为程序调试提供必要的符号信息等等。总之,C51语言是广大单片机开发人员的强有力的工具。
参考文献:
[1]周立功.单片机实验与实践教程(三)[M].北京:北京航天航空大学出版社.2006
[2]柴钰.单片机原理及应用[M].北京:西安电子科技大学出版社.2009
[3]何立民.单片机高级教程―应用与设计(第2版)[M].北京:北京航空航天大学出版社.2007
[4]肖洪兵.跟我学用单片机[M].北京:北京航空航天大学出版社.2002
文档资料:C51语言及编程浅析 完整下载 完整阅读 全文下载 全文阅读 免费阅读及下载
阅读相关文档:无线局域网在校园网中的应用 电泵解卡打捞工艺技术探讨 如何做好企业宣传新闻电视节目 进一步完善官员问责制加强反腐败倡廉建设 破解农
村党群干群存在紧张关系的对策思考 试论网络监督在行政监督中的作用 网络环境下的影视作品的版权保护问题 河南广播电视产业发展集团化研究 管道防腐技术在长输管线上的应用 浅析混凝土裂缝的控制 论中国历史上为什么没有出现“万历之治” 给排水安装中常见的衔接问题及解决措施 桥梁裂缝在道桥工程中的影响及控制 刍议房屋建筑工程质量管理 浅谈砌体结构裂缝控制措施 浅谈以科学发展观指导企业民主管理的新举措 浅析房屋建筑混凝土裂缝的控制措施 潍坊杨家
感谢你的阅读和下载
*资源、信息来源于网络。本文若侵犯了您的权益,请留言或者发站内信息。我将尽快删除。*