单片机的C语言程序设计及调试课件.ppt

单片机的C语言程序设计及调试课件.ppt

ID:56973999

大小:145.00 KB

页数:22页

时间:2020-07-25

单片机的C语言程序设计及调试课件.ppt_第1页
单片机的C语言程序设计及调试课件.ppt_第2页
单片机的C语言程序设计及调试课件.ppt_第3页
单片机的C语言程序设计及调试课件.ppt_第4页
单片机的C语言程序设计及调试课件.ppt_第5页
资源描述:

《单片机的C语言程序设计及调试课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章单片机的 C语言程序设计及调试C语言编程特点:编写简单、直观易读、便于维护、通用性好、可移植性强、更符合人们的思考习惯但同学们一定会有这样的疑问,我们学过了C语言,该如何用它操作单片机呢?不要着急,接下来,让我们一起学习单片机的C语言程序设计与调试。限于篇幅,本章不介绍标准C语言的语句及语法规则,只介绍C语言在IAP15W4K58S4单片机程序设计中的特殊性问题,包括C51编程语言(简称C51)与ANSIC的区别、单片机C语言程序的设计等内容。关系运算符关系运算符用于比较两个常数或者表达式的大小。关系运算的结果只能是0或1。关系运

2、算符的值为真时,结果值为1;关系运算符的值为假时,结果值为0。<><=>===!=特别注意,判断两个常数或者表达式相等时,使用“==”,不要使用单个的“=”。否则,判断两个数是否相等就变成了赋值语句。逻辑运算符逻辑运算符包括与(&&)、或(

3、

4、)、非(!)三种,用于对包含关系运算符的表达式进行合并或取非。使用逻辑运算符的表达式,返回0表示“假”,返回1表示“真”。位运算符按位与(&)、按位或(

5、)、按位异或(^)、取反(~)、左移(<<)和右移(>>)应用:按位与运算通常用来对某些位清0按位或运算通常用来对某些位置1按位异或运算通常用来

6、对某些位取反预处理-宏定义(define)在C语言源程序中允许用一个标识符来表示一个字符串,称为宏。无参宏定义的一般形式如下:#define标识符字符串带参宏定义的一般形式如下:#define宏名(形参表)字符串如要终止宏定义,可使用#undef命令。预处理-文件包含(include)文件包含的一般形式如下:#include"文件名"◎你知道吗?包含命令中的文件名可以用双引号括起来,也可以用尖括号括起来。两者有何不同呢?#include"math.h"#include预处理-条件编译(1)条件编译就是按不同的条件去编译不

7、同的程序部分,从而产生不同的目标代码文件。1)第一种形式#ifdef标识符程序段1#else程序段2#endif预处理-条件编译(2)2)第二种形式#ifndef标识符程序段1#else程序段2#endif预处理-条件编译(3)3)第二种形式#if常量表达式程序段1#else程序段2#endifKeilC51扩展关键字C51有以下19个扩展关键字:_at_、sbit、sfr、bit、sfr16、idata、bdata、xdata、pdata、data、code、alien、small、compact、large、using、reentr

8、ant、interrupt、_task_常见的关键字-内存区域的指定1)程序存储器code:程序存储区。可以使用code定义表格常数2)内部RAMdata:直接寻址区,内部RAM的低128字节,地址范围为00H~7FHidata:间接寻址区,包括整个内部RAM区256字节,地址范围为00H~0FFHbdata:可位寻址区,地址范围为20H~2FH常见的关键字-内存区域的指定3)外部数据存储器xdata:可指定多达64KB的外部直接寻址区,地址范围0000H~0FFFFH4)特殊功能寄存器(SFR)sfr:字节寻址sfrsfr_name=

9、int_constant;sfr16:字寻址sfr16DPTR=0x82;sbit:位寻址sbitbitname=sfr_name^bit_number;常见的关键字-变量或数据类型C51提供以下几种扩展数据类型:bit:位变量,值为0或1sbit:从字节中定义的位变量(0或1)sfr:sfr字节地址(0x80~0xff)sfr16:sfr字地址(0x80~0xff,其实是占用两个连续的地址)其余的数据类型如char、enum、short、int、long、float等与ANSIC相同常见的关键字-KeilC51指针KeilC51支持一

10、般指针(GenericPointer)和存储器指针(MemorySpecificPointer)。一般指针的声明和使用均与标准C相同,同时还可以说明指针的存储类型。例如:unsignedcharxdata*pt;//pt本身依存储模式存放unsignedcharxdata*datapt;//pt被保存在内部RAM中unsignedcharxdata*xdatapt;//pt被保存在外部RAM中常见的关键字-KeilC51指针除了和标准C语言一样使用指针外,指针还可以用来访问外部并行扩展的器件。例如:为了方便地访问外部存储器及I/O端口,

11、在C51中的absacc.h头文件做了如下定义,利用这些定义可以方便地访问外部I/O端口。#defineCBYTE((unsignedcharvolatilecode*)0)#defineDBYTE((un

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。