空气流量信号处理系统设计毕业设计(编辑修改稿)内容摘要:
一个电容性电压发生器以便在单5V 电源供电时提供 EIA/TIA232E 电平。 每个接收器将 EIA/TIA232E 电平输入转换为 5V TTL/CMOS 电平。 这些接收器具有 的典型门限值及 的典型迟滞,而且可以接收177。 30V 的输入。 每个驱动器将 TTL/CMOS 输入电平转换为 EIA/TIA232E 电平。 MAX232 内部结构 MAX 内部结构基本可分三个部分: 第一部分是电荷泵电路。 由 6 脚和 4 只电容构成。 功能是产生+12v 和 12v 两个电源,提供给 RS232 串口电平的需要。 第二部分是数据转换通道。 由 1 1 1 14 脚构成两个数据通道。 其中 13 脚( R1IN)、 12 脚( R1OUT)、 11 脚( T1IN)、 14 脚( T1OUT)为第一数据通道。 8 脚( R2IN)、 9 脚( R2OUT)、 10 脚( T2IN)、 7 脚( T2OUT)为第二数据通道。 TTL/CMOS 数据从 T1IN、 T2IN 输入转换成 RS232 数据从 T1OUT、 T2OUT送到电脑 DB9 插头; DB9 插头的 RS232 数据从 R1IN、 R2IN 输入转换成 TTL/CMOS数据后从 R1OUT、 R2OUT 输出。 第三部分是供电。 15 脚 GND、 16 脚 VCC( +5v)。 ( 1) MAX232 主要 特点 单 5V 电源工作 LinBiCMOSTM 工艺技术 两个驱动器及两个接收器 177。 30V 输入电平 低电源电流:典型值是 8mA 符合甚至优于 ANSI 标准 EIA/TIA232E 及 ITU 推荐标准 ESD 保护大于 MILSTD883(方 法 3015)标准的 20xxV ( 2) MAX232 串口连接图 中原工学院 毕业设计(论文)说明书 10 MAX232 获得正负电源的另一种方法 在单片机控制系统中,我们时常要用到数/模( D/A)或者模 /数 (A/D)变换以及其它的模拟接口电路,这里面要经常用到正负电源,例如: 9V,9V。 12V, 电源仅仅作为数字和模拟控制转换接口部件的小功率电源。 在控制板上,我们有的只是 5V 电源,可又有很多方法获得非 5V电源。 ; 变换 ......在这里我介绍一块大家常用的芯片: MAX232. MAX232是 TTLRS232 电平转换的典型芯片,按照芯片的推荐电路,取振荡电容为 uF 的时候,若输入为 5V,输出可以达到 14V 左右,输入为 0V ,输出可以达到 14V,在扇出电流为 20mA 的时候,处处电压可以稳定在 12V 和 ,在功耗不是很大的情况下,可以将 MAX232 的输出信号经稳压块 后作电源使用。 下图 26 为 MX232 双串口的连接图,可以分别接单片机的串行通信口或者实验板的其它串行通信接口: 图 26 MAX232 连接图 中原工学院 毕业设计(论文)说明书 11 3 软件 设计 本次设计中所涉用到的软件有 CodeWarrior 以及 labview。 在设计中运用Codeearrior 来编辑程序并将程序下载至 MC9S12XS128 单片机中,之后用 labview 编辑一个显示界面,使采集到的信号数据在电脑上显示出来。 CodeWarrior 软件简介 CodeWarrior 包括构建平台和应用所必需的所有主要工具 IDE、 编译器 、 调试器 、 编辑器 、 链接器 、 汇编程序 等。 另外, CodeWarrior IDE 支持开发人员插入他们所喜爱的工具,使他们可以自由地以希望的方式工作。 CodeWarrior 开发工作室将尖端的调试技术与健全开发环境的简易性结合在一起,将 C/C++源级别调试和嵌入式应用开发带入新的水平。 开发工作室提供高 度可视且自动化的框架,可以加速甚至是最复杂应用的开发,因此对于各种水平的开发人员来说,创建应用都是简单而便捷的。 它是一个单一的开发环境,在所有所支持的 工作站 和个人电脑之间保持一致。 在每个所支持的平台上,性能及使用均是相同的。 无需担心主机至主机的不兼容。 CodeWarrior 开发工作室包括完成大多数嵌入式开发项目所需的所有工具。 运行 CodeWarrior(CW)集成开发平台,在任务栏的 File 菜单下点击 New,会弹出建立新项目的模板对话框,选择单片机型号,按照提示操作输入文件名,选择存储位置,选择相应的芯片及调试场景,最后选择 C/C++的一些编译和代码生成模式。 项目调试场景 项目调试场景有以下几种: “ Full Chip Simulator”是芯片全功能模拟仿真,既无需任何目标系统的硬件资源,直接在你的的 PC 机上模拟运行单片机的程序,在模拟运行过程中可以观察调试程序的各项控制和运行流程,分析代码运行的时间,观察各种变量,等等。 CW提供了功能强大的模拟 激励功能,可以在模拟运行时模拟一些外部事件的输入,配合程序调试。 中原工学院 毕业设计(论文)说明书 12 “Pamp。 E Multilink/Cyclone Pro”是基于 Pamp。 E 公司的硬件调试工具实现实时在线硬件调试。 实际就是经常说的 BDM 调试。 BDM 调试是基于芯片本身内含的在线调试功能,可实现程序下载,单步 /全速运行,可以设若干个断点,可以观察和修改任意寄存器或 RAM 内存空间。 BDM几乎是开发飞思卡尔 8 位( 9S08 和 RS08 系列)、16 位( 9S12 系列)和 32 位( Coldfire V1 系列)单片机的标准调试模式,运用最为广泛。 “SofTec HCS12”是另外一家 SofTec 公司提供的硬件调试工具,国内使用较少。 CodeWarrior 中项目的基本管理和设定 该图标可以即时改变目标单片机型号和开发调试场景。 可以按照前面针对新项目建立模板的介绍,改变目标单片机的型号,或设定不同的当前目标开发调试场景。 对于调试场景的改变,也可以直接点击当前场景右边的下拉菜单按纽,直接用鼠标点击选择所需的新场景。 如图 31 所示: 该图标 完成项目配置选项设定。 点击该图标会弹出一个对话框,里面所含的内容非常繁杂,这里只解释几个日常使用时最常用的选项配置: 最终目标代码类型设定( Target Setting)。 在这里你可以选择最终编译连接生成的代码直接用于单片机程序运行( Link for XS12),或将各个源代码文件编译连接生图 31 选择开发单片机型号 中原工学院 毕业设计(论文)说明书 13 成一个库文件( Libmaker for XS12)。 C 编译选项设定( Complier for XS12),对话框如图 32,这里你可以完成针对 C编译器所有配置设定。 几个选项按钮解释如下: 选择配置编译时产生的各种信息,其中包括普通一般信息( Information)、告警信息( Warning)、错误信息( Error)和致命信息( Fatal)。 出现一般或告警信息时编译能顺利完成,所以你可以有选择地将某些你不希望太关注的信息屏蔽掉( Disable);但如果有任何错误或致命信息出现,当前源程序的编译将立即终止,你必须按给出的信息提示解决这些错误,然后才能继续编译。 完成编译过程中代码生成的各类选项设定,需要关注的是优化栏“ Optimization”。 你可以按实际需要打开或关闭某些特定的优化选项,但一般通过下面介绍的“ Smart Sliders”做综合的优化设定。 显示编译器当前设定的各类变量的长度和符号特性(针对字符和枚举型变量),无特殊原因一般都不用对这些变量长度做任何修改。 按常规,在满足功能要求的前提下,变量长度尽可能短,字符型变量尽量选择无符号型,以便提高代码编译效率和程序运行速度。 图 32 编译选项设定 中原工学院 毕业设计(论文)说明书 14 可以非常方便地实现代码优化时的综合考虑。 你只需用鼠标拉动各项的滑块对其进行优化级别的设定。 连接器选项设定( Linker for XS12),值得一提的 是其中对 prm 文件的选择。 通过项目模板建立的项目其中必含有本项目专用的一个 prm文件。 缺省设置是利用此prm文件进行内存分配和连接定位。 但你也可以通过此对话框选择使用其他 prm文件。 当你的项目用的是纯汇编单一文件且为绝对定位的编程模式,则不能选择任何prm文件,必须设定成 “Absolute, Single File Assembly Project”。 该图标检查项目文件是否被更新。 当你在 CW 环境中编辑项目中的各个文件时,只要文件内容发生变化,项目列表窗内该文件的左侧会出现此小图标,表明此文件已经被更新 ,它们在代码生成过程会被重新编译。 有时你会用其它你熟悉或喜欢的文本编辑器编辑修改项目中各类文件,当编辑完成文件被保存后,在 CW 环境下按一下这个图标,所有被更新的文件在项目栏中都会得到显现。 如果文件左侧没有出现此小图标,表明该文件最近没有被修改过,代码生成时可能不会对它进行重新编译,以节约时间。 在任何时候你都可以用鼠标点击源文件左侧该小图标的位置以显现此图标(如果原本没有显现的话),让编译器在代码生成过程中无条件重新编译此文件。 该图标进行代码生成( make),鼠标点击该图标后进行源程序的编译和目标代码的 连接定位。 如果编译连接成功,最后将生成用于源程序符号调试的 abs 文件、用于芯片烧写的 s19 文件、所有变量和函数模块在内存中的映射 map 文件。 另外通过 CW 菜单“ Project→Make ”或键盘快捷键 F7 也可以实现相同功能。 该图标用于打开并进入代码调试窗口。 鼠标点击该图标后,如果你的项目文件中有最新更新, CW 会自动调用 make 功能进行编译和连接。 然后将利用最新生成的 abs 文件,激活一个独立的代码调试窗口,进行源程序级的代码调试。 CW菜单 “Project→Debug” 或键盘快捷键 “F5”同效。 因为关系到以后调试程序的方便,在这里还要特别提到编译过程中调试信息的打开和关闭控制。 请注意图 33 所示的黑点,该黑点表明编译此文件时将产生调试信息,如果没有此黑点,生成的 abs 文件中将没有对应的源程序调试信息,你就无法在调试窗口中进行源代码级调试,只能进行汇编代码级调试。 你可以用鼠标点击此黑点位置打开或关闭调试信息。 系统流程 中原工学院 毕业设计(论文)说明书 15 程序开始 单片机初始化 主处理程序 结束 图 33 调试窗口 图 34 系统总运行流程图 中原工学院 毕业设计(论文)说明书 16 在系统开始执行之前,应先进行单片机的初始化,对各个模块及各寄存器进行设定。 初始化过程结束之后就要进行主程序的处理。 系统总运行流程如图 34 所示: 单片机程序初始化是在单片机程序运行之前,对所用到的模块根据所需要的功能进行设定单片机各个模块的初始值。 初始化的目的就是把所有用到的标志位、变量回到你的初始值,以及引脚的分配,配置寄存器写入需要的值。 例如:设置单片机的波特率。 单片机初始化包括:初始化锁相环、 A/D 初始化、初始化 SCI、。 其流程图如图35: A/D转换模块 设计 在计算机过程控制和数据采集等系统中,经常要对一些过程参数进行测量和控制,这些参数往往是连续变化的物理量,如温度、压力、流量和速度等。 这里所指的连续变化即随时间连续可变的,通常称这些物理量,然而计算机本身所能识别和处理的都是数字量。 这些模拟量在进入计算机之前必须转换成二进制数码表示的数字信号,能够把模拟量变成数字量的器件称为模 /数( A/D)转换器。 本次使用的单片机为 Freescale 公司的 MC9S12XS128 的 122 脚单片机。 本次使用的是 A/D 转换模块中的信息采集和转换功能。 系统初始化开始 初始化锁相环 初始化 A/D 初始化 SCI 结束 图 35 初始化流程图 中原工学院 毕业设计(论文)说明书 17 ( 1) ATD 模块结构组成和特点 MC9S12XS128 内置的 ATD 模块如图 36 所示。 如图 36 可知, ATD 模块由一个总线时钟预分频器、逐次逼近寄存器和 D/A 转换器、采样保持器、比较器和 16 通道多路开关等部分组成。 ATD 模块共有 20 个外部引脚,其中有 4 个电源相关引脚和 16 路模拟量输入引脚, VRH、 VRL 两个引脚为 A/D 转换提供工作电源和电源地。 AN15AN0 是模拟量输入通道 150,也可配置数字 I/O 口使用。 另 外,还能够配置 A/D 外部触发功能。 ( 2) A/D 模块初始化设计 本次设计中对 A/D 模块的初始化设计是根据需要其功能来设定的。 ATD0CTL10 设定为。空气流量信号处理系统设计毕业设计(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。