单片机C语言基础.ppt
《单片机C语言基础.ppt》由会员分享,可在线阅读,更多相关《单片机C语言基础.ppt(45页珍藏版)》请在课桌文档上搜索。
1、第二章 C51知识,C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。目前,使用C语言进行程序设计已经成为软件开发的一个主流。用C语言开发系统可以大大缩短开发周期,明显增强程序的可读性,便于改进、扩充和移植。而针对8051的C语言日趋成熟,成为了专业化的实用高级语言。,C语言作为一种非常方便的语言而得到广泛的支持,很多硬件开发都用C语言编程,如:各种单片机、DSP、ARM等.C语言程序本身不依赖于机器硬件系统,基本上不作修改就可将程序从不同的单片机中移植过来。C提供了很多数学函数并支持浮点运算,开发效率高,故可缩短开发时间,增加程序可读性和可维护性。,C-51的
2、特点,C-51与ASM-51相比,有如下优点:1.对单片机的指令系统不要求了解,仅要求对8051 的存贮器结构有初步了解;2.寄存器分配、不同存贮器的寻址及数据类型等细节可由编译器管理;3.程序有规范的结构,可分成不同的函数,这种方式可使程序结构化;4.提供的库包含许多标准子程序,具有较强的数据处理能力;5.由于具有方便的模块化编程技术,使已编好程序可容易地移植;,例子认识C程序,#include sbit A5=P10 x04;int main(void)/用户代码 void delay_1s();return 0;void delay_1s()/代码,一、主程序(程序入口)int main
3、(void)/用户代码 return 0;注:1、C程序模块都是以“”开头“”结尾,程序为函数主函数、子函数 2、每一行必须有结束号“;”3、养成注释程序的习惯“/”注释该行“/*-段落-*/”注解一段,二、头文件(编程预处理),#include 注:定义一些通用引脚及函数,三、自定义函数(子函数),常用、重复引用的功能集成,可用任何文本编辑软件编写,最后保存扩展名为.C的程序源文件,其值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元。变量应该先定义后使用。要区分变量名和变量值是两个不同的概念。,注:变量名a代表地址,编译系统自动分配,用户不可见,0 x40,一、C5
4、1的变量类型,1、基本数据类型,类型,符号,关键字,数的表示范围,所占位数,整型,字符型,实型,有,无,(signed)int,16,-3276832767,(signed)short,16,-3276832767,(signed)long,32,-21474836482147483647,16,unsigned int,065535,32,04294967295,unsigned long int,unsigned short int,16,065535,有,float,32,3.4e-383.4e38,有,double,64,1.7e-3081.7e308,有,char,8,-128127
5、,无,unsigned char,8,0255,2、变量类型的定义,格式:变量类型+变量名,例如:int a,b;/定义a,b为整型变更 long sheng1,sheng2;/长整型 Float c,d;/浮点(有小数)Double e,f;/双精度 char a;/有符号字符型 Unsigned char b;无符号字符型,注:变量类型为规定的类型;变量的名称自由起,但通常要通俗,并要遵守如下规则,c语言变量命名:数字、字母、下划线,都可以为变量命名。做为变量名的开头不能为数字,如 3a_是错的,而a_3或_a3是正确变量名不能为关键字,像ifelseprintf 等等都不能,标准C表1,
6、标准C表2,C51扩展,3、C51的数据类型扩充定义,sfr:特殊功能寄存器声明sfr16:sfr的16位数据声明sbit:特殊功能位声明bit:位变量声明,1sfr 特殊功能寄存器。这也是C 51编译器的一种扩充数据类型,利用它可以访问8051单片机的所有内部特殊功能寄存器。sfr型数据占用一个内存单元,其取值范围0255。2sfr16 16位特殊功能寄存器。它占用两个内存单元,取值范围是065535。3sbit 可寻址位。这也是C51编译器的一种扩充数据类型,利用它可以访8051单片机内部RAM中的可寻址位或特殊功能寄存器中的可寻址位。4.bit 位标量。这是C 51编译器的一种扩充数据类
7、型,利用它可定义一个位标量,但不能定义位指针,也不能定义位数组。,例:sfr SCON=0X98;sfr16 T2=0 xCC;sbit OV=PSW2,4、数据类型修饰词,1)、data:固定指前面0 x00-0 x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小,2)、code定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改,对应的还有data是存入RAM的意思。,例如:char data a;/a变量存在上述RAM中 int data disp;/disp变量存在上述RAM中,例如:uchar code yima=/把数码管位数据(因为不变)写入ROM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 语言 基础
![提示](https://www.desk33.com/images/bang_tan.gif)
链接地址:https://www.desk33.com/p-246738.html