基于msp430单片机的数据采集系统设计内容摘要:
基于 MSP430 的单片机数据采集系统设计 10 图 38模拟量采集 由 图 37 所示, 第 1路信号采集了数字量的温度;第 2路信号采集了粉尘的浓度;第 3路信号采集了空气湿度;第 4 路采集了空气的流量;第 5路完成了数字量的温度采集;第 6 路完成了对空气粉尘浓度的采集;第 7路完成了对空气湿度的采集;第 8路完成了对空气流量的采集。 由图 38 所示 ,采集电路通过一个电阻将电流信号转换成电压信号,为了提高采集的进度,需要采用高精度的电阻,这里采用的是精 度为 1%的电阻。 电路中采用二极管作为 ESD 保护电路,考虑到干扰问题,采用电容进行滤波处理,增加采集电路的抗干扰问题 , 数字量采集电路部分设计与此类似。 串口通信电路部分设计 该系统实现串口模块主要是与上位机进行通信,单片机系统将采集到的数据送到上位机进行处理,从而减轻单片机系统的处理负担。 由于单片机与上位机进行通信时接口电平不同,因此需要进行接口转换,这里采用 SP3220 芯片来完成接口电平的转换。 SP3220 芯片与一般的 RS232 芯片在使用上基本相同。 如图 39所示 为 串口通信 的框图。 图 39串口通信框图 MSP430 单片机 SP3220 PC 基于 MSP430 的单片机数据采集系统设计 11 芯片 选择 SP3220 是一款低功耗的 RS232 驱动芯片,该芯片有以下特性: ( 1) 宽电压供电,供电电压为: — ; ( 2) 上传速率可达 235Kbps; ( 3) 低功耗的电流为 1uA; ( 4) 增强性 ESD 规范。 为了 便于硬件电路的设计, 下面图 310给出该芯片的管脚图 : 图 310 SP3220芯片图 由图 310 可以看出,该芯片具有 16 个管脚,下面是具体的管脚功能。 EN/:接收使能管脚 ; SHDN/:低功耗控制管脚 ; C1+、 C1:电压增倍的充电电容的正极和负极 ; C2+、 C2:倒置充电电容的正极和负极 ; V+、 V:由充电电容产生的 的正极和负极 ; Vcc:电源管脚 ; GND:接地管脚 ; T1OUT:RS232 驱动的输出 ; T1IN:TTL/CMOS 的输入 ; R1OUT:TTL/CMOS 的输出 ; R1IN:RS232 的输入。 根据 系统 需求 选用了 SP3220 芯片的 SHDN/、 T1OUT、 T1IN、 R1OUT 和 R1IN五个 管脚。 基于 MSP430 的单片机数据采集系统设计 12 串口通信 的电路图 图 311串口通信的电路图 由图 311 所示 ,通过一个 上拉电阻 R208 将 SHDN/管脚拉高,使该芯片一直处于工作状态,如果系统需要处于低功耗状态,也可以通过单片机来控制该管脚,工作的时候将该管脚设置为低电平,需要处于低功耗的时候将该管脚设置为高电平,这样很容易实现控制。 在管脚 C1+、 C C2+、 C V+和 V分别放置 的电容实现充电作用,满足相应的充电泵的要求。 管脚 T1OUT、 TIN、 RIOUT 和RIN 分别是 232 转换的输入输出脚,实现单 片机的 TTL电平与上位机的接口电平的转换。 考虑到减小电源的干扰,还需要在芯片的电源输入腿加一个 的电容来实现滤波,以减小输入端受到的干扰。 基于 MSP430 的单片机数据采集系统设计 13 4 基于 MSP430 单片机采集系统软件开发 该系统 采用的开发环境是 IAR Embedded ,Embedded Workbenchfor MSP430 是 IAR Systems 公司为 MSP430 微处理器开发的一个集成开发环境。 IAR Embedded Workbench 介绍 IAR Embedded Workbench 是一种用于开发应用各种不同的目标处理器的灵活的集成环境。 它提供一个方便的窗口界面用于迅速的开发和调试。 Embedded Workbench 支持多种不同的目标处理器,使用项目模式组织应用程序。 它有如下一些特点。 ( 1)通用性 a) 可以在 Windows 环境下运行; b) 分层的项目( Project)表示; c) 直观的用户界面; d) 工具与编辑器全集成; e) 全面的超文本帮助。 ( 2) 编辑器 a) 可以同时编辑汇编和 C 语言源文件; b) 编辑汇编和 C 语言程序的句法用文本格式和颜色区别显示; c) 强有力的搜 索和置换命令,而且可以多个文件搜索; d) 从出错列表直接跳转到出错的相关文件的相关语句; e) 可以设置在出错语句前标志; f) 圆括号匹配; g) 自动缩进,可以设置自动缩进的空格; h) 每个窗口的多级取消与恢复。 IAR Embedded Workbench 开发步骤 第一次使用程序编写调试一般需要经过创建工作站、创建并保存工程、创建或加载源文件、保存工作站、设置工作环境(目标芯片、调试方式、仿真器接口类型、工程编译连接和调试七个步骤。 第一步:创建新工作站 打开 IAR Embedded Workbench。 单击: “开始”、“程序”、 IAR Systems、 IAR 基于 MSP430 的单片机数据采集系统设计 14 Embedded Workbench For MSP430 V3,自动创建一个新的工作站,出现如 41所示的界面。 图 41第一次进入 Embedded Workbench 界面提示如下: Create new project in current workspace:在新工作站中创建新的工程。 Add existing project to current workspace:添加已经存在的工程到当前的工作站中。 Open existing workspace:打开已经存在的工作站。 Example workspace: 打开示例工作站。 根据您的具体情况选择上述 4个选项之一。 第二步:创建并保存工程 单击选项中 Create new project in new workbench。 出现图 42 界面。 图 42 创建新工程 基于 MSP430 的单片机数据采集系统设计 15 选择工程类型( Empty project、 asm、 C、 C++或 xternally built executable),若选择的工程类型为 Empty project,单击“ OK”按钮,出现图 43界面,选择保存路径,同时输入工 程文件名(如 test),单击保存,一个工程就建立完成了。 图 43 保存新工程 第三步 :创建一个新工程文件 点击菜单 ProjectCreat New Project...如图 44所示 ,弹出对话框如图 45所示 ,因为我们所使用的开发语言是 C,所以选择 C结构下的 main,点击 “OK” 将弹出工程文件保存路劲的对话框如图 46所示,选择要保存的路径,填上新建的工程名称,点击 “ 保存 ” 按钮将弹出如图 47所示的界面 ,在 动生成的 include“ ” Void main(void) { WDTCTL=WDTPW+WDTHOLD。 //Stop watchdog }。 修改后如图 48所示 .然后点击左上角的 save all菜单如图 49所示,弹出保存工作区间 对话框如图 410所示,在对话框中设置好工作区间的保存路劲及工作区间的名称,点击 “ 保存按钮保存退出,返回图 48所示的界面。 基于 MSP430 的单片机数据采集系统设计 16 图 44 新建工程 图 45 选择开发语言创建 main函数 图 46 设置工程保存路径及工程名称 基于 MSP430 的单片机数据采集系统设计 17 图 47 新建的工程面板 图 48 修改后的 图 49 点击 save all保存 基于 MSP430 的单片机数据采集系统设计 18 图 410 保存工作区间 第四步 :编辑代码 ,根据需要往工程中加入自己的 C文件和 H文件件。 第五步 :设置编译选项。 代码编辑好以后,在工作面板左边,右键点击工作区间里的工程名称(我的工程名称为 ),选择 Options...(如图 411所示 ),弹出如图 412所示的 Options选项卡,根据我们的器件设置相关的选项卡,完成后点击 “OK” 退出。 图 411 打开工程的 Options选项卡 基于 MSP430 的单片机数据采集系统设计 19 图 412 设置 Options选项卡 第五步 :编译工程 点击图 413中红圈内的 “Compile” 和 “make” 对工程进行编译。 注 :pile只能编译单个文件, make将会对整个工程文件进行编译和链接最后生成可执行文件(后缀为 .d43) 图 413 编译工程 第六步 :点击图 413中红圈内的 debug按钮,可编译生成的可执行文件下载到430单片机内部 flash中,可以在线使用 JTAG接口单步、多步调试或者设置断点调试,也可以关掉调试窗口 , 复位单片机后让其自动运行。 至此,整个开发流程完毕。 发设计 本系统 采用模块化的设计思 想 , 软件 模块 主要包括模拟量采集模块、数字量采集模块、串口通信模块和主处理模块。 模拟量采集模块主要是单片机通过 A/D通道采集来自传感器的信号,将信号进行处理。 该模块主要涉及到 A/D 转换和定时器 A的操作,主要完成 8 通道模拟数据的采集,并且通过定时器 A来控制采集 基于 MSP430 的单片机数据采集系统设计 20 的频率,另外也设置一个标志来通知主程序已经获得新的数据,通过全局变量来实现与主处理程序实现数据的交互。 这部分程序采用中断服务程序实现,在定时器 A 里先停止 A/D 转换,读取数据后启动 A/D 转换,然后再等待下一次中断的到来。 数字量 采集主要是单片机通过的一般 I/O 口与数字采集电路进行连接,单片机通过一般 I/O 口来简单的读取数字采集量的状态,判断是高电平还是低电平。 数据采集的时间间隔通过定时器 B来完成,整个模块采用的是中断服务程序的结构完成。 串口模块主要是与上位机的通信,从而将采集到的数据送到上位机进行处理。 当接收到有数据时,设置一个标志来通知主程序有数据到来,当主程序有数据要发送的时候,设置一个中断标志进入中断发送数据。 主处理模块首先完成初始化工作,初始化后进入循环处理,在循环过程中主处理获得采集的模拟数据和数字量数据,并将得到的数 据发送到上位机。 下位机也接收来自上位机的的数据。 整个程序基于中断服务结构,为了实现中断程序与主程序之间的数据交互,通过设置一些全局变量和全局的缓冲区来实现,具体的流程图如图 414所示。 基于 MSP430 的单片机数据采集系统设计 21 图 414主流程图 通过流程图可以看出,主处理只负责简单的标志判断和设置标志,然后从指定的缓冲区读取数据或将数据放到相应的缓冲区,其他的处理由中断来处理,因此主程序需要和中断程序进行交互。 软件程序 整个软件设计包括初始设置、中置服务程序和 主 处理程序,下面对各个部分程序分别进行详细介绍。 初始化设置 初始化程序主要包括时钟初始化, A/D 初始化、串口初始化。 下面为 A/D初始化和定时器初始化的程序代码。 void Init_ADC(void) { 基于 MSP430 的单片机数据采集系统设计。基于msp430单片机的数据采集系统设计
相关推荐
图 DS1302 时钟流程图 程序运行时要对 DS1302 进行设置,开始调整时间之前先对 DS1302 系统进行初始化,看当前系统时间是否为 0,是的话给各个点校准当地的有效时间,并对时间进行上传,将有效的时间信息存储在 EPROM 中,然后上 传给信息管理层,收到命令之后对相应的时间点进行修改,然后显示出具体的时间。 具体的流程图如图 所示: 图 时钟流程图 LED 数码管显示流程图 LED
大了硬件冗余。 内部以低功耗、低电压的原则设计,这样的系统不仅功能强、性能可靠、成本低,而且便于进一步微型化和便携化。 ( 3)内部电路可选择工作。 超低功耗单片机可以通过特殊功能寄存器,选择使用不同的功能电路,即依靠软件选择其中不同的外围功能模块,对于不使用的模块使其停止工作,以减少无效功耗。 ( 4)具有高速和低速两套时钟。 系统运行频率越高,电源功耗就会相应增大。 为了更好地降低功耗
图 25 结账信息 ER 图 图 26 交班信息 ER 图 结账信息 宾客类型 会员类型 餐台编号 账单编号 实付 卡号 卡内余额 打折 省去 应付 找零 积 分 结账方式 备注 交班信息表 刷卡营业 操作员 营业金额 账单数量 挂账金额 实收金额 现金营业 消费金额 会员交易量 当班时间 收押金额 退押金 充值金额 销账刷卡 销账现金 xx 机电高等专科学校毕业论文 7 逻辑结构设计 1.
好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。 图22为显示屏电路实现的结构框图。 第三章 系统硬件电路的设计硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路三部分。 1616点阵显示屏的硬件原理图如图36。 单片机采用MSC51或其兼容系列芯片,采用24MHZ或更高频率晶振,以获得较高的刷新频率,时期显示更稳定。
AT89C52 介绍 AT89C52 是一个低电压,高性能 CMOS 8 位 单片机 , 片内含 8k bytes 的可反复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器( RAM),器件采用ATMEL 公司 的高密度、非易失性存储技术生产,兼容标准 MCS51 指令系统,片内置通用 8位中央处理器和 Flash 存储单元, AT89C52 单片机在电子行
单命令、特性参数和启动特性等项内容,是应用系统的主框架。 辽宁科技大学毕业设计(论文) 第 9 页 ( 3)设备窗口是 MCGS 监控系统与外部设备联系的媒介。 专门用来放置不同类型和功能的设备构件,实现对外部设备的操作和控制。 它通过设备构件把外部设备的数据采集进来,送入实时数据库,或把实时数据库中的数据输出到外部设备。 ( 4)用户窗口实现了数 据和流程的 “可视化 ”。