计控单片机C语言编程学习教案.pptx
上传人:王子****青蛙 上传时间:2024-09-13 格式:PPTX 页数:56 大小:1.2MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

计控单片机C语言编程学习教案.pptx

计控单片机C语言编程学习教案.pptx

预览

免费试读已结束,剩余 46 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

会计学第二章单片机的C语言编程2.1C51概述(ɡàishù)2.2C51的程序结构组成结构:预处理语句全局变量说明/*可被各函数引用*/main()/*主函数*/{局部变量说明/*只在本函数引用*/执行(zhíxíng)语句(包括函数调用语句)}fun1(形式参数表)/*函数1*/形式参数说明{局部变量说明执行(zhíxíng)语句(包括调用其他函数语句)}…funn(形式参数表)/*函数n*/形式参数说明{局部变量说明执行(zhíxíng)语句}C语言的语句规则:1.每个变量(biànliàng)必须先说明后引用,变量(biànliàng)名英文大小写是有差别的。2.C语言程序一行可以书写多条语句,但每个语句必须以“;”结尾,一个语句也可以多行书写。3.C语言的注释用/*……*/或//表示。4.“{”花括号必须成对,位置随意,可在紧挨函数名后,也可另起一行,多个花括号可以同行书写,也可逐行书写,为层次分明,增加可读性,同一层的“{”花括号对齐,采用逐层缩进方式书写。2.3C51的数据类型与运算符的存储(cúnchǔ)类型存储类型2.3C51的数据类型与运算符的数据类型2.3C51的数据类型与运算符的数据类型2.常量与变量(biànliàng)C51支持的数据有常量、变量(biànliàng)、指针。存储时‘先高后低’原则;常量位置与定义说明有关,一般放在程序存储区code。1)常量整型常量、实型常量、字符常量、字符串常量、符号常量。符号常量在使用前必须先定义,格式为:#define标识符常量//是C51的预处理指令2)变量(biànliàng)定义变量(biànliàng)的一般格式:[存储模式]数据类型[存储器类型]变量(biànliàng)名;变量说明(shuōmíng)举例说明:1.字符型(char)、整型(int)和长整型(long)均有符号型(signed)和无符号型(unsigned)两种,如果不是必须,尽可能选择unsigned型,这将会使编译器省却符号位的检测,使生成的程序代码比signed类型短得多。2.程序编译时,C51编译器会自动进行类型转换,当运算符两边为不同类型的数据时,编译器先将低级的数据类型转换为较高级的数据类型,运算后,运算结果为高级数据类型。3.bit和sbit都是C51扩展的变量类型。bit用来定义一个普通位变量(0或1),编译器在编译过程中分配地址,除非指定否则这个地址随机分布在整个可寻址空间(kōngjiān)中。所有可位寻址的位都可由sbit指定,这包括可位寻址区和SFR中的位。4.如果在变量说明时略去存贮器类型标志符,编译器会自动选择默认的存贮器类型。(1)关于指针型变量在汇编语言程序中,要取存贮单元m的内容可用直接寻址方式,也可用寄存器间接寻址方式。如果用R1寄存器指示m的地址,则用@R1取m单元的内容。相对应的在C语言中用变量名表示取变量的值(相当于直接寻址),也可用另一个变量(如P)存放m的地址,P就相当于R1寄存器。用*P取得m单元的内容(相当于汇编的间接寻址方式)这里P即为指针型变量。下面表格表示两种语言将m单元的内容送n单元的对照(duìzhào)语句。说明:1.在C语言中,为了能够实现直接对内存单元进行操作,引入了指针类型的数据。一个变量的地址就称为该变量的指针。2.如果有一个变量专门(zhuānmén)用来存放另一个变量的地址,则称之为指针变量。一个指针变量存放的内容是另一个变量在内存中的地址,每一个变量都有它自己的指针(地址)。3.C语言中用“*”表示“指向”。如:整型变量i的地址存放在指针变量ip中,则i=0x50;*ip=0x50;都是给同一个变量赋值。4.区分“&”和“*”运算符。(2)指针型数据的类型由于C51是结合51单片机硬件的,51单片机的不同存贮空间,有不同的地址(dìzhǐ)范围,即使对于同一外部数据存贮器,又有用@Ri寻址(Ri为八位)和用@DPTR寻址(DPTR为十六位)两种寻址方式,而指针本身也是一个变量,有它存放的存贮区和数据长度。因此,在指针类型的定义中要说明:被指的变量的数据类型和存贮类型;指针变量本身的数据类型(占几个字节)和存贮类型(即指针本身存放在什么存贮区)。指针类型的定义形式如下:数据类型[存储器类型1]*[存储器类型2]标识符;指针类型(存储器类型1)指向不同存储区变量的通用指针指针能适用于指向任何存贮空间,此时指针长度为3字节,第一字节表示存贮器类型编码(biānmǎ),第二、三字节分别表示所指地址的高位和低位。unsignedchar*ptr;//通用指针ptr,指针存放在默认存储区unsignedchar