单片机应用课件一.ppt

上传人:xt****7 文档编号:17223251 上传时间:2020-11-15 格式:PPT 页数:140 大小:4.50MB
收藏 版权申诉 举报 下载
单片机应用课件一.ppt_第1页
第1页 / 共140页
单片机应用课件一.ppt_第2页
第2页 / 共140页
单片机应用课件一.ppt_第3页
第3页 / 共140页
资源描述:

《单片机应用课件一.ppt》由会员分享,可在线阅读,更多相关《单片机应用课件一.ppt(140页珍藏版)》请在装配图网上搜索。

1、 单片机应用 广东机电职业技术学院 -单片机应用 智能电子教研室 张永亮 广东机电职业技术学院 1、 单片机及其展过程 单片机是什么? 单片机是单片微型计算机的简称,它是在一块半导体芯片上,集成 了 CPU、半导体存储器、 I/O(Input/Output)接口、中断系统和定时器等计 算机必备部件,所构成的一个完整的数字电子计算机。 第一章、知识回顾 广东机电职业技术学院 1、 单片机及其展过程 单片机的发展过程 原始阶段 1971年 1月, INTEL公司的特德 霍夫在 与日本商业通讯公司合作研制台式计 算器时,将原始方案的十几个芯片压缩 成三个集成电路芯片。其中的两个芯片 分别用于存储程序

2、和数据, 另一芯片集 成了运算器和控制器 及一些寄存器,称 为 微处理器 (即 Intel 4004)。 广东机电职业技术学院 1、 单片机及其展过程 单片机的发展过程 发展阶段 1976年 Intel公司推出了 8位的 MCS-48系列的单片机,以其体积小、重 量轻、控制功能齐全和低价格的特点,得到了广泛的应用,为单片机的 发展奠定了坚实的基础。 80年代初, Intel公司推出了 8位的 MCS-51系列的单片机,随着单片机 的应用的急剧增加,其它的单片机也随之大量涌现如: Motorola的 68系 列, Zilog的 Z8系列等,从而掀开了单片机应用的历史新篇章 广东机电职业技术学院

3、1、单片机及其展过程 单片机现状 单片机经过约 30年的发展,已经形成有几千种型号上百种品牌的半导体 产业,对电子信息技术、工业控制技术、军事技术的发展起到巨大的推动作 用。 目前主流的单片机: 51内核的系列单片机 Microchip公司的 PIC系列单片机 Motorola公司的 68系列 Texas Instrument公司的 MSP16bit系列单片机 ARM内核的 32bit系列单片机 广东机电职业技术学院 2、单片机的特点及应用领域 单片机的特点 体积小巧 重量轻 可靠性高 控制能力强 价格低 开发方便简单,易于产品化 广东机电职业技术学院 2、单片机的特点及应用领域 单片机应用

4、汽车电子 广东机电职业技术学院 2、单片机的特点及应用领域 单片机应用 智能控制 (视频 ) 广东机电职业技术学院 2、单片机的特点及应用领域 单片机应用 消费电子产品 广东机电职业技术学院 2、单片机的特点及应用领域 单片机应用 军事技术 广东机电职业技术学院 2、单片机的特点及应用领域 单片机应用 工业控制 广东机电职业技术学院 3、单片机应用系统开发简介 硬件电路做成目标板 运用 PROTEL、 POWERPCB等软件 广东机电职业技术学院 3、单片机应用系统开发简介 程序设计 通常是 C语言或者汇编语言,在特定的集成开发环境( IDE)中编程 调试,比如应用最广泛的 KEIL uVis

5、ion2 广东机电职业技术学院 3、单片机应用系统开发简介 仿真 使用 proteus仿真 广东机电职业技术学院 3、单片机应用系统开发简介 程序下载 使用 ISP( In System Program在系统编程) ISP软件 下载线 目标系统 广东机电职业技术学院 3、单片机应用系统开发简介 广东机电职业技术学院 4、单片机系统 MCS-51系列单片机内部结构框图 广东机电职业技术学院 8位 CPU 4kbytes 程序存储器 (ROM) (52为 8K) 256bytes的数据存储器 (RAM)52有 384bytes的 RAM) 32条 I/O口线 111条指令,大部分为单字节指令 21

6、个专用寄存器 2个可编程定时 /计数器 5个中断源, 2个优先级 ( 52有 6个) 一个全双工串行通信口 外部数据存储器寻址空间为 64kB 外部程序存储器寻址空间为 64kB 逻辑操作位寻址功能 双列直插 40PinDIP封装 单一 +5V电源供电 4、单片机系统 1)片内资源: 广东机电职业技术学院 2) 80C51的引脚封装 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 4 0 3 9 3 8 3 7 3 6 3 5 3 4 3 3 3 2 3 1 3 0 2 9 2 8 2 7 2 6 2 5 2 4 2

7、3 2 2 2 1 1 2 3 4 5 6 7 8 9 1 0 2 0 1 9 1 8 1 7 1 6 1 5 1 4 1 3 1 2 1 1 P 1 . 0 P 1 . 1 P 1 . 2 P 1 . 3 P 1 . 4 P 1 . 5 P 1 . 6 P 1 . 7 R S T / V P D P 3 . 0 / R X D P 3 . 1 / T X D P 3 . 2 / I N T 0 P 3 . 3 / I N T 1 P 3 . 4 / T 0 P 3 . 5 / T 1 P 3 . 6 / W R P 3 . 7 / R D X T A L 2 X T A L 1 V S S

8、V C C P 0 . 0 P 0 . 1 P 0 . 2 P 0 . 3 P 0 . 4 P 0 . 5 P 0 . 6 P 0 . 7 E A / V P P A L E / P R O G P S E N P 2 . 7 P 2 . 6 P 2 . 5 P 2 . 4 P 2 . 3 P 2 . 2 P 2 . 1 P 2 . 0 R S T P 3 . 0 / R X D P 3 . 1 / T X D X T A L 2 X T A L 1 P 3 . 2 / I N T 0 P 3 . 3 / I N T 1 P 3 . 4 / T 0 P 3 . 5 / T 1 G N D V

9、C C P 1 . 7 P 1 . 6 P 1 . 5 P 1 . 4 P 1 . 3 P 1 . 2 P 1 . 1 / A I N 1 P 1 . 0 / A I N 0 P 3 . 7 注 : 类 似 的 还 有 P h i l i p s 公 司 的 8 7 L P C 6 4 , 2 0 引 脚 8 X C 7 4 8 / 7 5 0 / ( 7 5 1 ) , 2 4 引 脚 8 X 7 4 9 ( 7 5 2 ) , 2 8 引 脚 8 X C 7 5 4 , 2 8 引 脚 等 等 8 0 C 5 1 / 8 9 C 5 1 8 9 C 2 0 5 1 总线型 非总线型 4、单

10、片机系统 广东机电职业技术学院 3) 时钟电路 ( a)内部时钟电路;( b) HMOS型外部振荡源 (C) CHMOS型外部振荡源 4、单片机系统 XTAL1:接外部晶振和微调电容的一端,在单片机内部,它是构成片内振荡 器的反向放大器的输入端。当采用外部振荡器时,该引脚接收振荡 器的信号,即把此信号直接接到内部振荡器的输入端。 XTAL2:接外部晶振和微调电容的另一端,在单片机内部,它是构成片内振 荡器的反向放大器的输出端。当采用外部振荡器时,此引脚应悬空。 广东机电职业技术学院 单片机内部的时间单位 振荡频率 fosc = 石英晶体频率或外部输入时钟频率 振荡周期 = 振荡频率的倒数 机器

11、周期 机器周期是单片机应用中衡量时间长短的最主要的单位 在多数 51系列单片机中: 指令周期 执行一条指令所需要的时间 单位:机器周期 51单片机中:单周期指令、双周期指令、四周期指令 1机器周期 = 12 1/ fosc 4、单片机系统 3) 时钟电路 广东机电职业技术学院 RST/VPD:是复位信号输入端,高电平有效。当此输入端保持 2个机器周期 的高电平时,就可以完成复位操作。 RST引脚的第二功能是备用电源的输 入端。 上电复位 按键复位 4、单片机系统 4) 复位电路 广东机电职业技术学院 4、单片机系统 5) 存储器选择 外部程序存储器控制信号 EA EA=0: 访问外部程序存储器

12、。 EA=1: 访问片内与片外程序 存储器。 【 先内后外 】 Enable Address 广东机电职业技术学院 外部程序存储器的读选通信号 。 当访问外部 ROM时 , 产生负脉冲作 为外部 ROM的选通信号 。 地址锁存允许信号 ALE 在访问外部存储器时, ALE用 来锁存 P0送出的低 8位地址信号。 读选通信号 /PSEN Address Latch Enable Program Store Enable 4、单片机系统 6) ALE 及 /PSEN 广东机电职业技术学院 Y1 22 .11 8 4 C9 15 P C8 10 uF S1 S W - P B A L E WR RD

13、 R X D T X D I N T 0 E A / V P 31 X1 19 X2 18 R E S E T 9 RD 17 WR 16 I N T 0 12 I N T 1 13 T0 14 T1 15 P 10 1 P 11 2 P 12 3 P 13 4 P 14 5 P 15 6 P 16 7 P 17 8 P 00 39 P 01 38 P 02 37 P 03 36 P 04 35 P 05 34 P 06 33 P 07 32 P 20 21 P 21 22 P 22 23 P 23 24 P 24 25 P 25 26 P 26 27 P 27 28 P S E N 29 A

14、 L E / P 30 T X D 11 R X D 10 V C C 40 GND 20 U1 8 9 S 5 2 V C C P S E N P 10 P 11 P 12 P 13 P 14 P 15 P 16 P 17 T0 T1 I N T 1 P 00 P 01 P 02 P 03 P 04 P 05 P 06 P 07 P 20 P 21 P 22 P 23 P 24 P 25 P 26 P 27 V C C R6 10 K R4 10 1 R5 10 K C 10 15 P X1 X2 4、单片机系统 7) 最小系统 广东机电职业技术学院 半 导 体 存 储 器 只读 存储器 R

15、OM 随机读写 存储器 RAM 掩膜 ROM 可编程 ROM ( PROM ) 可擦除 ROM ( EPPROM ) 电擦除 ROM ( E 2 PROM ) 静态 RAM ( SRAM ) 动态 RAM ( DRAM ) Read-Only Memory Programmable ROM Erasable PROM Electrically EPROM Random Access Memory Static RAM Dynamic RAM STC单片机 5、 51系列单片机存储器 广东机电职业技术学院 5.1 存储器 8051在物理结构上有 4个存储空间: 片内程序存储器 片外程序存储器 (

16、ROM) 片内数据存储器 片外数据存储器 (RAM) 从用户使用的角度上, MSC-51有 3个存储空间: 片内外统一编址的 64 KB程序存储器空间 ( 用 16位地址 ) 256 B片内数据存储器空间 ( 用 8位地址 ) 64KB片外数据存储器地址空间 广东机电职业技术学院 5.1 存储器 MCS-51单片机存储器的结构 广东机电职业技术学院 在程序存储器的开始部分,定义了一段 具有特殊功能的 地址段 ,用作 程序起始和各种中断的入口 。 1)程序存储器 表 1 程序存储器中特殊地址的功能 程序存储 器用于存放编好的程序或表格常数 。 8n+3 广东机电职业技术学院 2)数据存储器 工作

17、寄存器区 位寻址区 数据缓冲区 3个区域 1. 片内通用数据存储器 数据存储 器用于存放中间运算结果 、 数据暂存和缓冲 、 标 志位等 。 MCS-51系列单片机的片内数据存储器除 RAM块外 , 还有特殊 功能寄存器 ( SFR) 块 。 数据存储器分为片外数据存储器 、 片内数据存储器 、 特殊 功能存储器 , 以下分别加以介绍 。 广东机电职业技术学院 工作寄 存器区 位 寻 址 区 数据缓 冲器区 表 2 片内通用数据存储器的结构 2)数据存储器 广东机电职业技术学院 ( 1)工作寄存器区 工作寄存器也称为 通用寄存器 , 供用户编程时使用 , 用于临 时存储 8位数据信息 。 工作

18、寄存器地址为 00H 1FH的 32个单元 , 并分成 4个工作寄 存器组 , 每个组有 8个工作寄存器 , 名称为 R0 R7。 每个工作寄存器组都可被选为 CPU的当前工作寄存器 , 通过改变 程序状态字寄存器 ( PSW) 中的 RS1、 RS0两位来实现 。 表 3 工作寄存器和 RAM地址对照表 广东机电职业技术学院 ( 2)位寻址区 内部 RAM中地址为 20H 2FH的 16个单元 , CPU不仅具有字节寻址功能 , 而且还 具有位寻址功能 。 这 16个单元共 128 位 , 每一位 都赋予 1个 位地址 , 位 地址范围是 00H 7FH。 广东机电职业技术学院 ( 3)数据

19、缓冲区 30H 7FH是 数据缓冲区 , 即用户 RAM区 , 共 80个单元 。 52子系列片内 RAM有 256个单元 , 工作寄存器区和位寻址区的 单元数与地址都和 51子系列的一致 , 而数据缓冲区有 208个单 元 , 地址范围是 30H FFH。 广东机电职业技术学院 ( 4)堆栈与堆栈指针 堆栈 是一种执行 “ 后进先出 ” 算法的数据结构 。 是在内存 中的一个存储区域 , 数据一个一个顺序地存入 ( 也就是 “ 压 入 PUSH”) 这个区域之中 。 有一个地址指针 ( 堆栈指针 ) 总指向最后一个压入堆栈的 数据所在的存储单元 , 存放这个地址指针的寄存器就叫做 堆栈 指示

20、器 。 开始放入数据的单元叫做 “ 栈底 ” 。 数据一个一个地存入 , 这个过程叫做 “ 压栈 ” 。 读取这些数据时 , 按照堆栈指示器中 的地址读取数据 , 堆栈指示器中的地址数自动减 1。 这个过程 叫做 “ 弹出 POP”。 如此就实现了后进先出的原则 。 广东机电职业技术学院 MCS51单片机堆栈 MCS-51的堆栈是向上生 成的(即向地址增加的方 向),堆栈指针 SP的初始值 称为栈底。在堆栈操作过程 中, SP始终指向堆栈的栈顶。 需要注意的是, 单片机 复位后 SP的值为 07H,因此 入栈数据将从 08H存起。 编程时,常使用 MOV SP, #30H 指令,将栈底定义在

21、30H单 元,为什么? 先入后出 ( 4)堆栈与堆栈指针 广东机电职业技术学院 2. 特殊功能寄存器 概念: 特殊功能寄存器 ( SFR)也称为 专用寄存器 ,用于控制、 管理单片机内部算术逻辑部件、并行 I/O口、串行 I/O口、 定时器 /计数器、中断系统等功能模块的工作。 使用: 系统初始化时针对使用的功能部件编程设定。 Special Function Register 2)数据存储器 广东机电职业技术学院 表 4 特殊功能寄存器地址对照表 2. 特殊功能寄存器 广东机电职业技术学院 可位寻址的位地址分布 MCS-51可直接位寻址的空间有 216位。 其中 内部 RAM的 20H 2F

22、H这 16个单元 具有 128个位地址空间,位地址为 00H 7FH; 另一部分位地址在特殊功能寄存器中,这些特殊功能寄存器是一些能 被 8整除的字节单元,地址在 80H FFH区间,只用了 11个字节,它们都可 进行位寻址,共计 88位。 2. 特殊功能寄存器 广东机电职业技术学院 可位 寻址 的位 地址 分布 表 5 位地址空间 广东机电职业技术学院 使用具有 C51编译扩展功能的 C语言进行 MCS-51单片机应用系统 的开发编程 , 简称 C51编程 。 C51编程具有以下特点 。 ( 1) 可管理内部寄存器和存储器的分配 , 编程时 , 无需考虑不 同存储器的寻址和数据类型等细节问题

23、; ( 2) 程序由若干函数组成 , 具有良好的模块化结构 、 可移植性 好 、 便于项目维护管理; ( 3) 有丰富的子程序库可直接引用 , 从而大大减少用户编程工 作量 , 提高编程效率; ( 4)与汇编语言交叉编程。用汇编语言编写与硬件有关的程序, 用 C51编写与硬件无关的运算程序,充分发挥两种语言的长处,提高 开发效率 。 C51特点 6、 KEIL C51的应用 广东机电职业技术学院 标识符用来标识源程序中某个对象的名字 , 这些对象可以 是语句 、 数据类型 、 函数 、 变量 、 数组等 。 标识符由字符串 、 数字和下划线等组成 , 应该注意的是第 一个字符必须是字母或下划线

24、 , 不能用数字开头 , 如 “ 1_a”是 错误的 , 编译时会有错误提示 。 在 C51编译器中 , 只支持标识 符的前 32位为有效标识 。 C51语言是区分大小写的一种高级语言 , 如 “ a_1”和 “ A_1”是两个完全不同的标识符 。 6.1 标识符和关键字 广东机电职业技术学院 C51中有些库函数的标识符是以下划线开头的 , 所以一般不 要以下划线开头命名用户自定义标识符 。 标识符在命名时应当 简单 , 含义清晰 , 这样有助于阅读理解程序 。 关键字则是编程语言保留的特殊标识符 , 它们具有固定的 名称和含义 , 在程序编写中不允许将关键字另做他用 。 C51中的 关键字除

25、了有 ANSI C标准的 32个关键字外 , 还根据 MCS-51单 片机的特点扩展了相关的关键字 。 C51关键字如表 5-1所示 。 在 C51的文本编辑器中编写 C程序 , 系统可以把保留关键字 以不同颜色显示 , 如 int关键字的默认颜色为天蓝色 。 6.1 标识符和关键字 广东机电职业技术学院 6.2 数据类型 C51具有 ANSI C的所有标准数据类型。 基本数据类型 包括: char、 int、 short、 long、 float和 double。 对 C51编译器来说, short类型和 int类型相同, double类 型和 float类型相同 。 广东机电职业技术学院

26、除此之外,为了更加有利地利用 MCS-51的结构, C51还增加 了一些特殊的数据类型,包括 bit、 sbit、 sfr、 sfr16。数据类型如 表 5-2所示。 表 5-2 C51数据类型 6.2 数据类型 广东机电职业技术学院 bit位标量是 C51编译器的一种扩充数据类型 , 利用它可定义一个位标量 。 它的值是一个二进制 位 , 不是 0, 就是 1, 类似一些高级语言中的 boolean型数据的 True和 False。 1) bit位标量 bit bitTimerMode; 举例: 广东机电职业技术学院 2) sfr特殊功能寄存器 sfr是一种 C51扩充数据类型,占用一个内存

27、单元, 值域为 0 255。 利用它可以访问 MCS-51单片机内部的所有特殊功 能寄存器。 如用 sfr P1 = 0 x90定义一个特殊功能寄存器变量 “ P1”, 0 x90是指 51单片机的 P1端口地址 90H,变量 P1 即指 51单片机的 P1端口。 在后面的语句中可以用 P1 = 255(对 P1端口的所有 引脚置高电平)之类的语句操作特殊功能寄存器。 广东机电职业技术学院 3) sfr16 16位特殊功能寄存器 sfr16也是一种 C51扩充数据类型 , 用于定义存在于 MCS- 51单片机内部 RAM的 16位特殊功能寄存器 , 如定时器 T0和 T1。 sfr16型数据占

28、用 2个内存单元 , 取值范围为 0 65535。 sfr16 DP = 0 x82; / data pointer 举例: 广东机电职业技术学院 sbit也是一种 C51扩充数据类型 , 利用它可以访问芯片内 部 RAM中的可寻址位或特殊功能寄存器中的可寻址位 。 定义方法有如下三种: ( 1) sbit 位变量名 = 位地址 将位的绝对地址赋给位变量 , 位地址必须位于 80H FFH ( 特殊功能寄存器的位地址 ) 之间 。 4) sbit可寻址位 sbit P1_1 = 0 x91; 举例: 广东机电职业技术学院 ( 2) sbit 位变量名 = 特殊功能寄存器名 位位置 当可寻址位位

29、于特殊功能寄存器中时 , 可采用这种方法 。 位位置是一个 0 7之间的常数 。 ( 3) sbit 位变量名 = 字节地址 位位置 这种方法是以一个常数 ( 字节地址 ) 作为基地址 , 该常 数必须在 80H FFH( 特殊功能寄存器的字节地址 ) 之间 。 位 位置是一个 0 7之间的常数 。 5) sbit可寻址位 sbit P1_1 = P11; 举例: sbit P1_1= 0 x90 1; 举例: 广东机电职业技术学院 sbit定义特殊功能寄存器中的可寻址位;而 bit则定义 了一个普通的位变量 , 一个函数中可包含 bit类型的参数 , 函数返回值也可为 bit类型 。 sbi

30、t和 bit的区别 5) sbit可寻址位 广东机电职业技术学院 MCS-51单片机中的特殊功能寄存器及其可寻址位, 已被预先定义放在文件 reg51.h中,在程序的开头只需加 上 #include或 #include即可。 另外, bit还可访问 MCS-51单片机片内 20H 2FH范 围内的位对象。 C51编译器提供了一个 bdata存储器类型, 允许将具有 bdata类型的对象放入 MCS-51单片机片内可 位寻址区。 reg51.h 6)头文件 广东机电职业技术学院 6.3 C51对 MCS-51单片机的访问 在 C51中访问单片机的存储器时,是通过定义不同存储类型的变量, 以说明该

31、变量所访问的存储器位置。 1) 存储类型 表 5-3 C51的数据存储类型 广东机电职业技术学院 char data varl; /*字符变量 varl的存储类型 data,定位于 片内 RAM*/ bit bdata Muck; /*位变量 Muck的存储类型 bdata定位于 片内寻址区 */ unsigned char xdata vector 822; /*无符号字符三维变 量 vector定义成 xdata, C51将它定位 到片 外 64 KB RAM内,占 8 2 2 32个字节 存储空间,用于存放三维变量数组 */ 变量存储类型定义举例 如何定义存 储的地址? 广东机电职业技术

32、学院 2) 存储器模式 存储器模式 决定了变量的默认存储类型和参数传递区 , 变量定义不明确存储区类型时使用默认值 。 C51有三种存储器模式: SMALL、 LARGE和 COMPACT。 广东机电职业技术学院 存 储 模 式 说 明 小编译模式 SMALL 参数及局部变量放入可直接寻址的片内数据存储区 ( 最大 128 B, 默认存储类型是 data) , 因此 访问十分方便 。 另外所有对象 , 包括栈 , 都必须嵌入片内 RAM。 栈长很关键 , 因为实际栈长依赖 于不同函数的嵌套层数 。 紧凑编译模式 COMPACT 参数及局部变量放入分页片外数据存储区 ( 最大 256 B, 默认

33、 的存储类型是 pdata) , 通过寄存器 R0和 R1间接寻址 , 栈空间位于 内部数据存储区中 。 大编译模式 LARGE 参数及局部变量直接放入片外数据存储区 ( 最大 64 KB, 默认 存储类型为 xdata) , 使用数据指针 DPTR来进行寻址 。 用此数据指 针访问的 效率较低 , 尤其是对两个或多个字节的变量 , 这种数据存 储类型的访问机制直接影响代码的长度 , 不方便之处在于这种数据 指针不能对称操作 。 表 5-4 C51的数据存储模式 广东机电职业技术学院 存储模式 数字电子钟的设计( LED数码显示) 工学结合任务一: 广东机电职业技术学院 -单片机应用 广东机电

34、职业技术学院 目的和意义 通过电子钟设计项目,来掌握单片机与显示器的接口 及程序设计方法。 掌握动态显示程序设计方法及编程应用。 该项目的训练,提高学生的实际动手操作能力,养成 学生的工程道德观念,建立工程敬业精神和团队合作 精神。 广东机电职业技术学院 前言 电子钟是一种利用数字电路来显 示秒、分、时的计时装置,与传统的 机械钟相比,它具有走时准确、显示 直观、无机械传动装置等优点,因而 得到广泛应用。随着人们生活环境的 不断改善和美化,在许多场合可以看 到数字电子钟。在城市的主要营业场 所、车站、码头等公共场所使用数字 电子钟已经成为一种时尚。但目前市 场上各式各样的数字电子钟大多数用 全

35、硬件电路实现,电路结构复杂,功 率损耗大等缺点。因此有必要对数字 电子钟进行改进。 利用现有知识,能 否自行设计? 广东机电职业技术学院 一、任务描述 1、用 51系列单片机设计电子时钟。 2、电子钟具有“时”、“分”、“秒”( 23小时 59分 59秒)显示功能。 3、采用延时方式实现,精度不超过 3S/分钟, 5%。 4、采用 LED数码管动态显示。 5、显示无明显闪烁。 广东机电职业技术学院 二、任务分析 1 、任务所需硬件知识 单片机最小系统(晶振,复位电路)。 数码管显示原理,型号,扫描方式,数码管段码、位码概念。 2、任务所需软件知识 单片机 C语言数据类型,结构,控制语句,程序结

36、构主程序 void main()、延时子程序 void delay()、数组等。 3 、任务所需环境: 安装操作系统的微机 1台、单片机集成开发环境 keil C2.0、软硬 件开发平台 proteus 6.9、单片机下载软件 STC_ISP_V3.3;单 片机实验板、下载线。 广东机电职业技术学院 要求会使用 Keil C开发环境 要求文件夹命名规范 要求工程项目命名规范 要求文件名命名规范 要求程序是否功能齐全 要求仿真软件达到设计要求 要求硬件电路满足设计要求 要求产品设计文档充分 二、任务分析 程序设计要求 广东机电职业技术学院 1. 数码管显示 范例分析: 硬件分析 电路中用到了 单

37、片机的并行 I/O口 和 数码管 软件设计 由于硬件电路中数码管接在单片机的 P0口上,故将显示内容 送 至 单片机的 P0口就可以在数码管上看到显示内容。 三、任务设计 广东机电职业技术学院 P 0 . X 锁 存 器 D Q QC L 0 1 M U X V C C 1 /*定义 P0口,地址 80H*/ sbit P1_1=P11; /*定义 P1口的第一位 */ 广东机电职业技术学院 3) I/O接口实例 例 1:电路如下图所示,试用二极管显示按键当前状态。 P 1. 0 P 1. 1 P 1. 2 P 1. 3 P 1. 4 P 1. 5 P 1. 6 P 1. 7 U1 80 51

38、 GND D1 D2 D3 D4 K1 K2 K3 K4 V C C GND 电路分析: 电路中 P1口的低四位接按键, 作输入口使用,高四位接发 光二极管,作输出口使用。 广东机电职业技术学院 软件设计: #include void main() while(1) unsigned char Key; Key=P1 P1=Key4; Delay(); 这是流程图,在设 计程序之前应首先 绘制流程图,流程 图是编写和修改程 序的依据。 3) I/O接口实例 广东机电职业技术学院 数码管是一种半导体发光器件,其基本单元是发光二极管。 4) 数码管 广东机电职业技术学院 数码管的分类 数码管按段数

39、分为七段数码管和八段数码管,八段数码管 比七段数码管多一个发光二极管单元(多一个小数点显示) 4) 数码管 a b c d e f g d p c o m a b f g c o m c d p d e c o m ab fg c d p d e c o m ab fg c d p d e 共阴结构 共阳结构 广东机电职业技术学院 数码管的显示代码表 COM dp g f e d c b a 段码 0 0 0 0 1 1 1 1 1 1 3FH 1 0 0 0 0 0 0 1 1 0 06H 2 0 0 1 0 1 1 0 1 1 5BH COM dp g f e d c b a 段码 0 1

40、 1 1 0 0 0 0 0 0 C0H 1 1 1 1 1 1 1 0 0 1 F9H 2 1 1 0 1 0 0 1 0 0 A4H 共阳数码管段码 共阴数码管段码 4) 数码管 广东机电职业技术学院 共阴、共阳数码管比较 例 2:使下面两个数码管都显示 H。 P 1.0P 1.1 P 1.2 P 1.3 P 1.4 P 1.5 P 1.6 P 1.7 U1 80 51 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 GND a bf c g d e dp L E D GND 33 0*8 P 1.0 P 1.1 P 1.2 P 1.3 P 1.4 P 1.5 P 1

41、.6 P 1.7 U1 80 51 V C C 33 0*8 a bf c g d e V C C1 2 3 4 5 6 7 a b c d e f g 8 dp dp 9 L E D H的段码: H的段码: #76H #89H 4) 数码管 广东机电职业技术学院 四位共阳极数码管内部连接图 4) 数码管 广东机电职业技术学院 数码管的驱动方式 数码管要正常显示,就要用驱动电路来驱动数码管的各 个段码,从而显示出我们要的数字,因此根据数码管的驱动 方式的不同,可以分为静态式和动态式两类。 静态显示驱动:静态驱动也称直流驱动。静态驱动是指 每个数码管的每一个段码都由一个单片机的 I/O端口进行驱

42、 动。静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O端口多,如驱动 5个数码管静态显示则需要 5 8 40根 I/O端口来驱动,要知道一个 89S51单片机可用的 I/O端口才 32个呢),实际应用时必须增加译码驱动器进行驱动,增 加了硬件电路的复杂性。 4) 数码管 广东机电职业技术学院 数码管的驱动方式 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的 一种显示方式之一,动态驱动是将所有数码管的 8个显示笔划 a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极 COM增加位选通控制电路,位选通由各自独立的 I/O线控制,当单 片机输出字形码时,所有

43、数码管都接收到相同的字形码,但究竟是 那个数码管会显示出字形,取决于单片机对位选通 COM端电路的控 制,所以我们只要将需要显示的数码管的选通控制打开,该位就显 示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数 码管的的 COM端,就使各个数码管轮流受控显示,这就是动态驱动 。在轮流显示过程中,每位数码管的点亮时间为 1 2ms,由于人 的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管 并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳 定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样 的,能够节省大量的 I/O端口,而且功耗更低。 4) 数码管 广东机电

44、职业技术学院 四位数码管显示电路 4) 数码管 广东机电职业技术学院 本讲范例中使用的是 8位动态数码管 连接 关系 段码输入端 八位的位选端 4)、数码管 广东机电职业技术学院 1、进行功能分析,工作框架搭建,工作分工。 2、使用软硬件开发平台 proteus 7.4进行电路仿真。设计要点:新建电 路图设计文件,查找元器件,放置元器件,布局布线,修改元器件 属性,进行仿真单片机程序。 3、使用单片机集成开发环境 keil C2.0。要点: C程序构成, 关键词, 运算符与表达式,数据结构,结构化语句。 4、使用单片机下载软件 STC_ISP_V3.3,通过串口或 USB将单片机程 序下载到单

45、片机芯片中进行调试。 5、完善单片机产品硬件电路,进行合适的电容、电阻、芯片、传感器、 显示器件等进行焊接,通电运行后观察硬件电路是否满足要求。 6、完成实验文档编写,包括:题目、作者、摘要、关键词,绪论,硬 件电路,软件流程、代码,数据分析。 5)、项目实施 广东机电职业技术学院 6)、电路仿真 广东机电职业技术学院 7)、程序设计 分析课题,确定解决方案和算法; 分配系统资源及存储单元; 绘制程序流程图; 设计程序,并反复调试和修改。 一般步骤 广东机电职业技术学院 设计思想 当 LED的显示位数较多时, I/O口较少时,为了简化电路, 降低成本,将所有的字段线对应并联,由一个 I/O口控

46、制,而 共阴极点或共阳极点由另外一个 I/O口控制。如果各位同时导 通, LED只能显示相同的字符。要想每位显示不同的字符,必 须采用扫描显示方式。 在某一瞬间,只让某一位的字位线处于选通状态,即共阴极 的为低电平,共阳极为高电平,同时字段线上输出相应位要显示 字符的字段码。而其他各位的字位线处于悬空状态,不显示,这 样,在每一瞬时,每位 LED只有选通的那一位 LED显示出字符,而 其他位是熄灭的,同样在下一瞬时,只显示下一位 LED,如此循 环每位 LED。虽然这些字符是在不同的瞬时轮流显示出来的,但 由于人眼的视觉残留效应,看到的是每位同时显示字符。 扫描原理 7)、程序设计 广东机电职

47、业技术学院 C51程序由一个或多个函数构成,是一个函数定义的集合。 在这个集合中, 必定有一个名为 main()的主函数。程序执行从主函数 main()开始,又在主函数 main()中结束。 C51程序同一般的 C程序在结构上没有区别。 C51程序的编程规则: (1) 函数是 C51程序的基本单位, 一个 C51程序至少有一个主函数 main(), 也可以由一个主函数 main()和若干个其他函数构成。 (2) 一个函数由函数说明部分和函数体两部分组成。 (3) 函数说明部分 由函数名、函数类型、函数属性、函数参数名和形式参 数类型组成,其中允许没有函数参数,函数名后面必须有 1个圆括号,括号

48、内 就是可有可无的形式参数表。 7)、程序设计 C51一般格式 广东机电职业技术学院 (4) 函数体是用大括号 围起来的部分。 大括号内有两部分内容:一部分 是变量及变量的定义;另一部分是由若干语句组成的执行部分。 (5) 语句的组成规则为: 每个变量必须先定义后使用; 变量名由英文字母组成, 英文字母要区分大小写,大小写不同则变量 名不同; 书写格式自由, 一行可以写多个语句 ,一个语句也可以写成多行,但 每条语句必须以“;”结尾; 分号是 C语言的必须组成部分, 每个语句和数据在定义的最后必须有一 个分号,程序的最后一个语句也应有分号。 7)、程序设计 C51程序的编程规则: 广东机电职业

49、技术学院 全局变量说明 /*可被各函数引用 */ main() /*主函数 */ /*函数体开始 */ 局部变量说明 /*限于在本函数内使用 */ 执行语句 (包括调用其他函数的语句 ) /*主函数的函数体结束 */ (6) C语言对 I/O操作实现了“函数化”, 分别调用库函数 scanf和 printf 等函数完成,无专门的输入 /输出语句。 (7) C51的注释用 /*/ 表示, 有了注释,阅读程序更方便。 C51程序结构: 7)、程序设计 广东机电职业技术学院 function 1(形式参数表 ) /*可被调用的一个函数 */ 形式参数说明 /*函数 1的函数体开始 */ 局部变量说明

50、 执行语句 (包括调用其他函数的语句 ) /*函数 1的函数体结束 */ function n(形式参数表 ) /*可被调用的第 n个函数 */ /*格式同函数 1,从“ ”开始,到“ ”结束 */ 7)、程序设计 广东机电职业技术学院 #include unsigned char Hour=23; unsigned char min =59; unsigned char sec =56; unsigned char y8 =0 x7f,0 xbf,0 xdf,0 xef,0 xf7,0 xfb,0 xfd,0 xfe; unsigned char x10=0 x3f,0 x06,0 x5b,

51、0 x4f,0 x66, /段码 01234 0 x6d,0 x7d,0 x07,0 x7f,0 x6f; /段码 56789 /- void delay() /延时子程序 5ms unsigned int i=500;while(i-); 7)、程序设计 头文件 广东机电职业技术学院 void display() /数码管显示子程序 ,8 P2=0 xff; P0=xHour/10; P2=y0; delay(); /小时的十位 P2=0 xff; P0=xHour%10; P2=y1; delay(); /小时的个位 P2=0 xff; P0=0 x40; P2=y2; delay();

52、/- 0100 0000 P2=0 xff; P0=xmin/10; P2=y3; delay(); /分钟的十位 P2=0 xff; P0=xmin%10; P2=y4; delay(); /分钟的个位 P2=0 xff; P0=0 x40; P2=y5; delay(); /- P2=0 xff; P0=xsec/10; P2=y6; delay(); /秒的十位 P2=0 xff; P0=xsec%10; P2=y7; delay(); /秒的个位 显示程序 7)、程序设计 广东机电职业技术学院 void main() /主程序 unsigned char i; loop1: display(); i+; if(i25) i=0; sec+; if(sec59) sec=0; min+; if(min59) min=0; Hour+; if(Hour23) Hour=0; goto l

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!