- 0
- 0
- 约2.33万字
- 约 76页
- 2019-11-28 发布于上海
- 举报
第3章 C51程序设计
使用C语言实现单片机编程是单片机系统开发的发展方向,C语言是通用计算机程序设计语言,现在也广泛用于单片机系统开发。
?
3.1 C51程序与汇编程序的不同之处
?
对于51单片机来说,C51编写程序比汇编语言程序具有如下优缺点。
1. 优点
(1)采用C语言编程,以行为方式描述单片机实现的任务,开发效率高、时间短。
(2)将单片机实现的任务分别用程序模块实现,
(3)可移植性好
(4)提供数学函数并支持浮点运算,
(5)不用深入了解单片机的指令系统,仅需要了解51单片机存储器结构。;2. 缺点
实时性比汇编语言差,因为编写汇编的时候可以清楚的知道每一条指令究竟要多少个机器周期,而C51语句与执行时间没有确切关系。
一般来说,C51程序代码量较汇编程序代码量大,但随着C编译器编译效率的提高和存储器容量的增加,已经不是大问题。
3. 使用助记符
与汇编程序一样,采用C51语言还是需要了解如何初始化单片机中众多特殊功能寄存器,因为这些寄存器是控制硬件功能的,因此需要了解单片机内部各个模块的工作原理,这也是初学单片机遇到的最大困难。
C51程序中,也是采用助记符代表寄存器地址,助记符与寄存器地址之间的对应关系保存在“头文件”中,由于每种单片机的助记符、助记符对应的寄存器地址不相同,因此每种单片机都有自己的头文件。为方便记忆,助记符常与手册中给出的特殊寄存器名相同。例如对于AT89S51单片机,就有头文件“AT89X51.H”,其内容为特殊功能寄存器的定义。
在头文件的支持下,写C51程序时可以直接用助记符代替地址,容易记忆,并增加可读性。
;4. 存储类型
C51中变量的存储类型与51单片机存储空间的对应关系如下。
data 直接存取51单片机内部RAM(128B空间)。
idata 以MOV @Rn间接存取52单片机內部RAM(256B空间)。
bdata 以位寻址方式存取单片机内部数据RAM中的位寻址区(16B)。
xdata 以MOVX @DPTR存取外部扩展RAM(64KB空间)。
pdata 以MOVX@Rn分页存取外部扩展RAM(256B,外部扩展RAM的第一个页面)。
code 以MOVC@A+DPTR指令存取Flash存储器(64KB空间)。
在C51中定义变量时,可以定义变量的存储类型,例如??
unsigned char code sm[ ]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90
,0x88,0x83,0xc6,0xA1,0x86,0x8e};
;5. 需要启动文件
在51单片机中运行用户所编制的C51程序时,在执行main()程序时,需要先运行启动程序startup.a51,该汇编程序的工作是把idata、xdata、pdata存储区清0,初始化堆栈。还要执行init.a51程序初始化非零变量。
6. Keil软件编译C51程序
在Keil软件中的文本编辑器编辑完成C51程序(.c )后,经过C51编译器编译后,生成浮动目标文件(.obj)和列表文件(.lst);在库文件的支持下,经过L51链接器后,得到绝对定位目标文件(.hex)。
Keil软件开发C51的过程与开发汇编程序的过程基本相同,但需要注意如下两点。
在使用Keil软件时,注意汇编程序不需要启动程序startup.a51,而C51程序需要该启动程序;另外C51程序文件的扩展名是.c,而汇编程序文件的扩展名是.asm。
;3.2 C语言基础知识
?
3.2.1 C语言的标识符和关键字
?
C语言中的部分保留字如下:
atuo break case const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union void volatile while
在C保留字的基础上,C51的关键字如下:
bit sbit sfr sfr16 data bdata idata pdata xdata code interrupt reentrant using
;3.2.2 数据类型 ;3.2.3 常量
在程序运行过程中,数值不改变的量称为常量。
(1)整型常量
(2)字符型常量
(3)字符串型常量由双引号内的字符组成,如“test”,“OK”等。
(4)符号常量
代替常量的标识符,称为符号常量。
符号常量的定义:
#define False 0x0; //用预定义
您可能关注的文档
- 平面向量数量积的物理背景及几何意义.pptx
- 房地产开发项目的经营.pptx
- 企业并购估价.pptx
- 控制技术与方法.pptx
- 初中生物复习资料.pptx
- 播音发声共鸣原理与控制方法.pptx
- 拆除爆破总论.pptx
- 教育学案例分析.pptx
- 南开金融学ch7中央银行.pptx
- 新材料作文的审题立意精教版高峰.pptx
- 宣贯培训(2026年)《NYT 4512-2025 非洲菊疫病抗性鉴定技术规程》.pptx
- 宣贯培训(2026年)《NYT 4514-2025木薯副产物综合利用导则》.pptx
- 宣贯培训(2026年)《NYT 4513-2025木薯全程机械化生产技术规范》.pptx
- 宣贯培训(2026年)《NYT 4470-2025全株玉米青贮质量分级》.pptx
- 宣贯培训(2026年)《NYT 4468-2025玉米供需平衡表编制规范》.pptx
- 宣贯培训(2026年)《NYT 4469-2025全株玉米青贮质量评定 综合指数法》.pptx
- 宣贯培训(2026年)《NYT 4474-2025东北地区玉米-大豆轮作生产技术规程》.pptx
- 宣贯培训(2026年)《NYT 4472-2025玉米耐盐碱鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4473-2025玉米抗旱性鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4478-2025甘薯收获技术规程》.pptx
原创力文档

文档评论(0)