1 / 15

单片机 C 语言编程

单片机 C 语言编程. 主讲教师:廉哲 QQ:17434548 电话: 13840210518 办公室:综合楼 C318. 课程主要内容:. 51 单片机硬件结构 C51 基础知识及其基本程序设计 C51 函数、数组、指针定义及应用 单片机内部资源及其 C 语言编程 单片机资源扩展及其 C 语言编程 综合程序设计 考试. C51 基础知识及其基本程序设计. 1.C51 基本数据类型:. 1.C51 基本数据类型:. char 字符类型 1Byte int 整型 2Byte long 长整型 4Byte

oro
Download Presentation

单片机 C 语言编程

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 单片机C语言编程 主讲教师:廉哲 QQ:17434548 电话:13840210518 办公室:综合楼C318

  2. 课程主要内容: • 51单片机硬件结构 • C51基础知识及其基本程序设计 • C51函数、数组、指针定义及应用 • 单片机内部资源及其C语言编程 • 单片机资源扩展及其C语言编程 • 综合程序设计 • 考试

  3. C51基础知识及其基本程序设计 1.C51基本数据类型:

  4. 1.C51基本数据类型: • char 字符类型 1Byte • int整型 2Byte • long 长整型 4Byte • float 浮点型 4Byte • * 指针型 • bit 位标量 1bit • sfr 8位特殊功能寄存器 • sfr16 16位特殊功能寄存器 • sbit位寻址 1bit 在单片机编程中经常采用无符号型数据

  5. 2.变量1/2 • 标识符:以英文字母字符或下划线开头,不能以数字开头;包含英文字母,下划线和数字。 • 定义一个变量的格式如下 • [存储器种类] 数据类型 [存储器类型] 变量名表 • 存储器种类: data 直接访问内部数据存储器(128B) bdata可位寻址内部数据存储器(16B) idata间接访问内部数据存储器(256B) pdata分页访问外部数据存储器(256B) xdata外部数据存储器 (64KB) code 程序存储器 (64KB)

  6. 2.变量2/2 • 存储器类型:SMALL COMPACT LARGE • SMALL存储模式把所有函数变量和局部数据段放在8051 系统的内部数据存储区这使访问数据非常快,但SMALL 存储模式的地址空间受限.在写小型的应用程序时,变量和数据放在data 内部数据存储器中是很好的因为访问速度快,但在较大的应用程序中data区最好只存放小的变量,数据或常用的变量(如循环计数,数据索引), 而大的数据则放置在别的存储区域 • COMPACT存储模式中所有的函数和程序变量和局部数据段定位在8051 系统的外部数据存储区.外部数据存储区可有最多256 字节(一页), 在本模式中外部数据存储区的短地址用 @R0/R1. • LARGE 存储模式所有函数和过程的变量和局部数据段都定位在8051系统的外部数据区外部数据区最多可有64KB, 这要求用DPTR 数据指针访问数据.

  7. 3.运算符 • 算术运算符:+ ,- , *, /, % • 关系运算符:==,!=,>,<,>=,<= • 逻辑运算符:&&,||,! • 布尔运算符:&,|,^(xor),~,<<,>> • 赋值运算符:= • 递增/递减运算符:++,——

  8. 4.C的流程控制语句1/3 (1)循环指令: • for(表达式1;表达式2;表达式3) {循环体;} • while(条件表达式) {循环体;} • do {循环体;} while(条件表达式);

  9. 4.C的流程控制语句2/3 • If(表达式1) {语句1;} else if(表达式2) {语句2;} else if(表达式3) {语句3;} . . . . else if(表达式n) {语句n;} else • {语句n+1;} (2)条件选择 • If(表达式) {语句1;} • If(表达式) {语句1;} else {语句2;}

  10. 4.C的流程控制语句3/3 多分支结构 switch(表达式) {case 常量1:语句1;break; case 常量2:语句2;break; case 常量n:语句n;break; default: 语句n+1; }

  11. 5.主函数 #include <reg52.h> //头文件 void main() //主函数 { //函数开始 变量定义; //注释 主体程序设计; } //函数结束

  12. 6.函数 • 函数的结构与主程序的结构相似,不过函数还能传入数据和传出(返回)数据 函数是一种独立功能的程序。可将所要处理的数据传入该函数里,称为传入自变量。将函数处理完成后的结果传回调用他的程序,称为返回值。 • 函数在程序中的3个位置: (1)函数声明部分 (2)函数定义部分 (3)函数调用部分

  13. 7.Keil C的使用 (1)编辑程序 (2)编译程序 (3)生成hex文件

  14. 8.Proteus的初步使用 • 绘制电路的方法 • 放置元件的方法 • 仿真的方法 • 单片机仿真方法。

  15. 9.综合演示 • LED的驱动 • 按键的识别,并控制LED • 流水灯的设计 • 7段LED的了解:静态法和动态法

More Related