第3章单片机C语言程序设计基础3ppt课件.ppt
《第3章单片机C语言程序设计基础3ppt课件.ppt》由会员分享,可在线阅读,更多相关《第3章单片机C语言程序设计基础3ppt课件.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、在此输入您的封面副标题第3章单片机C语言程序设计基础324.1 单片机C程序设计的一般格式 4.1.1 单片机C语言编程的步骤单片机C程序设计的步骤一般如下:(1)分析设计任务,确定算法,画出编程算法的流程图。(2)使用通用的文字编辑软件如记事本等编写C源程序,也可在支持C语言的仿真器或编译器上直接编写,如Keil 51 C编译器。(3)在C编译器上进行调试及编译,编译后可生成后缀名为HEX的十六进制目标程序文件。(4)用编程器将目标程序文件写入单片机。34.1.2 单片机C程序的几个基本概念 1、函数C语言程序是由一个主函数和若干个其它函数所构成,程序中由主函数调用其它函数,其它函数也可以互
2、相调用。其它函数又可分为标准函数和用户自定义函数。如果在程序中要使用标准库函数,就要在程序开头写上一条头文件包含处理命令,例如#include “math.h”,在编译时将读入一个包含该标准函数的头文件。如果在程序中要建立一个自定义函数,则需对函数进行定义,根据定义形式可将函数分为:无参数函数、有参数函数和空函数。(1)无参数函数的定义形式类型标识符 函数名()函数体类型标识符用来指定函数返回值的类型。无参数函数一般不带返回值,因此可以不写类型标识符。如定义一个延时函数名为delay,函数体为_nop_( )的函数,它的定义形式为:delay( )_nop_( ); /空操作函数,相当于汇编中
3、的nop4(2)有参数函数的定义形式类型标识符 函数名(形式参数列表及参数说明)函数体例如一个毫秒级有参延时函数的定义形式为:delay1ms(int t) /参数变量t为整型int i,j;for(i=0;it;i+)for(j=0;j120;j+);(3)空函数的定义形式类型说明符 函数名()调用空函数时,什么工作也不做,等以后需要扩充函数时,可以在函数体位置填写程序。4.1.2 单片机单片机C程序的几个基本概念程序的几个基本概念 52、指针与指针变量、指针与指针变量一个变量具有一个变量名,对它赋值后就有一个变量值,变量名和变量值是两个不同的概念。变量名对应于内存单元的地址,表示变量在内存
4、中的位置,而变量值则是放在内存单元中的数据,也就是内存单元的内容。变量名对应于地址,变量值对应于内容。64.1.2 单片机C程序的几个基本概念、文件包含处理命令、文件包含处理命令#include文件的包含处理命令,是指一个源文件将另外一个源文件的全部内容包含进来。或者说是把一个外部文件包含到本文件之中,这种文件包含处理的命令格式为:#include “文件名”或者用#include 通常被包含的文件多为头文件,即以h为后缀的文件,如reg52.h、intrins.h、stdio.h等。、宏定义、宏定义在程序中,可以指定一个标志符去定义一个常量或字符串。如:#define P 568在中,一般常
5、量和字符串定义用大写,而变量定义用小写。宏定义还可以进行参数替换。74.1.3 单片机C语言程序的基本结构单片机C语言编程的基本结构说明:(1)C程序由一个主函数和若干子函数组成,其中主函数的名字必须为main()。C程序通过函数调用去执行指定的工作。函数调用类似于汇编语言中的子程序调用。被调用的函数可以是系统提供的库函数,也可以是用户自行定义的功能函数。(2)一个函数由说明部分和函数体两部分组成。函数说明部分是对函数名、函数类型、形参名、形参类型等的说明 。8(3)C程序的执行总是从main()函数开始的,而对main()函数的位置无特殊规定,main()函数可放在程序的开头、最后或其它函数
6、的前后。(4)当一个程序文件需要包含其他源程序文件时,应在本程序文件头部用包含命令# include 进行“文件包含”处理,如:# include “reg52.h”或# include 一条include命令只能指定包含一个文件,每行规定只能写一条包含命令。(5)C程序中一个函数中需调用另一个子函数时,另一个子函数应写在前面。当另一个子函数放在本函数后面时,应在本函数开始前说明。(6)C程序书写格式自由,一行可写一个语句或几个语,每个语句的结尾处需用“;”结束。94.2.1 常量和符号常量常量和符号常量在程序运行中值不会改变的量称为常量,常量可以用一个标识符来代表,称为符号常量,例如可以用宏
7、定义一个符号常量PAR,其值为3.14159。#define PAR 3.14159符号常量被定义后,凡在此程序中有PAR的地方,都代表常量3.14159。符号常量的值不能改变,也不能再被赋值。在C中,一般符号常量用大写字母。常量通常分为以下几种类型:1、整型常量、整型常量整型常量就是整型常数,在C中可以用十进制和十六进制三种形式表示,如:十进制数:11,-45,0;十六进制数:0 x11,0 x55,0 x00(以0 x开头)2、实型常量、实型常量实型常量就是实型常数,实型常数又叫浮点数。在C中可以用小数和指数二种形式表示 。4.2 单片机单片机C语言的数据类型语言的数据类型104.2.1
8、常量和符号常量常量和符号常量3、字符常量、字符常量在C语言中字符常量是指用单引号括起来的单个字符。如a、b、?、A等都是字符常量,应注意在C中a和A是不同的字符常量,即C中严格区分字母的大小写。4、字符串常量、字符串常量在C中还有另一种字符数据称为字符串。字符串常量与字符常量不同,它是由一对双引号括起来的字符序列。如“You are man.”、“CHINA”、“15.68”等都是字符串常量。字符常量和字符串常量二者不同,不能混用。如a和“a”在内存中,a占1个字节,而“a”占2个字节,即一个字母再加一个字符串结束符。4.2 单片机单片机C语言的数据类型语言的数据类型114.2.2 变量变量变
9、量类型标志符说明标志符数据长度值域范围位变量bit1位0,1sbit1位0,1字符变量Char有符号Signed char8位-128+127无符号Unsigned char8位0255整数型变量Int有符号Signed int16位-32768+32767无符号Unsigned int16位065535长整数型变量Long int有符号Signed long32位-231231-1无符号Unsigned long32位0232-1实数型变量Float单精度32位|3.4e-38|3.4e+38|double双精度64位|1.7e-308|1.7e+308|寄存器变量Sfr8位025512在单
10、片机C语言编程中,通常用到30个运算符,如表4.2所示。在C语言中,运算符具有优先级和结合性。算术运算符优先级规定为:先乘除模(求余),后加减,括号最优先。结合性规定为:自左至右,即运算对象两侧的算术符优先级相同时,先与左边的运算符号结合。关系运算符的优先级规定为:、=、=四种运算符优先级相同,=、!=相同,但前四种优先级高于后四种。关系运算符的优先级低于算术运算符,高于赋值(=)运算符。逻辑运算符的优先级次序为:!、&、|。当表达式中出现不同类型的运算符时,非(!)运算符优先级最高,算术运算符次之,关系运算符再次之,其次是&和|,最低为赋值运算符。位操作的对象只能是整型或字符型数据。4.3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 语言程序设计 基础 ppt 课件
限制150内