光光照强度测量仪_第1页
光光照强度测量仪_第2页
光光照强度测量仪_第3页
光光照强度测量仪_第4页
光光照强度测量仪_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

2、需求分析p1EanqFDPw 光照强度测量仪主要根据光敏电阻的特性制作的。光敏电阻值随受到的光照强度的变化 而变化(光照强度越大,电阻值越小)。将光敏电阻接入电路中,不同光照强度导致光敏电阻 值变化,于是光敏电阻上的电压发生变化,导致电路的输出电压也相应变化。根据电压-光照 度函数关系,由电压计算得到光照强度值,然后以可视化界面形式输出(即PC机和LED数码管 显示),以供用户查看结果。DXDiTa9E3d 其中光敏电阻的特性是光敏电阻随受到的光照强度的变化电阻值发生变化,光照强度越 强电阻越小,在分压电路中获得电压越低。根据这一特性,结合光照强度和输出的模拟电压 之间的关系,可以得到某一光强

3、度下的对应的模拟电压。将模拟电压通过AD转化器转换为数 字电压,以便于计算机处理。然后再将数字电压转换成光照度。RTCrpUDGiT 1.2.解决问题方法及思路 1.2.1硬件部分 程序设计中用到的硬件是光敏电阻、ADC0809 8255A和七段LED数码管。提出问题: (1)为什么接口使用8255A而不是8279? (2)为什么显示装置使用LED七段数码管而不是LCD? (3)为什么选用光敏电阻? 解决问题: 1.2.1.1接口芯片选用8255A而不是8279是由于8255A在本程序中使用软件控制很容易 实现且不需要用到小键盘,具体如表1 1所示。5P CZVD7HXA 8255A发出的控制

4、字和 dvzfvkwMI1 RESET用来使8255A复 8 位内部和外部数据总线 器件名称 特 点 8255A芯片8255芯片是可编程的并行接口芯片,不需要附加外部电路便可 和大多数并行传输数据的外部设备相连,数据的各位同时传送, 使用十分方便。 8279A芯片8279芯片可以实现对键盘/显示器的自动扫描,以减轻 CPU负担, 具有显示稳定,程序简单,不会出现误动作等。 表1 1 8255A 与8279A性能比较表 121.2 本实验选择的显示设备是七段 LED数码管,没有选择LCD的原因如表12 所示。 与LCD相比,LED在亮度,功耗可视角度和刷新速率等方面更具有优势,LED其最显著的

5、特点是使用寿命长光电转换效能高,绿色环保。 jLBHrnAILg LCD占用空间小,功耗低,低辐射,能降低视觉疲劳,但会出现闪烁 LCD现象。 表1 2 LCD与LED性能比较表 1.2.1.3本实验选用的是光敏电阻,因为光敏电阻上的光照强度与输出电压成线 性关系,得到的模拟电压也成线性关系。 1.2.2 软件部分 根据硬件需求采用8255A芯片,采用汇编语言,8255A芯片的PA PB PC三口的工作方 式为方式0,将8255的PA口接发光二极管,PB口作为段选码,PC口作位选码,用软件编程 实现从C 口读入信息,通过8个LED数码管循环显示光照强度。XHAQX74J0X 2. 硬件设计 2

6、.1. 选择芯片 8255A 2.1.1芯片8255A在本设计中的作用 芯片8255A通过数据口从CPL接受转换得到的光照度数据,通过 B口输出作为位选,实现 LED数码管的动态显示,通过 A 口将数值输出到LED数码管。LDAYtRyKfE 2.1.2芯片8255A的功能分析 2.1.2.18255 引脚图 8255是可编程并行接口,内部有3个相互独立的8位数据端口,即A 口、B 口和C 口。三 个端口都可以作为输入端口或输出端口。A 口有三种工作方式:即方式0、方式1和方式2,而 B 口只能工作在方式0或方式1下,而C 口通常作为联络信号使用。8255的工作只有当片选 CS有效时才能进行,

7、而控制逻辑端口实现对其他端口的控制。Zzz6ZB2Ltk 2.1.2.2CPU 接口 (数据总线缓冲器和读 / 写控制逻辑 ) 数据总线缓冲器 : 这是一个8位双向三态缓冲器,三态是由读/写控制逻辑控制的。这个 缓冲器是 8255A与 CPU数据总线的接口。所有数据的输入/输出,以及CPU用输出指令向 用输入指令从8255A读入的外设状态信息,都是通过这个缓冲器传递的。 读/写控制逻辑: 它与CPU勺6根控制线相连,控制8255A内部的各种操作。控制线 位。和地址线A1及A0用于芯片选择和通道寻址。控制线和用来决定 上信息传送的方向,即控制把 CPIU勺控制命令或输出的数据送到相应的通道,或把

8、状态信息 或输入数据送到CPU 8255A的读/写控制逻辑的作用,是从CPU勺地址和控制总线上接受输入 的信号,转变成各种命令送到 A组或B组控制电路进行相应的操作。rqyn14ZNXI 2.1.2.38255A 的引脚信号 与外设相连的 P A7 PAO:A口数据信号线。 P B7 PBO:B 口数据信号线。 P C7 PCO:m数据信号线。 与CPU相连的 RESET复位信号。当此信号来时,所有寄存器都被清除。同时三个数据端口被自动置为 输入端口。 D7D0它们是8255A的数据线和系统总线相连。 CS:片选信号。在系统中,一般根据全部接口芯片来分配若于低位地址(比如A5、A4 A3) 组

9、成各种芯片选择码,当这几位地址组成某一个低电平,于8255A被选中。只有当有效时, 读信号写才对 8255进行读写。 EmxvxOtOco RD读信号。当此信号有效时,CPU可从8255A中读取数据。 WR写信号。当此信号有效时,CPU可向8255A中写入数据。 A1、A0:端口选择信号。8255A内部有3个数据端口和1个控制端口,共4个端口。规定 当A1、A0:为00时,选中A端口 ;为01时,选中B端口 ;为10时,选中C端口 ;为11时,选 中控制口。 SixE2yXPq5 8255 的基本操作如下表 2-1 所示。 表 21 8255 的基本操作 2.1.2.4芯片8255A的技术参数

10、,如下表22所示: 参数说明 : 输入最低电压 :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。6ewMyirQFL 表2 3 8255A的工作方式控制字 方式 0的工作特点 这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作 为输入或输出。其功能为 : ?两

11、个8位通道:通道A B。两个四位通道:通道C高4位和低四位;?任何一个通道可以 作输入/输出; 示。 ?输出是锁存的 ; ?输入是不锁存的 ; ?在方式 0 时各个通道的输入 / 输出可有 2.2选择LED七段数码管 2.2.1LED 七段数码管在实验中的作用 LED发光二级管(Light-Emitting Diode) kavU42VRUs 物理构造:LED发光二级管,采用砷化傢、 16种不同的组合。 ,在本设计中采用 7 段发光二级管作为终端显 镓铝砷和磷化镓等材料制成,其内部结构为一 个PN结,具有单向导电性。y6v3ALoS89 2.2.2LED 七段数码管的功能分析 工作原理:当在发

12、光二极管PN结上加正向电压时,PN结势垒降低,载流子的扩散运动大 于漂移运动,致使P区的空穴注入到N区,N区的电子注入到P区,这样相互注入的空穴与电 子相遇后会产生复合,复合时产生的能量大部分以光的形式出现。 M2ub6vSTnP 数字成像:七段LED显示器可以控制在哪几个数位上,哪几个发光二极管亮,从而显示数 字。如果发光二极管共阳极,则输入为 0时亮,为 1 时不亮,反之如果发光共阴极,则输入 1 时亮, 0 时不亮。 0YujCfmUCw 在本实验中选用了共阴极。所谓共阴极是指将各LED二极管的阴极连接在一起(一般相连 接地)各阳极接到相应器件引脚上。发光二极管是一种外加电压超过额定电压

13、时发生击穿,并 因此能产生可发光的器件,数码显示器通常由多个发光二极管来组成七段或八段笔画显示 器,当段组合发光时,便会显示某一个数码管或字符,七段代码的各位用作ag和DP的输 入。CO丽8个发光二极管的公共引线,实验中 COMI线接内部8个二极管的阴极, abcdefg(dp) 则为 8个发光二极管的阳极的引线。 eUts8ZQVRd 实验中LED管采用动态显示:3个LED显示器按固定的时间间隔显示一段时间(1.25ms), 利用人眼视觉滞后,感觉3个LED显示器同时点亮且无闪烁感。2.2.3 LED七段数码管的技 术参数 sQsAEJkW5T 表 24 LED 显示的技术参数 主要参数 :

14、 此时的驱动电流为 25mA。 发光二极管的压降一般为1.52.0 V,其工作电流一般取1020mA为宜。发光二极管的 发光颜色有 : 红色光、黄色光、绿色光、红外光等。 发光二极管应用电路有四种,即直流驱 动电路、交流驱动电路、脉冲驱动电路、变色发光驱动电路。 GMsIasNXkA 由于8255A的最大驱动电流为4.0mA,而LED的工作电流一般为1020mA所以需要加一 个驱动器 74LS244。 TIrRGchYzg 2.2.4LED 七段显示器的功能分析 表 2 5 LED 真值表 LED数字显示原理: 如下图26为LED数码管及其框图 图 26 LED 显示器 光敏电阻 上面两图分别

15、为外形图和原理图,当七段数码管点亮其中几段可显示数字和简单的西文 字符,将七段数码管负极连接到一起称为公共端,而发光二极管的正极则分别由引脚引出, 便于控制哪个发光二极管点亮,在右图中如果在COM端接低电平,而在其他引出线上施加不 同的电平,则对高电平的发光二极管就会点亮,由于将 8 个发光二极管负极全部连接在一 起,称为共阴极数码管,还有将 8 个发光二极管的正极连接在一起,故称之为共阳极数码 管。 7EqZcWLZNX 本次实验用的数码管需动态扫描显示,其接口电路将所有数码管的笔画控制段与ah同 名端连在一起,接到一个并行端口,每个公共极COM端由独立的I/O线控制,CPU向字模输出 口送

16、出字形码时,所有数码管接收到相同的字形码,究竟哪个数码管显示,取决于每个 LED 的COM端,所谓动态扫描,就是显示一位信息时,其他位不能显示,必须采用分时方法,轮 流控制 COM。lzq7IGfO2E 2.3 选择光敏电阻 2.3.1光敏电阻在本设计中的作用 光敏电阻在实验中是用来提供模拟电压的,通过光照度的变化改变电阻值,提供变化的 模拟电压。 2.3.2光敏电阻的功能分析 物理构造 : 光敏电阻又称光导管,它几乎都是用半导体材料制成的光电器件。 没有极性,纯粹是一个电阻器件,使用时既可加直流电压,也可以加交流电压。无光照时, 光敏电阻值 (暗电阻)很大,电路中电流 (暗电流)很小。zvp

17、geqJ1hk 当光敏电阻受到一定波长范围的光照时,它的阻值 (亮电阻)急剧减少,电路中电流迅速 增大。 一般希望暗电阻越大越好,亮电阻越小越好,此时光敏电阻的灵敏度高。实际光敏电 阻的暗电阻值一般在兆欧级,亮电阻在几千欧以下。 光敏电阻的原理结构 : 它是涂于玻璃底 板上的一薄层半导体物质,半导体的两端装有金属电极,金属电极与引出线端相连接,光敏 电阻就通过引出线端接入电路。 为了防止周围介质的影响,在半导体光敏层上覆盖了一层漆 膜,漆膜的成分应使它在光敏层最敏感的波长范围内透射率最大。 NrpoJac3v1 工作原理 : 光敏电阻接有一个稳定电压,当光照度变化时,光敏电阻的阻值会改变,通过

18、 比例放大器输出电阻的压降。 1nowfTG4KI 2.3.3光敏电阻的技术参数 亮阻约为2K欧,暗阻大于1M欧,外观直径5毫米,最咼承受电压直流120V,最大功耗 lOOmW/t升响应时间20ms,下降响应时间30ms。实验中光敏电阻电路输出的电压范围为 0-5V。 fjnFLDa5Zo 光敏电阻电路图如下 : 2.4选择芯片 ADC0809 2.4.1ADC0809 在本设计中的作用 ADC0809接收光敏电阻电路传送的模拟电压,将模拟电压转换为数字电压,传送给CPUS 行数据转换,CPU将数字电压通过电压与光照度的比例关系转换为光照度。tfnNhnE6e5 2.4.2ADC0809 的功

19、能分析 。ORjBnOwcEd 物理构造:ADC0809是 CMO单片型逐次逼近式A,D转换器,内部结构由8路模拟开关、地 址锁存与译码器、比较器、8位开关树型D,A转换器、逐次逼近数码寄存器、时序及控制逻辑 和三态输出锁存器组成。 HbmVN777sL 工作原理:首先输入3位地址,并使ALE=1将地址存入地址锁存器中。此 地址经译码选通8路模拟输入之一到比较器。START!升沿将逐次逼近寄存器复位。下降 沿启动A/D转换,之后EOC俞出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为 高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入 高电平 时,

20、输出三态门打开,转换结果的数字量输出到数据总线上。 V7l4jRB8Hs 2.4.3ADC0809 的技术参数 ADC0809是 8路8位A/D转换器,即分辨率8位。具有转换起停控制端。转换时间为 100卩s单个,5V电源供电 模拟输入电压范围0,,5V,不需零点和满刻度校准。工作温度范 围为- 40, , 85摄氏度低功耗,约 15mW。 2.4.4 ADC0809 主要信号引脚的功能说明。见图 2 7。 83lcPA59W9 图 27 引脚图 ADC0809芯片有28条引脚,采用双列直插式封装,如图所示。下面说明各引脚功 能。 IN7,IN0 8 路模拟量输入端。 D7,D0 8 位数字量

21、输出端。 ADDA、ADDB、ADDC 3位地址输入线,用于选通 8 路模拟输入中的一路 ALE地址锁存允许信号,输入,高电平有效。对应ALE上跳沿,A B C地址状态送 入地址锁存器中。 STAR转换启动信号。A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽) 使其启动。START上升沿时,复位ADC0809;STAR下降沿时启动芯片,开始进行 A/D转换;在 A/D转换期间,START应保持低电平。 mZkklkzaaP EOC A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一 直为低电平 ) 。 OE数据输出允许信号,输入,高电平有效(OE=O,输出

22、数据线呈高阻;OE=1,输出转 换得到的数据)。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字 量。 AVktR43bpw CLK时钟脉冲输入端。要求时钟频率不高于 640KHZ通常使用频率为500KHz的时钟 信号。 REF(+)、REF(- )基准电压。参考电源、参考电压用来与输入的模拟信号进行比较, 作为逐次逼近的基准。其典型值为 Vref(+)=+5V, Vref(-)=-5V Vcc电源,单一,5V。 GND接地。 2.5硬件总逻辑图及其说明 硬件总逻辑图如下图 28所示: 图 28 硬件总逻辑图 芯片8255A的数据线D0,D7与主机低八位数据线相连,8255

23、A的RD线、WF线、A0 A1、RESE分别与主机的RD线、WR线 A0、A1、RESETS连接。8255A的A 口控制LED的段 选, B 口控制位选 . 2MiJTy0dTT 光敏电路如下 : 在单片机上的接口连接如下 : 3.控制程序设计 3.1控制程序设计思路说明 初始化8255芯片,设置工作方式控制字为 89(100010001B),即A B 口为输出,分别控 制LED的段选、位选,C 口输入。下图为控制字:gliSpiue7A 以采样五十次为一周期,求得五十次采样的总值。然后除以50,得到采样 50次的平 均值,存入LastAD。在每一次采样过程中,都在 PC机和LED上输出上一周

24、期采样转化得到的 光照强度 ( 单位 : 勒克斯 ) 。具体转化过程为 : uEh0U1Yfmh 采样得到的模拟值经过AD转化后为电压值,电压范围为0-5V。而考虑到实际生活中,一 般照明为 200lux ,重点照明为 300lux ,所以实验中可显示的光照强度为 0-500lux 。于是参考 两者之间的线性关系,定下入下图的关系 : IAg9qLsgBX 图 29 电压-光照度函数 3.2程序流程图 开始 初始化 8255 CX=50 采样,计算采样总值 百位数/ 整数部分入 BUF/BUFFER+,4 十位数/第一位小数 入 BUF+1/BUFFER+6个位数/第二位小数 入BUF+2/B

25、UFFER+7调用DOS勺9号功能在PC机上 输出电压。 WwghWvVhPE 采样平均值送 8255, 8255的PA口段选、PB 口位选。 在LED上输出一位数据, 位选数据DATA爼移一位。 重复三次为一个周期。 然后还原DATA2=0FEH 延时, i - N i=0? Y 继续下一次采样 计算采样平均值 程序强制关闭 结束 图 3-1 程序流程图 3.3控制程序 初始化 ooeyYZTjj1 100 XOR AL,AL JMP START6 ADDR_0809 采样五十次LastAD DB 0 ; 上一次AD转换 .DATA BkeGuInkxI IO_Bit8_BaseAddres

26、s DW ? START2: CALL AL,0 ; 转化为可显示的 10 进制数 DX,ADDR_0809 MOV BUFFER + 4,AL DX,AL ; 整数部分 MOV AL,10 .MODEL TINY CALL ModifyAddress ;根据 PCI 提 PCIBAR3 EQU 1CH供的基地址,将 偏移地址转化为实地 asfpsfpi4k ;8 位 I/O 空间基地址 (它就是实验址 仪的基地址 ,也为DMA 厂商 ID 号 INT 21H Device_ID EQU 8376 ; 设备 ID 号 CALL Init8255 ; 8255A .STACK DW 00F0H

27、START1: MOV CX,50 ; MOV BX,0 ; 累计五十次采值 样值 AD0809 BUFFER DB H . V$ XOFAH,AH ;采样值在ALmsgCDBBIOS不支持访问PCI $中,AH清0后,AX即为采样值msg1 DB 找不到 Star PCI9052 板 ADD BX,AX ;BX 为采样总值 卡 $ CALL DISPLAY_PC msg2 DB读8位I/O空间基地址时;在PC机上显示结果PgdO0sRIMo 出错$ CALL DISPLAY_LED msg3DBAD转换结果(前边是16;LED显示上一次采样的结果进制数,后边是十进制数):$ LastAD 3

28、cdXwckm15 COM_ADD DW 00E3控制口偏移 LOOP START2 量 MOV AX,50 h8c52WOngM P A_ADD DW 00E0H ;PA口偏移量 XCHG AX,BX P B_ADD DW 00E1H ;PB 口偏移量 DIV BL ;五十次的平PC_ADD DW 00E2H ;P(口偏移量均值,BL=50,平均值在AL中,余数在 LED_DATA DBA中 v4bdyGious 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,0 CMP AL,LastAD 7h,7Fh,6Fh ;0-9的七段代码 表 JZ START3 SHIFT DB 0FEH

29、 ;用于位 START6: MOV LastAD,AL 选;LastAD 值为 AD转换值 J0bm4qMpJ9 START3: CALL IfExit .CODE JZ START1 START: MOV AX,DATA JMP Exit XVauA9grYP MOV DS,AX NOP AD080 9 PROC NEAR CALL InitPCI MOV SI,CX MOV MOV OUT MOV DX,IO_Bit8_BaseAddress MUL AH MOV CX,100 DIV BL AD08091:IN AL,DX OR AL,0 LOOP AD08091 MOV BUFFER

30、+ 6,AL ;延时,等待AD转换完成;第一位小数 bR9C6TJscw OUT DX,AL CALL DLTIME ; 延时 ROL AL,1 MOV DX,ADDR_0809 MOV AL,10 IN AL,DX MUL AH MOV CX,SI DIV BL RET OR AL,0 AD0809 ENDP MOV BUFFER + 7,AL ; 第二位小数 ToChar PROC NEAR MOV DX,43 ; 转化为可显示的 16 进制数 MOV AH,02H ADD AL,0 INT 10H ; 定位光标 CMP AL,9 LEA DX,BUFFER JBE ToChar1 MOV

31、 AH,09H ADD AL,07H INT 21H ; 显示结果 ToChar1: RET MOV AX,SI ; 相当于 POP ToChar ENDP MOV BX,DI pN9LBDdtrd RET DISPLAY_PC PROC NEAR DISPLAY_PC ENDP MOV SI,AX ;相当于 PUSH MOV DI,BX TO_LED PROC NEAR ;LED MOV AL,LastAD 显示 ;将AD转换值读入 AX中 LEA BX,LED_DATA MOV AH,AL XLAT ; 经代码表转 AND AL,OFH换为七段LED表中的段码,AL=BXAL CALL T

32、oChar MOV DX,PA_ADD MOV BUFFER + 1,AL ;从8255A的PA 口读取数字量,段 MOV AL,AH选 AND AL,OFOH OUT DX,AL ROR AL,4 MOV AL,SHIFT ;七段 LED的 CALL ToChar位选,OFEH选取最低位,位选 MOV BUFFER,AL MOV DX,P B_ADD ;P口位选 MOV AL,AH XOR AH,AH MOV BL,51 ;255/5 (16 进制的 1 = 1/51V) ; 向前选取次低位,位选 DIV BL MOV SHIFT,AL OR AL,O MOV AL,OFFH ; 禁止显示,

33、 全置为灭 , 防止数字串 MOV AH,O6H 位 INT 21H OUT DX,AL MOV AX,SI RET MOV DX,DI TO_LED ENDP RET IfExit ENDP DISPLAY_LED PROC NEAR MOV SI,AX InitPCI PROC NEAR MOV DI,BXMOV AH,00H 4B7a9QFw9h XOR AX,AXMOV AL,03H MOV AL,BUFFER + 7 INT 10H ; SUB AL,30H 屏 CALL TO_LED MOV AH,0B1H ;在LED上显示右起第一位数 MOV AL,01H MOV AL,BUFF

34、ER + 6 INT 1AH SUB AL,30H CMP AH,0 CALL TO_LED JZ InitPCI2 ; 显示第二位数 LEA DX,msg0 MOV AL,BUFFER + 4 InitPCI1: MOV AH,09H SUB AL,30H INT 21H CALL TO_LED JMP Exit ; 显示第三位数 InitPCI2: MOV AH,0B1H MOV SHIFT,0FEH MOV AL,02H ;恢复 SHIFT原值,应用于下一次 MOV CX,Device_ID 输出 MOV DX,Vendor_ID DJ8T7nHuGT MOV AX,SI MOV SI,

35、0 MOV BX,DI INT 1AH RET JNC InitPCI3 DISPLAY_LED ENDP ; 是否存在 Star PCI9052 板卡 QF81D7bvUA LEA DX,msg1 DLTime PROC NEAR JMP InitPCI1 MOV SI,CX InitPCI3: MOV DI,PCIBAR3 MOV CX,1563 MOV AH,0B1H DLT: NOP ; 空操作,用于延时 MOV AL,09H ix6iFA8xoX LOOP DLT INT 1AH ; 循环延时 , 延时 1.25ms ; 读取该卡 PCI9052 基地址 MOV CX,SI JNC

36、InitPCI4 RET LEA DX,msg2 DLTime ENDP JMP InitPCI1 InitPCI4: AND CX,0FFFCH IfExit PROC NEAR MOV IO_Bit8_BaseAddress,CX wt6qbkCyDE MOV SI,AX RET MOV DI,DX InitPCI ENDP MOV DL,0FFH Init8255 PROC NEAR MOV DX,COM_ADD MOV AL,89H ;A、B 口为输出(段选,位选),C 口输入 OUT DX,AL MOV DX,PA_ADD ;LED 全熄灭 MOV AL,0FFH OUT DX,AL

37、 RET Init8255 ENDP ModifyAddress PROC NEAR ADD ADDR_0809,CX ;ADDR_0809=34F0H ADD COM_ADD,CX ADD PA_ADD,CX ADD PB_ADD,CX ADD PC_ADD,CX RET ModifyAddress ENDP Exit: MOV AH,4CH INT 21H END START 4.上机调试过程 4.1硬件调试 (1) 按照预习报告上的硬件总逻辑图接线,注意段选线线与位选择线均不能接反,否则显 示在LED显示器上的是乱码或显示顺序是反的,连线松动常导致LED显示器上显示不出数字, 所以硬件调

38、试时一定要确保连线的紧度。(2)ADC0809中,有多路通道可以进行 A/D转换。因 此实验一开始就需要解决通道选择问题。我将ES-PCI的A0,A1,A2分别与ADC0809勺 ADDA,ADDB,ADDC连,以设定ADC0809的 IN0与模拟电路进行相连,以实现对此模拟电路进行 检测。(BLED七段显示器的段选是8位。本实验还需要位选4位。仅仅靠B 口只能实现段 选。因此,在初始化8255的时候,将C口也设定为输出,实现对 LED显示器的位选。 Kp5zH46zRk 4.2软件调试 实验中的程序经由 0809 的汇编程序添加改编而来。在编写将数字电压转化为光照强度的 程序段时,没有头绪,

39、想不出什么方法。经过和同组的周三平同学的分析和讨论,利用存储 在BUFFER中的数据进行转换。这种方法十分的方便,大大节省了转换部分的时间。 Yl4HdOAA61 4.3联机调试 将下位机与PC机通过两条扁平电缆相连,给下位机上电,运行编写好的汇编程序。七段 数码显示管没有按照预定方式显示。由此,程序的编写过程中出现问题,然后进行单步调 试。在调试的过程中发现显示的数值不是对应相应的电压,然后发现是在PB 口输出位选的时 候,位选的代码出现错误。开始是采用XLAT指令通过查表来实现位选,这使得程序段冗余。 后经同学的指点,改为采用逻辑尺的方式来决定位选,更加方便。 ch4PJx4BlI 4.4调试结果及问题的提出 经过上述的改

温馨提示

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

评论

0/150

提交评论