77范文网 - 专业文章范例文档资料分享平台

微机原理课程设计报告--数据采集系统三(中断法)

来源:网络收集 时间:2019-03-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

课程设计报告纸

微机原理课程设计

课设题目:数据采集系统三(中断法) 实验者姓名: 实验者学号: 学院:

- 1 -

课程设计报告纸

数据采集系统三(中断法)

一、实验目的

进一步掌握微机原理知识,了解微机在实时采集过程中的应用,学习、掌握编程和程序调试方法。

二、实验内容

1、用中断法,将ADC 0809通道0外接0 ~ 5V电压,转换成数字量后,在七段LED数码管上,以小数点后两位(几十毫伏)的精度,显示其模拟电压的十进值;0809通道0的数字量以线性控制方式送DAC0832输出,当通道0的电压为5V时,0832的OUT为0V, 当通道0的电压为0时,0832的OUT为2.5V;此模拟电压再送到ADC 0809通道1,转换后的数字量在CRT上以十六进制显示。 2、ADC 0809 的CLK 脉冲,由定时器8254的OUT0提供;ADC 0809的EOC信号,用作8259中断请求信号。

3、要有较好的人机对话界面;控制程序的运行。

三、总体设计

1 、ADC 0809的IN0采集电位器0 — 5V电压,IN1采集0832输出的模拟量。 2 、DAC 0832将ADC 0809的IN0数字量后重新转换成模拟量输出。 3、8259用于检测ADC 0809转换是否结束和向CPU发送INTR信号 4、 8255为七段LED数码管显示提供显示驱动信息。 5、七段LED数码管显示ADC 0809的IN0的值。 6、8254提供ADC 0809的采样时钟脉冲。

7、有良好的人—机对话界面。系统运行时,显示主菜单,开始数据采集, 在数据采集时, 主键盘有键按下, 退出返回DOD系统。

四、硬件设计

因采用了PC机和微机实验箱, 硬件电路设计相对比较简单, 主要利用微机实验箱

上的8255并行口、ADC 0809、DAC 0832、七段LED数码管单元、8254定时/计数器、74LS574输出接口、电位器等单元电路, 就构成了数据采集系统, 硬件电原理框图4-3-1所示。

- 2 -

12 3课程设计报告纸 4XD0-XD7/Y2DXIOWXD0-XD7XIOWXIORXA2XA3/Y3XD0-XD7XIOWXIORC/Y0XD0-XD7XIOWXIORINTR/Y7XD0-XD7XIOWXIORXA2XA3/Y1XA5XA6XA7D0-D7CSWRD0-D7WRRDA0A1CSD0-D7WRRDCSD0-D7WRRDINTRCSD0-D7WRRDA0A1CSABCRfe083208324Iout12Iout23A1LM32465+5V1.8432MHZ4B7LM32411GATE011OUT10K+5V8254CLK0OUT0CLKABCIN0IN1EOCIR00809XA2XA3XA48259A0A2PA0-PA5L1-L68255PB0-PB7A,B-G,Dp数码管键盘单元B74138/G/Y0/Y1/Y2/Y3/Y4/Y5/Y6/Y7 A 12TitleSizeBDate:File:NumberRevision 8-Jan-2011 Sheet of - 3 - D:\\protel 99se\\Library\\Sch\\sy.ddbDrawn By:3 4

课程设计报告纸

五、软件设计

本设计通过软件编程,实现模/数转换器0809分别对IN0 0-5V直流电压的采样,和

经0832线性控制后输出电压的IN1采样,IN0的值转换成十进制后,在七段数码管上显示; IN1的值在显示器上显示。CPU 根据IN0的值,使八位发光二极管根据题目的要求,指示相应的范围。 1、设计思想

数据采集系统分成四个功能模块,分别是主程序模块、量纲转换模块、数码管显示模块、中断服务子程序模块。 (1)主程序模块

根据题目要求,采用中断方式实现数据采集,因此可把读取IN0的值并保存,和此数字量经线性控制后送给0832输出, 作为0809 IN1的模拟电压和IN1的启动、读取以及IN0的BCD码转换, 放在中断服务子程序模块中完成。所以,在主程序模块上主要实现启动0809 IN0、显示模块的调用、和中断结束部分程序。 (2) 键盘扫描模块

设置键盘扫描模块,采用行列反转发,先PC4-PC7输出低电平,然后读入PC0-PC3.再让PC0-PC3输出低电平,读入PC4-PC7.合并扫描值,获得按键值。 (3) 量纲转换模块

量纲转换模块在中断服务程序内完成,只要将IN0的数字量分别除以51, 商存入显示IN0的个位存储单元; 余数乘以十,再除以51, 商存入十分位存储单元; 余数再乘以十,除以51, 若余数大于25,则商加1, 小于25则舍去, 这样就达到四舍五入的精度, 再把商存入百分位存储单元; 以供七段数码管显示时调用,BCD码转换模块可参考图10所示的流程图。

(4) 数码管显示模块

数码管显示模块比较简单,自编程序可参考实验指导书图1-6所示的流程图,也可参考实验8255并行口中的显示模块,应注意的是在显示个位时, 要加上小数点的显示,这可以在查表获取个位段码后,再加上80H来实现,注意每一位显示后要适当延迟时间。 (5) 中断服务子程序模块

考虑到0832的输出是0809 IN1的输入,因此,为防止在执行中断服务子程序时,二次进入中断服务子程序, 故在进入中断服务子程序后,应关闭中断,而在退出中断前开中断,以便下次中断进入。中断服务子程序模块主要完成对IN0数据的读取和保存,对IN1的启动和读取,对IN0数据的BCD转换等任务。

1、 程序流程图

数据采集三主程序流程图如图4-3-2所示; 中断服务子程序如图4-3-3所示。数码管显示子程序流程图如图3-4-7所示,键盘扫描流程图如图 4-3-4所示。

- 4 -

课程设计报告纸

初 始 化 显示提示信息 关中断 保存原中断向量表内容 设置新的中断向量表 保存原中断屏蔽寄存器值 允许IRQ2中断 8254初始化 开中断 启动0809 IN0 FLAG=0FFH IN0值量纲转换后送显存 调用数码管显示子程序 将IN1的值进行ASCII码转换 显示器显示IN1的值 N 有键按下吗? Y 恢复原中断屏蔽寄存器值 恢复原中断向量表内容 结 束

图4-3-2 数据采集三主程序流程图

- 5 -

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库微机原理课程设计报告--数据采集系统三(中断法)在线全文阅读。

微机原理课程设计报告--数据采集系统三(中断法).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/546172.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: