微机数据采集系统设计

时间:2012-06-17 08:29:13
【文件属性】:

文件名称:微机数据采集系统设计

文件大小:306KB

文件格式:DOC

更新时间:2012-06-17 08:29:13

微机原理与接口技术,课程设计,详细完整版

第一章 需求分析 1 1. 本课程设计题目 1 2. 本课程设计要求及任务 1 3. 课程设计思想 1 4. 软硬件开发环境 2 5. 开发工具 2 第二章 概要设计 3 1. 分析 3 2. 设计 4 第三章 详细设计 5 1. 原理图及PCB图 5 2. 程序流程图 7 3. 软件设计程序 8 4. 设计计算结果 12 第四章 调试与操作说明 12 第五章 课程设计总结与体会 12 第六章 致谢 14 第七章 参考文献 14 第一章 需求分析 1. 本课程设计题目 微机数据采集系统设计 2. 本课程设计要求及任务 要求: 单通道采集数据并显示; 多通道循环采集数据并显示。 任务: 进行微机数据采集系统电路硬件设计,画出电路原理图PCB图或元器件布线图;安装或焊接元器件;进行数据采集系统控制程序设计(采用ASM或CPP语言);系统联调,提交一个满足上述二种要求之一的微机数据采集系统设计。 3. 课程设计思想 首先,根据实验要求,设计A/D数据采集电路,然后,按照电路原理,选用一些元器件,在面包板上分别搭建电路模块。由于实验中要用到MFID多功能微机实验平台板上的8255A作接口控制信号,所以要用两头带插针的软导线,通过26芯电缆的插孔将8255A的输出信号接入面包板,这样整个的组成了A/D数据采集系统的硬件。 然后,编写A/D数据采集系统的控制程序,并进行调试。 最后,加入软件控制程序,对接口进行驱动,组成了A/D数据采集系统。 A/D数据采集模块、平台板、微机组成的数据采集系统框图 如图3.1所示。 4. 软硬件开发环境 MF软件采用系统集成技术,把实验程序的开发工具,故障诊断程序和外设模块演示程序集成在一个环境中,构成一个用户程序集成开发环境IDE(Integrated Development Environment)。用户程序的编辑、编译、连接、运行和修改的全过程都在一个集成的环境中完成,大大提高了编程的效率。这个环境目前已有4个版本,每个版本提供了内容丰富的汇编语言和C/C++语言开发软件包,并以全屏幕窗口环境的形式供用户使用。 5. 开发工具 实验程序的开发工具包括编辑器、编译系统、连接程序和调试程序。 1:编辑器采用全屏幕多窗口编辑器,复制,粘贴,裁减十分方便。: 2:编译系统 MF软件包括了C/C++语言和汇编语言两个编译系统,用户可根据自己所熟悉的语言,任选一个来编写程序,并在集成环境中进行程序的编译(汇编)、连接、运行与调试。 3:连接程序 采用TLINK。 4:调试程序 采用TDEBUGGER全屏幕调试程序,直观全面,使用方便。 以上应用程序(实验程序)开发工具,集成在集成开发环境(IDE)中,用户只需在集成开发环境全屏幕窗口中,点击主菜单的相应菜单项,即可随时启用。 第二章 概要设计 1. 分析 要实现上述设计要求,至少需要考虑:被控对象ADC0809的特性、接口电路结构形式。 ADC0809的外部特性: ADC的外部引脚如图4.7,从图中 可以看出 ,ADC0809有八个模拟 量输入端(IN0-IN7),相应设 置3根模拟量通道地址线(ADDA -ADDC),用以编码来选择8个 模拟量输入通道。并且还设置1根地址锁存允许信号ALE,高电平有效。当ALE变高,锁存由ADDa-ADDc编码所选中的通道号,将该通道的模拟量接入A/D转换器。 ADC0809的分辨率为8位,有8根数字量输出线(D0-D7),带有三态输出锁存器。并设置了1根输出允许信号OE,高电平有效。当读数据时,要使OE置高,打开三态输出锁存器,把转换的数字量送到数据线上。 ADC0809的转换启动信号是START,高电平有效。转换结束信号EOC,转换过程中为低电平,转换完毕变为高电平,可利用EOC的上升沿申请中断,或作查询之用。 2. 设计 1.A/D数据采集模块电路 本外设模块采用8855A作为接口电路,其中,PA0-PA7接数据线,其低三位与通道地址线ADDA-ADDC相连,即将通道号写入A口。另外,转换后的数据从A口读入CPU。PC0连接START和ALE信号,高电平有效,表示启动转换。PC1连接输出允许信号OE。当查询方式时,PC4连接EOC信号,转换过程中,PC4为0,当转换完毕时,PC4为1。 2.设计方法及其原理: 通过ADC0809数模转换器将由电位器转动所产生的模拟信号转换为数字信号,然后通过8255A并行接口送入内存并显示在窗口中。 第三章 详细设计 1. 原理图及PCB图 原理图如下: PCB图如下: 2. 程序流程图 3. 软件设计程序


网友评论

  • 虽然不是基于8086的,但是可以借鉴下
  • 不是基于8086的,对我没用啊!