当前位置:文档之家› 光照强度测量仪

光照强度测量仪

合肥学院
计算机科学与技术系
微型计算机原理与接口技术课程设计报告
2009~2010学年第一学期
课程微型计算机原理与接口技术
课程设计名称光照强度测量仪
学生姓名陈冠
学号0704032046
专业班级07级网络工程(2)班
指导教师龙夏、何力新
2010年3月
1.题义分析及解决方案
设计一个简易的光照强度测量仪,由光照强度产生的模拟电压信号转换为数字信号,然后转换为照度(单位是勒克斯)显示在LED上;
校准照度测量器:在一定的光强度下,产生200数字量的电压,以此对应关系(照度—电压)将其它光强度转换为勒克斯值,显示在LED上。

1.1题义需求分析
光照强度测量仪主要根据光敏电阻的特性制作的。

光敏电阻值随受到的光照强度的变化而变化(光照强度越大,电阻值越小)。

将光敏电阻接入电路中,不同光照强度导致光敏电阻值变化,于是光敏电阻上的电压发生变化,导致电路的输出电压也相应变化。

根据电压-光照度函数关系,由电压计算得到光照强度值,然后以可视化界面形式输出(即PC机和LED数码管显示),以供用户查看结果。

其中光敏电阻的特性是光敏电阻随受到的光照强度的变化电阻值发生变化,光照强度越强电阻越小,在分压电路中获得电压越低。

根据这一特性,结合光照强度和输出的模拟电压之间的关系,可以得到某一光强度下的对应的模拟电压。

将模拟电压通过AD转化器转换为数字电压,以便于计算机处理。

然后再将数字电压转换成光照度。

1.2.解决问题方法及思路
1.2.1硬件部分
程序设计中用到的硬件是光敏电阻、ADC0809、8255A和七段LED数码管。

提出问题:
(1)为什么接口使用8255A而不是8279?
(2)为什么显示装置使用LED七段数码管而不是LCD?
(3)为什么选用光敏电阻?
解决问题:
1.2.1.1接口芯片选用8255A 而不是8279是由于8255A 在本程序中使用软件控制很容易实现且不需要用到小键盘,具体如表1—1所示。

1.2.1.2 本实验选择的显示设备是七段LED 数码管,没有选择LCD
的原因如表1—2所示。

1.2.1.3 本实验选用的是光敏电阻,因为光敏电阻上的光照强度与输出电压成线性关系,得到的模拟电压也成线性关系。

1.2.2软件部分
根据硬件需求采用8255A芯片,采用汇编语言,8255A芯片的PA、PB、PC 三口的工作方式为方式0,将8255的PA口接发光二极管,PB口作为段选码,PC口作位选码,用软件编程实现从C口读入信息,通过8个LED数码管循环显示光照强度。

2.硬件设计
2.1.选择芯片8255A
2.1.1芯片8255A在本设计中的作用
芯片8255A通过数据口从CPU接受转换得到的光照度数据,通过B口输出作为位选,实现LED数码管的动态显示,通过A口将数值输出到LED数码管。

2.1.2芯片8255A的功能分析
2.1.2.1 8255引脚图
8255是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B 口和C口。

三个端口都可以作为输入端口或输出端口。

A口有三种工作方式:即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,而C口通常作为联络信号使用。

8255的工作只有当片选CS有效时才能进行,而控制逻辑端口实现对其他端口的控制。

2.1.2.2 CPU接口(数据总线缓冲器和读/写控制逻辑)
数据总线缓冲器:
这是一个8位双向三态缓冲器,三态是由读/写控制逻辑控制的。

这个缓冲
器是8255A与CPU数据总线的接口。

所有数据的输入/输出,以及CPU用输出指令向8255A发出的控制字和用输入指令从8255A读入的外设状态信息,都是通过这个缓冲器传递的。

读/写控制逻辑:
它与CPU的6根控制线相连,控制8255A内部的各种操作。

控制线RESET 用来使8255A复位。

和地址线A1及A0用于芯片选择和通道寻址。

控制线和用来决定8位内部和外部数据总线上信息传送的方向,即控制把CPU的控制命令或输出的数据送到相应的通道,或把状态信息或输入数据送到CPU。

8255A的读/写控制逻辑的作用,是从CPU的地址和控制总线上接受输入的信号,转变成各种命令送到A组或B组控制电路进行相应的操作。

2.1.2.3 8255A的引脚信号
与外设相连的
PA7~PA0:A口数据信号线。

PB7~PB0:B口数据信号线。

PC7~PC0:C口数据信号线。

与CPU相连的
RESET:复位信号。

当此信号来时,所有寄存器都被清除。

同时三个数据端口被自动置为输入端口。

D7~D0:它们是8255A的数据线和系统总线相连。

CS:片选信号。

在系统中,一般根据全部接口芯片来分配若于低位地址(比如A5、A4、A3)组成各种芯片选择码,当这几位地址组成某一个低电平,于8255A 被选中。

只有当有效时,读信号写才对8255进行读写。

RD:读信号。

当此信号有效时,CPU可从8255A中读取数据。

WR:写信号。

当此信号有效时,CPU可向8255A中写入数据。

A1、A0:端口选择信号。

8255A内部有3个数据端口和1个控制端口,共4个端口。

规定当A1、A0:为00时,选中A端口;为01时,选中B端口;为10时,选中C端口;为11时,选中控制口。

8255的基本操作如下表2-1所示。

表2—1 8255的基本操作
2.1.2.4芯片8255A的技术参数,如下表2—2所示:
参数说明:
输入最低电压:min=-0.5V,max=0.8 V
输入最高电压:2.0 V
输出最低电压:0.45 V
输出最高电压:2.4 V
表2—2 8255A的技术参数
2.1.2.5 8255A工作方式控制字
A口、B口为输出模式,工作于方式0。

CPU中的数据经由数据线路到达8255A,再由A口、B口分别段选、位选后输出到LED。

详细控制字见表2—3。

表2—3 8255A的工作方式控制字
方式0的工作特点
这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由。

相关主题