XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
XX 大学计算机科学与技术学院
接口技术课程设计
报 告 书
课 题 名 压力测控系统
班 级__计 XXX____________________
姓 名__姓名名____________ _______
学 号__0000000000________ _______
指导教师 姓名名
日 期
完成时间:xxxx-xx-xx
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
目录
1 设计目的........................................................................................................................................ 1
2 设计内容........................................................................................................................................ 1
3 设计要求........................................................................................................................................ 1
4 设计原理与硬件电路....................................................................................................................1
4.1 设计原理............................................................................................................................ 1
4.1.1 压力传感器原理[1].................................................................................................2
4.1.2 A/D 转换[2][3]...........................................................................................................2
4.1.3 交通灯(双色灯)[4].................................................................................................3
4.1.4 8253 定时器[5][6].....................................................................................................4
4.1.5 8259 中断[6]............................................................................................................4
4.1.6 8279 键盘接口显示器[7]........................................................................................4
4.2 硬件电路............................................................................................................................ 6
4.2.1 分模块设计 ............................................................................................................6
4.2.2 硬件电路图 ............................................................................................................6
4.2.3 硬件电路实物图 ....................................................................................................7
5 程序流程图 .................................................................................................................................... 7
5.1 主程序流程图 ....................................................................................................................7
5.2 键盘输入中断程序服务流程图 ........................................................................................9
6 程序代码...................................................................................................................................... 10
6.1 代码原理分析 ..................................................................................................................10
6.2 附录代码.......................................................................................................................... 10
7 程序及硬件系统调试情况 ..........................................................................................................10
7.1 系统设计预期目标 ..........................................................................................................10
7.2 系统设计实际结果 ..........................................................................................................10
7.3 调试过程中遇到的主要问题和解决办法 ..................................................................... 10
8 设计总结与体会.......................................................................................................................... 11
9 参考文献...................................................................................................................................... 11
10 附录............................................................................................................................................ 12
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
1 设计目的
通过本次课程设计,希望能在学完《接口技术》这门课程以后,能综合应用所学到的现
论知识,用于实际生活当中,并在设计和完成的过程中能进一步达到加深对接口技术这门课
程中相关知识的掌握,且提高理论付诸实践的动手能力,为以后的课程打下基础。
具体的设计目的包括熟练应用 8086 汇编语言编写应用程序和实际设计中的硬软件调试
方法和步骤,熟悉微机系统的硬软件开发工具的使用方法等应用,例如常用的串口输入输出、
定时设计、中断、A/D、D/A 转换,而在具体设计过程中,可以酌情自己学习一些新的知识、
提高自我学习的技能,比如实际应用中各芯片,有 8255、8253、8259、8279,还有 74 系列
常用的芯片等等。另外还结合其他设备如温度传感器、压力传感器、键盘、数码管、LED 灯、
蜂鸣器、广告屏、液晶屏、直流电机、步进电机、交通灯(双色灯)等设备,并且,在课程设
计的过程中,还可能用到示波器等常用的电子仪器。
最后,通过课程设计实践,不仅要培养事实求是和严肃认真的工作态度,培养实际动手
能力,更要提高在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。
2 设计内容
利用实验箱的硬件资源,结合课程设计题目,设计硬件原理图,搭建硬件电路,具实验
内容本文选做硬件设计第十九题如下:
题目十九 压力测控系统
对压力传感器的信号进行检测。当压力低于 30pa 时,黄灯闪烁;当压力高于 150pa 时,
红灯闪烁,闪烁周期为 1 秒。(功能实现☆)(基本功能实现并在数码管显示压力值,格式为
P=XXX,★)(前面 2 功能实现,并可手动设定压力临界值★★)。
3 设计要求
在课程设计时,2~4 人一组,在教师指导下,各组可以集体讨论。教师的主导作用主
要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。
学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题。同组同学
要发扬团队协作精神,积极主动的提出问题、解决问题、讨论问题,互相帮助和启发。
学生在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目
的要求相符合,保证设计的正确。指导教师要引导学生学会掌握和使用各种已有的技术资料,
不能盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。学生要
在老师的指导下制定好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成
个阶段的设计任务。设计中可边设计,边修改,问题答疑与调试和方案修改相结合,提高设
计的效率,保证按时完成设计工作并交出合格的设计报告。
4 设计原理与硬件电路
4.1 设计原理
本文就所做的课程设计具体涉及到的理论原理进行说明,分别有压力传感器原理、A/D
转换、交通灯(双色灯)、8253 定时器、8259 中断、8279 键盘接口显示器等主要涉及到的原
理进行简要说明如下。
1
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
4.1.1 压力传感器原理[1]
在工程应变测量技术中,应变测量仪的设计与开发一直是一个热门话题。电阻应变片测
量方法是获取应变试验数据的一种基本传统手法,电阻应变式传感器是应用最广泛的传感器
之一。将电阻应变片粘贴在各种弹性敏感元件上,可构成测量位移、加速度、力、力矩、压
力等各种参数的电阻应变式传感器。
以下简要说明电阻-应变效应和桥式测量电路原理。
考察一段圆截面的导线(金属丝),设其长为 L,截面积为 A(直径为 D),原始电阻为 R:
L
A
该式中,ρ为金属丝的电阻率。如下图所示:
R
而桥式测量电路原理如下图所述:在电桥的 BC 臂接入一个同样的电阻片,其起始阻值
也为 R,将此电阻片贴在与构件同样的材料上,但它不感受应变。
这时电桥的输出电压变化量如下:
U
0
A
R
R
t
R
t
R
R
A
R
R
式中 A 为比例常数,只与供桥电压和桥臂比有关。这样,电桥的输出电压仅与应变引起
的电阻变化率成正比关系。
4.1.2 A/D 转换[2][3]
A/D 转换亦称“模拟数字转换器”,简称“模数转换器”。将模拟量或连续变化的量进行
量化(离散化),转换为相应的数字量的电路。A/D 转换器 ADC 也有很多种,从电路结构看
可分为逐次逼近型、并联比较型、双积分型等。并联比较型具有转换速度高的优点,但随着
位数的增加,所使用的元件数量以几何级数上升,使得造价巨增,故应用并不广泛;双积分
型具有精度高的优点,但转换速度太低,一般应用于非实时控制的高精度数字仪器仪表中;
逐次比较型转换速度虽然不及并联比较型,属于中速 ADC,但具有结构简单的价格优势,在
精度上可以达到一般工业控制要求,故目前应用比较广泛。下面就本次课程设计用到的
ADC0809 进行简要原理说明。
2
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
以如上原理图进行说明,转换开始时,顺序脉冲发生器输出的顺序脉冲首先将寄存器的
最高位置 1,经 DAC 转换为相应的模拟电压 VA 送人比较器与待转换的模拟电压 VI 进行比
较。若 VA>VI,说明数字量过大,除去最高位的 1,而将次高位置 1,再一次比较。若 VA
<VI,说明数字量还不够大,保留该位的 1,且还须将下一位置 1。这样逐次比较下去,一
直到最低位为止。逐次逼近寄存器的逻辑状态就是待转换的模拟输入电压 VI 的数字量,经
读出电路输出。以下为 VA 逼近 VI 的过程图以及 ADC0809 芯片的引线图:
4.1.3 交通灯(双色灯)[4]
双色 LED 是由一个红色 LED 管芯和一个绿色 LED 管芯封装在一起,公用负端。当红色正
端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿
灯亮;两端都加高电平时,黄灯亮。具体原理图如下:
3
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
4.1.4 8253 定时器[5][6]
在微机系统或智能化仪器仪表的工作过程中,经常需要使系统处于定时工作状态,或者
对外部过程进行计数。定时或计数的工作实质均体现为对脉冲信号的计数,如果计数的对象
是标准的内部时钟信号,由于其周期恒定,故计数值就恒定地对应于一定的时间,这一过程
即为定时,如果计数的对象是与外部过程相对应的脉冲信号(周期可以不相等),则此时即
为计数。以下为 8253 的内部结构图:
4.1.5 8259 中断[6]
所谓“中断”是指 CPU 暂时停止正在执行的程序,转去执行请求 CPU 为之服务的内、外
部事件的中断服务程序,待该中断服务程序执行完后,又返回执行原来的程序的过程。以下
是 8259A 的内部结构和管脚分配图:
D7~D0
内部总线缓
冲器
内部总线
INTA
INT
控制逻辑
读/写
逻 辑
级联缓冲器/
比较器
RD
WR
A0
CS
CAS0
CAS1
CAS2
SP/EN
中断
服务
寄存
器
(ISR)
优先权
裁决器
(PR)
中断请
求寄存
器
(IRR)
IR0
…
…
IR7
中断屏蔽寄存器
(IMR)
a) 内部结构图
VCC
A0
INTA
IR7
…
…
IR0
INT
SP/EN
CAS2
CS
WR
RD
D7
…
…
D0
CAS0
CAS1
GND
1
28
14
15
b) 引脚图
4.1.6 8279 键盘接口显示器[7]
8279 是可编程的键盘、显示接口芯片。它既具有按键处理功能,又具有自动显示功能,
在单片机系统中应用很广泛。8279 内部有键盘 FIFO(先进先出堆栈)/传感器,双重功能的
4
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
8*8=64B RAM,键盘控制部分可控制 8*8=64 个按键或 8*8 阵列方式的传感器。该芯片能自动
消抖并具有双键锁定保护功能。显示 RAM 容量为 16*8,即显示器最大配置可达 16 位 LED 数
码显示。其原理图如下:
对于 8279 的命令字及其格式,8279 的各种工作方式都要通过对命令寄存器的设置来实
现。8279 共有 8 种命令,通过这些命令设置工作寄存器,来选择各种工作方式。命令寄存
器共 8 位,格式为:
以下简要列举了 8279 命令特征表:
D7 D6 D5
0
0
0
0
1
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
8279 命令特征表
代表的命令类型
键盘/显示命令
时钟编程命令
读 FIFO/传感器 RAM 命令
读显示器 RAM 命令
写显示命令
显示禁止/熄灭命令
清除命令
5
XX 大学计算机科学与技术学院(计 X 班)
接口技术课程设计
200X-X-X
4.2 硬件电路
4.2.1 分模块设计
本次课程设计由于是一个综合各部分的知识进行设计的,所以为了有效地加快设计速度
及保证调试的方便性,设计采用自上而下,逐步求精的思想,分模块来实现,最后通过各个
可运行的模块程序组合成一个完整的系统文件,并加以调试和实现。
分模块主要包括了双色灯模块、A/D 转换模块、键盘中断输入值模块这三个模块。首先,
在各个子模块程序里解决了各个基本芯片或设备的使用,例如用双色灯模块单独解决了
8255 控制下双色灯颜色的变化操作及通过 8253 定时产生 1S 周期的脉冲,并将这个脉冲注
册成 8259 中断 IR2 来控制,这样就完整解决了双色灯模块的功能,只要修改存放双色灯颜
色信息的 SP 寄存器就可以控制双色灯的颜色了,在后面整合系统时就方便多了。还有 A/D
转换模块单独实现读压力值并进行一系列计算等操作、键盘中断输入值模块解决了通过键盘
手动设定值的功能,不仅方便系统的调试,而且通用性强,方便代码的复用。
4.2.2 硬件电路图
6