单片机C语言第2章教材.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
0.000389 0.000391 1.000861 2.340424 C51编程举例 void delay(unsigned int t) { unsigned int i,j; for (j=0;jt;j++) { for (i=0;i123;i++) { } } } C51的运算符和表达式 复合运算符和表达式 +=、-=、*=、/=、%=、=、=、=、|=、^= :提高编译效率 逗号运算符和表达式 , :连接多个表达式 条件运算符与表达式 ? :选择表达式值 指针运算符和表达式 *、:取地址内容、取变量地址 C51的运算符和表达式 类型转换运算符 隐式类型转换:赋值时自动进行 强制类型转换:(类型名) 变量名 求占用的字节数的运算符:sizeof() 非函数 运算符的优先级 * 单片机C语言程序设计 * C51的输入输出 C51语言本身不提供输入和输出的语句,输入和输出的操作由函数实现。使用时须先用命令#include stdio.h将函数库包含到文件中。 C51中的输入和输出数据均针对串行口: 输出函数printf()、puts()、putchar() 输入函数scanf()、gets()、getchar() * 单片机C语言程序设计 * C51的语句 C语言程序包括数据描述(由声明部分来实现)和数据操作(由语句来实现)。 数据描述主要定义数据结构(用数据类型表示)和数据初值。数据操作的任务是对已提供的数据进行处理,靠语句来实现。 * 单片机C语言程序设计 * C51的语句 C51的语句用来向单片机发出操作指令,按功能可分为4类: 说明语句:说明数据量的类型和赋值,unsigned char ch=10; 表达式语句:对变量赋值,ch=10; 空语句:什么都不做, ; 、{} C51的语句 控制语句:控制程序的执行顺序 条件分支语句:if…else…、switch…case… 循环语句:while、do…while、for 转移语句:break、continue、goto C51的语句 程序的3种基本控制结构: 顺序结构 选择结构 循环结构 C51的数组 数组是一组具有相同数据类型变量的集合。 一维数组: 定义:unsigned char a[5]={0,1,2,3,4}; 引用:a[0]=0、t=a[4] 二维数组: 定义:float a[2][3]={{1,2,3},{4,5,6}}; 引用:a[1][2]=5 C51的数组 字符数组: 定义:unsigned char a[]={‘E’,‘R’,‘R’, ‘O’,‘R’}; 引用:a[0]=‘E’ 存储空间:5字节 字符串数组: 定义:unsigned char a[]={“ERROR”}; 引用:a[4]=‘R’ 存储空间:6字节,末尾系统自动补‘\0’ * 单片机C语言程序设计 * C51的指针 指针:表示一个内存地址的变量。 定义: unsigned char dat; unsigned char *p; 使用: p = dat; //取变量地址 dat = *p; //取地址中变量值 * 单片机C语言程序设计 * C51的指针 C51支持通用指针变量和指定存储区的指针变量两种类型。 通用指针:通过该指针可访问所有存储空间,需占用3个字节。 unsigned char *p; 指定存储区指针:通过该指针只能访问规定的存储空间,需占用1~2字节。 unsigned char data *p; 存储器的指针长度短,占用存储器空间少,运行速度快,但指对象具有确定的存储器空间,兼容性不好。 C51的函数 C51中使用函数将功能进行封装,使程序模块化,提高程序的可重用性。 例: int max (int a, int b) { int dat; dat = a=b?a:b; return dat; } * 单片机C语言程序设计 * C51的函数 函数是一种独立功能的程序。 C51的函数 中断服务函数:服务于中断系统,没有参数和返回值,不需要声明,不能主动调用。 void 函数名称() interrupt 中断编号 using 寄存器组 void timer0() interrupt 1 using 1 * 单片机C语言程序设计 * C51的预处理 编译系统对程序中特殊命令进行预处理,预处理结果和源程序进行编译。 宏定义(用标识符表示字符串) #define 宏名 字符串 文件包含(源文件包含其他文件内容) #include 文件名 或 #include “文件名” 条件编译(仅编译需要的程序段) #ifdef #e

文档评论(0)

ddf55855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档