智能控制电路项目实践

34
智智智智智智智智智智

Upload: basil-black

Post on 31-Dec-2015

34 views

Category:

Documents


4 download

DESCRIPTION

智能控制电路项目实践. 单片机开发工具的使用. 简易仪器仪表设计制作. 秒表的设计制作. 里程表的设计制作. LED 电子显示屏的设计制作. LED 流水灯设计制作. 简易计算器的设计制作. 五. 四. 七. 三. 六. 八. 二. 学习项目. 单片机最小系统构建. 一. 任务 1. 任务 3. 任务 2. 单片机中数据使用. 单片机最小系统构建. 单片机程序和数据存储. 项目一 单片机最小系统构建. 任务2 单片机程序和数据存储. 任务要求. 单片机系统应用程序大概 1KB , 其中 主程序 500B , 子程序 400B , - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 智能控制电路项目实践

智能控制电路项目实践智能控制电路项目实践

Page 2: 智能控制电路项目实践

学习项目单片机最小系统构建单片机最小系统构建一

单片机开发工具的使用单片机开发工具的使用二

LEDLED 流水灯设计制作流水灯设计制作三

简易计算器的设计制作简易计算器的设计制作四

里程表的设计制作里程表的设计制作五

秒表的设计制作秒表的设计制作六

LEDLED 电子显示屏的设计制作电子显示屏的设计制作七

简易仪器仪表设计制作简易仪器仪表设计制作八

Page 3: 智能控制电路项目实践

项目一 单片机最小系统构建项目一 单片机最小系统构建

单片机中数据使用单片机中数据使用 任务任务 11

任务任务 22 单片机程序和数据存储单片机程序和数据存储

任务任务33

单片机最小系统构建单片机最小系统构建

Page 4: 智能控制电路项目实践

任务 2 单片机程序和数据存储

任务要求任务要求

单片机系统应用程序大概 1KB ,其中主程序 500B ,子程序 400B,

定时器 0 中断服务程序 100B ;原始数据有 200B ,位数据 8 位,

分别分配存储空间。

Page 5: 智能控制电路项目实践

任务分析任务分析

任务 2 单片机程序和数据存储

单片机运行的单片机运行的程序程序和运算及处理的和运算及处理的数据数据都是都是存储在存储器存储在存储器中,本任务要求中,本任务要求了解单片机的了解单片机的存储器结构存储器结构,以便正确合理的存储系统程序,以便正确合理的存储系统程序和数据。和数据。

Page 6: 智能控制电路项目实践

任务 2 单片机程序和数据存储

完成本任务需要掌握的知识:完成本任务需要掌握的知识:

(( 11 )) 89C5189C51 单片机内部结构单片机内部结构

(( 22 )) 89C5189C51 单片机工作过程单片机工作过程

(( 33 )) 89C5189C51 单片机程序存储器结构单片机程序存储器结构

(( 44 )) 89C5189C51 单片机数据存储器结构单片机数据存储器结构

Page 7: 智能控制电路项目实践

任务 2 单片机程序和数据存储

1. 89C51 单片机内部结构 主要包括 CPU 、内部存储器、定时与中断

系统、并行 I/O 口、串行 I/O 口和时钟电路等部分

Page 8: 智能控制电路项目实践

任务 2 单片机程序和数据存储

CPU

时钟电路 SFR

和RAM

ROM

定时 /计数器

时钟源 T0 T1

并行端口 串行端口 中断系统

P0P1P2P3 TXD

RXD

INT0

INT1

内 部 总 线

Page 9: 智能控制电路项目实践

任务 2 单片机程序和数据存储

也叫中央处理器是单片机的核心部件主要用于完成单片机的运算和控制功能。其内部由运算器和控制器组成。

CPUCPU

Page 10: 智能控制电路项目实践

任务 2 单片机程序和数据存储

程序存储器 (ROM) : 只读存储器 用于存放程序指令、原始数据及表格

数据存储器 (RAM) : 随机存储器 用于存放数据

内部存储器内部存储器

Page 11: 智能控制电路项目实践

任务 2 单片机程序和数据存储

内部有两个 16 位的定时器 / 计数器 用于实现定时或计数功能

89C51 单片机有中断系统 共有 5 个中断源,两级中断

定时与中断系统定时与中断系统

Page 12: 智能控制电路项目实践

任务 2 单片机程序和数据存储

89C51 单片机内部共有4 个 8 位的并行 I/O 口P0、 P1、 P2、 P3

主要用于实现数据的并行输入和输出。

并行并行 I/OI/O 口口

Page 13: 智能控制电路项目实践

任务 2 单片机程序和数据存储

89C51 单片机有一个全双工的串行口,用于实现与外部的串行数据传送和与外

部设备串行通信。

串行串行 I/OI/O 口口

Page 14: 智能控制电路项目实践

任务 2 单片机程序和数据存储

89C51 单片机的内部有时钟电路需外接石英晶体振荡器时钟电路为单片机产生时钟脉冲序列,

用于协调和控制其工作。

时钟电路时钟电路

Page 15: 智能控制电路项目实践

任务 2 单片机程序和数据存储

2. 单片机的工作过程和 ROM

( 1 )单片机的工作过程是自动执行程序的过程即一条条执行指令的过程指令:要求单片机执行的各种操作用命令的

形式写下来一条命令对应一条指令一系列指令的集合称为程序

Page 16: 智能控制电路项目实践

ROM……

0x05

0x12

0x23

0xD2

0x22

0x75

0x40

0xA3

0xE4

……

PCPC加一指令加一指令

移位指令移位指令

置置 11 指令指令

传送指令传送指令

清零指令清零指令

执行执行…………指令指令

执行执行加一加一指令指令

执行执行移位移位指令指令

执行执行置置 11 指令指令

执行执行传送传送指令指令

执行执行清零清零指令指令

Page 17: 智能控制电路项目实践

任务 2 单片机程序和数据存储

( 2 )程序存储器 ROM

在单片机内部,专门用来存放程序 ROM 写入信息后不能改写,只能读出存储

器。 断电后, ROM 中的信息保留不变 ROM 用来存放固定的程序或数据。

Page 18: 智能控制电路项目实践

任务 2 单片机程序和数据存储

89C51 是一种带 Flash ROM 的单片机 Flash ROM 是一种快速存储式只读存储器 可以电擦写,掉电后程序依然保存 编程寿命可以达到一千次左右。

Page 19: 智能控制电路项目实践

0x0000

0x0001

0x0002

0x0003 ……

0x000b ……

0x0013 ……

0x001b

0x0023 ……

。。。。。。

系统引导程序系统引导程序

外部外部 00 中断服务程序中断服务程序

定时器定时器 00 中断服务程中断服务程序序

外部外部 11 中断服务程序中断服务程序

定时器定时器 11 中断服务序中断服务序

串行口串行口中断服务程序中断服务程序任意存放

Page 20: 智能控制电路项目实践

任务 2 单片机程序和数据存储

(3) 地址和数据每个存储单元在存储器中所处的位置是以地址

标识的一个存储单元对应一个地址可以将地址理解为每个存储单元前面的编号不同地址根数,所确定的存储空间也不一样。

Page 21: 智能控制电路项目实践

任务 2 单片机程序和数据存储

00

11

0000

0101

1010

1111

000000

001001

010010

011011

100100

101101

110110

111111

12

22

32

nn 根地址线根地址线对应的存储空间有对应的存储空间有 22nn 个存储单元个存储单元存储单元的编号范围是存储单元的编号范围是 00 ~~ (2(2nn-1)-1)

Page 22: 智能控制电路项目实践

任务 2 单片机程序和数据存储

89C51 单片机提供 16 根地址线最大寻址空间为 216 ,即 64K

( 0x0000~ 0xffff )但芯片内部 ROM容量只有 4K

( 0x0000~ 0x0fff )。宏晶公司生产的 STC89E516 单片机

的内部 ROM容量已达到 63KB 。

Page 23: 智能控制电路项目实践

任务 2 单片机程序和数据存储

2 、数据存储器 RAM

片内片内RAMRAM

片外片外RAMRAM

0xf0xf

ff

…………

0x80x8

00

0x70x7

ff

…………

0x00x0

00

0xffff0xffff

..

..

..

..

..

..

0x000x00

0000

数据存储空间

128B

专用寄存器

存储空间

128B

数据存储空间

64K

Page 24: 智能控制电路项目实践

0x7f0x7f

..

..

..

0x30x3

00

8080 个 个

1616 个 个

3232 个 个

0x1f0x1f0x180x180x170x170x100x100x0f0x0f0x080x080x070x070x000x00

0x20x2

ff

……

0x20x2

00

第 3 组工作寄存器

第 2 组工作寄存器

第 1 组工作寄存器

第 0 组工作寄存器

通用数据区

位地址区

片内 RAM

( 1 )片内数据存储器空间1 )工作寄存器区2 )位地址区 3 )通用 RAM区

Page 25: 智能控制电路项目实践

任务 2 单片机程序和数据存储

RS1 RS0 当前寄存器组 0 0 0 组 0 1 1 组 1 0 2 组 1 1 3 组

0x1f0x1f0x180x180x170x170x100x100x0f0x0f0x080x080x070x070x000x00

第 3 组工作寄存器

第 2 组工作寄存器

第 1 组工作寄存器

第 0 组工作寄存器

RS1 RS0专用寄存器 PSW

Page 26: 智能控制电路项目实践

任务 2 单片机程序和数据存储

共有 128 位 每一位都有相对应的位地址, 位地址范围从 0x00~ 0x7F 。 0x20x2

ff

……

0x20x2

00

位地址区

位地址:位地址:0x070x07

位地址:位地址:0x000x00

0x20x2

ff

……

0x20x2

00

位地址:位地址:0x170x17

有双重寻址功能可以进行位寻址操作也可以按字节寻址操作 11

1 0 1 0 1 0 1 0

Page 27: 智能控制电路项目实践

数据缓冲器区。用于存放用户数据,只能按字节存取。通常可用于中间数据的保存,也用作堆栈的数据单元。

0x7f0x7f

..

..

..

0x30x3

00

通用数据区

Page 28: 智能控制电路项目实践

任务 2 单片机程序和数据存储

(2) 特殊功能寄存器(专用寄存器) 89C51 单片机的专用寄存器总数为 21 个, 占用了 0x80H~ 0xFF 中的一小部分 其他空间虽然未安排寄存器,但也不能进行

读、写操作。

Page 29: 智能控制电路项目实践

任务 2 单片机程序和数据存储

表 1-3 特殊功能寄存器一览表符号 地址 名称 符号 地址 名称ACC 0xE

0累加器 IE 0xA

8中断允许控制器

B 0xF0

B 寄存器 TMOD

0x89

定时器方式选择

PSW

0xD0

程序状态字 TCON

0x88

定时器控制器

SP 0x81

堆栈指针 TH0 0x8C

定时器 0 高 8位

DPL 0x82

数据寄存器指针(低 8位)

TL0 0x8A

定时器 0 低 8位

DPH 0x83

数据寄存器指针(高 8位)

TH1 0x8D

定时器 1 高 8位

P0 0x80

通道 0 TL1 0x8B

定时器 1 低 8位

P1 0x90

通道 1 SCON

0x98

串行控制器

P2 0xA0

通道 2 SBUF

0x99

串行数据缓冲器

P3 0xB0

通道 3 PCON

0x87

电源控制器

IP 0xB8

中断优先级控制器

Page 30: 智能控制电路项目实践

任务 2 单片机程序和数据存储

(3) 外部数据存储器 单片机最大可扩展片外 64KB 空间的数据

存储器,地址范围为 0x0000~ 0xFFFF 。

Page 31: 智能控制电路项目实践

任务 2 单片机程序和数据存储

1AE

决策决策决策决策

外部外部程序存储器程序存储器

64K64K

内部内部程序存储器程序存储器

4K4K

外部外部程序存储器程序存储器

64K64K

0AE

外部外部数据存储器数据存储器

64K64K

特殊功能特殊功能寄存器区寄存器区

通用数据区通用数据区位地址区位地址区寄存器区寄存器区

加加或或

Page 32: 智能控制电路项目实践

(1) 单片机内部结构;

(2) 单片机工作过程和 ROM ;

(3) 数据存储器 RAM ;

任务 2 单片机程序和数据存储 总结总结总结总结

Page 33: 智能控制电路项目实践

1.1.89C5189C51单片机内部结构包含哪几部分?单片机内部结构包含哪几部分?

各部分的主要功能是什么?各部分的主要功能是什么?

2. 2. 单片机是如何实现自动运行程序的?单片机是如何实现自动运行程序的?

3. 3. 对于容量有对于容量有 4kB4kB的程序存储器,其地址线需要多少的程序存储器,其地址线需要多少根?根?

4. 4. 简述简述 89C5189C51单片机片内单片机片内 RAMRAM的空间分配。的空间分配。

各部分主要功能是什么?各部分主要功能是什么?

5.5.片内片内 RAMRAM中包含哪些可位寻址单元?中包含哪些可位寻址单元?

任务 2 单片机程序和数据存储 思考思考思考思考

Page 34: 智能控制电路项目实践