基于MSP430G2231实现的多路数据采集器李萌精品.docx

上传人:b****5 文档编号:2892680 上传时间:2022-11-16 格式:DOCX 页数:17 大小:578.10KB
下载 相关 举报
基于MSP430G2231实现的多路数据采集器李萌精品.docx_第1页
第1页 / 共17页
基于MSP430G2231实现的多路数据采集器李萌精品.docx_第2页
第2页 / 共17页
基于MSP430G2231实现的多路数据采集器李萌精品.docx_第3页
第3页 / 共17页
基于MSP430G2231实现的多路数据采集器李萌精品.docx_第4页
第4页 / 共17页
基于MSP430G2231实现的多路数据采集器李萌精品.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

基于MSP430G2231实现的多路数据采集器李萌精品.docx

《基于MSP430G2231实现的多路数据采集器李萌精品.docx》由会员分享,可在线阅读,更多相关《基于MSP430G2231实现的多路数据采集器李萌精品.docx(17页珍藏版)》请在冰豆网上搜索。

基于MSP430G2231实现的多路数据采集器李萌精品.docx

基于MSP430G2231实现的多路数据采集器李萌精品

MSP430G2系列Launchpad开发板应用实例作品

 

基于MSP430G2231实现的多路数据采集器

李萌

 

美国德州仪器半导体技术上海(有限)公司

西安电子科技大学MSP430单片机联合实验室

2011年12月

目录

第一章作品概述3

第一节作品功能和单片机介绍3

第二节设计方案3

第二章硬件系统设计4

第一节MSP430G2系列Launchpad开发板介绍4

第二节信号调理电路介绍5

第三节显示部分电路7

第四节硬件装配调试说明8

第三章软件系统设计6

第一节程序概述6

第二节子程序介绍9

第三节主程序介绍12

第四节软件注意事项………………………………………………………………………13

第四章总结与思考13

 

第一章作品概述

第一节作品功能和单片机介绍

运用MSP430G2231型单片机对外部输入的8路电流信号进行顺序采样,并通过12864进行显示。

本作品选用MSP430G2231单片机,该单片机超低功耗,具有5种节电模式,1us内便可从待机模式唤醒,并具有一个强大的16位RISCCPU、16位寄存器和常数发生器,有助于最大限度的发挥代码效率。

此单片机还具有丰富的时钟源,包括LF、OSC和VLO。

它可通过串行口系统编程,无需外部编程电压,具有可编程的保密熔丝代码保护,它具有Spy-Bi-Wire仿真逻辑接口。

另外它还有10位IO口、8个比较器通道和16位的Timer_A定时器,带2路捕获和比较寄存器。

此单片机的IO口和Timer_A定时器都具有强大的中断能力。

第二节设计方案

图1.1系统组成结构框图

如图1.1所示:

外部信号通过模拟信号调理电路将外界输入的4~20mA电流转换成0~1.5V的电压信号用ADC10模块进行采集通过单片机的内部运算将电压信号转换成需要显示的电流信号。

模拟信号调理版由采样电阻,低通滤波以及射极跟随器组成。

采样电阻将输入的电流信号转换成电压信号,低通滤波减少存在于输入端的共模干扰,射极跟随器起到减小输出阻抗以及保护后级电路的作用。

模拟信号调理版将输入的4~20mA电流信号转换成0.3~1.5V的电压信号通过单片机进行采集。

采集完成后送往点阵液晶进行显示。

该应用充分发挥了MSP430G2231的IO资源:

14(总管脚数)=2(电源和地)+2(JTAG)+2(串行点阵)+8(ADC输入)。

 

第二章硬件系统设计

第一节MSP430G2系列Launchpad开发板介绍

基于LaunchPad的MSP-EXP430G2低成本实验板是一款适用于TI最新MSP430G2xx系列产品的完整开发解决方案。

其基于USB的集成型仿真器可提供为全系列MSP430G2xx器件开发应用所必需的所有软、硬件。

LaunchPad具有集成的DIP目标插座,可支持多达20个引脚,从而使MSP430ValueLine器件能够简便地插入LaunchPad电路板中。

此外,还可提供板上Flash仿真工具,以直接连接至PC轻松进行编程、调试和评估。

LaunchPad实验板还能够对eZ430-RF2500T目标板、eZ430-Chronos手表模块或eZ430-F2012T/F2013T目标板进行编程。

此外,它还提供了从MSP430G2xx器件到主机PC或相连目标板的9600波特UART串行连接。

其实物图如图2.1所示。

图2.1MSP430G2系列Launchpad开发板实物图

MSP-EXP430G2采用IAREmbeddedWorkbench集成开发环境(IDE)或CodeComposerStudio(CCS)编写、下载和调试应用。

调试器是非侵入式的,这使用户能够借助可用的硬件断点和单步操作全速运行应用,而不耗用任何其他硬件资源。

MSP-EXP430G2LaunchPad特性:

•USB调试与编程接口无需驱动即可安装使用,且具备高达9600波特的UART串行通信速度

•支持所有采用PDIP14或PDIP20封装的MSP430G2xx和MSP430F20xx器件

•分别连接至绿光和红光LED的两个通用数字I/O引脚可提供视觉反馈

•两个按钮可实现用户反馈和芯片复位

•器件引脚可通过插座引出,既可以方便的用于调试,也可用来添加定制的扩展板

•高质量的20引脚DIP插座,可轻松简便地插入目标器件或将其移除

第二节信号调理及电源供电电路介绍

2.1:

电源供电电路

图2.2电源供电原理

如图2.2所示,采用9V适配器供电,1117—5V可产生5V电压。

1117-3.3V可产生3V电压。

5V供液晶使用,3.3V供单片机以及信号调理电路使用。

2.2:

信号调理电路

图2.3信号调理电路原理图

如图2.3所示,4~20mA电流信号经75欧姆采样电阻转换成0.3V~1.5V电压信号,经过低通滤波器后进入运放,通过射极跟随器连接到单片机IO口。

在输入运放之前采用一阶低通滤波来减小高频的共模干扰,射极跟随器起的作用是,保护后级电路和实现阻抗匹配。

2.3系统原理图

图2.4系统原理图

第三节显示部分电路

本作品选用12864液晶显示器进行显示,器件实物如图2.3所示。

图3.112864液晶显示器实物图

12864液晶显示器是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

本作品选用12864液晶显示器的串行接口方式,仅需2根IO口即可完成。

电路如图3.2所示

图3.212864液晶显示器的串行接口电路连接图

第四节硬件装配图

电流采集板

图4.1模拟信号调理板

LaunchPad

图4.2LaunchPad

底板

图4.3底板

整体装配图

图4.4整体装配图

 

装配方法:

1.将模拟信号调理版上焊上插针(共16个连接底板),以及两排排座每排10个(连接LaunchPad),20孔的插座(连接LCD)(如图4.1所示)

2.在Launch上焊上两排插针(如图4.2所示)。

3.在万用版上焊上8个2端子,插上16个插针并用排线接出,并打上固定孔(如图4.3所示)。

4.将信号调理版插在LaunchPad上。

5.将LCD插在信号调理版上

6.将点阵液晶用长铜柱固定在万用版上,接上5~9V的电源适配器即可(如图4.4)

第五节模拟信号调理版PCB图

图5.1PCB板正面

图5.2PCB板反面

 

第三章软件系统设计

第一节程序概述

程序通过AD10模块的采样模式1:

顺序采样方式轮询的对八路电流输入信号进行采样,采样间隔通过主循环中的延时设置。

通过IO口串行控制液晶,每次计算完成后,将结果送串行液晶予以显示。

第二节子程序介绍

AD初始化程序:

入口参数:

出口参数:

voidAD_Init(void)

{

ADC10CTL0|=SREF_1+REFON+ADC10IE;//将AD10基准设置为1.5V开启AD允许中断

ADC10CTL0|=ADC10SHT_3+MSC;//打开AD转换,过采样率设置为64个采样周期

ADC10CTL1|=ADC10SSEL_3+SHS_0;//选择250K的采样时钟,用ADC10SC触发采集

ADC10CTL1|=CONSEQ_1+INCH_7;//连续采样模式,从通道0~7

ADC10CTL0|=ADC10ON;

ADC10AE0|=0xFF;

ADC10CTL0|=ADC10SC+ENC;

}

时钟初始化程序:

入口参数:

出口参数:

voidclk_init(void)

{

BCSCTL1|=CALBC1_1MHZ;

DCOCTL|=CALDCO_1MHZ;//上面两句将内部DCO校准至1MHz

//while(IFG1&OFIFG)

//{

//IFG1&=~OFIFG;

//delay_ms(100);

//}

BCSCTL2|=SELM_0;//MCLK采用1M的内部DCO

BCSCTL2|=DIVS_2;//SMCLK采用250K的时钟

}

IO初始化程序:

入口参数:

出口参数:

voidio_init(void)

{

P2SEL&=~(BIT6+BIT7);//2231将其初始化为晶振输入端,所以要关掉第二功能选择

P2DIR|=BIT6+BIT7;//将其置为输出方向

//P1OUT=0;

P1SEL=0xFF;//将IO选择为AD输入

//P1SEL|=BIT6;

P1DIR=0;

}

液晶初始化:

入口参数:

出口参数:

voidlcd_init(void)

{

wr_lcd(comm,0x30);//30---基本指令动作

wr_lcd(comm,0x01);//清屏,地址指针指向00H

delay_ms(100);

wr_lcd(comm,0x06);//光标的移动方向

wr_lcd(comm,0x0c);//开显示,关游标

}

串行液晶底层驱动:

入口参数:

func:

功能数据data:

数据

出口参数:

voidwr_lcd(uchrfunc,uchrdata)

{

uchri,i1,i3,i2,CF;

SID_H;

for(i=0;i<5;i++)

{

SCK_H;

SCK_L;

}//5起始位

SID_L;

SCK_H;

SCK_L;//写使能

if(func==1)SID_H;

elseSID_L;

SCK_H;

SCK_L;//功能位

SID_L;

SCK_H;

SCK_L;//写0

for(i3=0;i3<2;i3++)

{

for(i1=0;i1<4;i1++)

{

CF=data&0x80;

if(CF==0x80)SID_H;

elseSID_L;

SCK_H;

SCK_L;

data=data<<1;

}

for(i2=0;i2<4;i2++)

{

SID_L;

SCK_H;

SCK_L;

}

}

}

液晶显示

入口参数:

出口参数:

voidchn_disp1(uchrconst*chn)

{

uchri,j;

//wr_lcd(comm,0x30);

wr_lcd(comm,0x80);

for(j=0;j<4;j++)

{

for(i=0;i<16;i++)

wr_lcd(dat,chn[j*16+i]);

}

}

voidWrite_Num(intaddr,intval1,intval2)

{

wr_lcd(comm,addr);

if(val1!

=0x2E)

val1=val1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 调查报告

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1