8086应用举例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

应用举例

利用8086处理器设计一个简单的电加热炉的温度控制系统,

要求:1|、目标温度可以设置、显示;(XXX)

2、炉内实际温度可以显示(XXX)

3、温度控制过程中,每秒种测量、调节1次

4、通过固体继电器调节电阻丝对电炉加温

5、加热速度:1度/分钟,到200度后保持稳定

(一) 设计要点:

1、以8086为处理器

2、用3个8位锁存器锁存20位地址(AD0-AD15 ;A16-A19 ;BHE )

3、RAM存储器地址从00000H -03FFFH连续空间(16K*8)6264*2 数据及中断矢量表

4、ROM存储器地址从FC000H-FFFFFH的连续空间(16K*8)2762*2 程序和程序中用到的固定参数

5、定时器8253控制时间(端口地址0020H,0022H,0024H,0026H)

6、16键、6位LED显示器通过8255A的A、B、C口接口(端口地址0030H,0032H,0034H,0036H)

7、电阻加热:8255的C口控制0809的状态由C口查询

8、温度测量:ADC0809 8位输入0-5V (启动转换的控制端口0040H 读转换结果端口0042H )

(二) 系统组成

(三) 硬件设计及地址分配

3.1 存储器的作用:

1、数据及中断矢量表

2、程序和程序中用到的固定参数

组织方式:

按字节(BYTE)组织,支持字(WORD)读写操作

RAM :偶地址+奇地址体(A0 ,D0-D7;BHE,D8-D15),可读可写ROM :偶地址+奇地址体(A0 ,D0-D7;BHE,D8-D15),可读不写地址范围:

RAM存储器00000H -03FFFH连续空间(16K*8)6264*2

ROM存储器FC000H-FFFFFH连续空间(16K*8)2764*2

存储器的地址译码与读写控制电路真值表:

3.2 IO接口设计

I/O组织方式:

按字节(BYTE)组织,但不支持字(WORD)读写操作。

采用偶地址寻址(A0 ,D0-D7)

端口分配:

8253 端口地址0020H,0022H,0024H,0026H

8255A端口地址0030H,0032H,0034H,0036H

ADC0809端口地址:

启动转换的控制端口0040H

读转换结果端口0042H

8255信号与8253类似;此处略

8253的作用:

在温度控制过程中,每秒钟产生20次中断请求,控制模/数的采样周期(50ms=20次/每秒)工作模式字设置:

SC1 SC0 RW1 RW0 M2 M1 M0 BCD

定时器通道:0

定时参数写入方式:先读/写低8位字节, 再读/写高8位字节

工作模式:方式2

产生周期性脉冲:

(3)方式2——分频器(速度波发生器)

具有计数初值重装能力

二进制计数;

定时器初值设置:

1、定时周期采用1Mz的时钟输入,定时时钟周期为1us(1/10-6)

2、根据定时时间(50ms)= 时钟周期(1us)*脉冲数(c) ,求得C=50000=0c350H (分2次写入通道0的端口)

8255的作用:

1、键盘扫描

2、显示器扫描

利用A输入、B口输出和C口输出的6位

3、输入0809的状态(检测0809的EOC信号,确定A/D转换是否完成)A口1位

4、控制加热电阻丝的开关(C口1位输出)

工作模式字设置:

A、B、C 都为基本的输入输出方式

A输入、B口输出和C口输出的6位

控制字为:1 00 1 0 0 0 0

3.3 中断控制:

由于只有单中断源,可采用NMI(上升沿)作为中断请求输入。

中断类型号是固定的(02h),

中断子程序入口地址存放在0000:0008H-0000:000B单位中(物理地址为00008H-0000BH).

(四) 软件控制流程

1、控制硬件工作完成参数设置、温度测量、显示、加热控制

2、加热控制时需要控制算法(如PID)

4.1 总体流程

程序包括两大部分:主控程序和中断处理程序

主控程序:

功能:完成程序初始化、接口电路的模式设置、键盘扫描(控制参数设置)、显示扫描。

特点:完成初始化后,程序无限循环(不断的键盘扫描(控制参数设置)、显示扫描)。

中断处理程序:

功能:完成时钟控制、温度测量(AD转换)、根据控制算法实现温度调节。特点:每当8053计数到0时,就执行一次。

两部分协调工作完成系统的温度控制。

相关文档
最新文档