教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

称重仪毕业设计(11)

来源:网络收集 时间:2026-09-05
导读: 27 基于MSP430的称重系统 附录? 系统电路如图: VccVCCRESETUTP23DUT.XRX0D0TCLSMTTDITD0C1104CON1Vcc135791113JTAG2468101214TDOTDITMSGNDRESETR64.7K64636261605958575655545352515049A?RST/NMIP2.3/SVSINAXVTc0c

27

基于MSP430的称重系统

附录?

系统电路如图:

VccVCCRESETUTP23DUT.XRX0D0TCLSMTTDITD0C1104CON1Vcc135791113JTAG2468101214TDOTDITMSGNDRESETR64.7K64636261605958575655545352515049A?RST/NMIP2.3/SVSINAXVTc0cP2.4/UDVs0sP2.5/URDXDAVssTDI/TCLKCDKITDOT/TTMSP1.2/S31.0P1.3P/S13.1P1.4P/S129S2P2.2AIN0AIN0C2102R4100KCON212344 HEADERVccR51KXT1P2.2S0S1S2S3S410412345678910111213141516DVccA0.0+A0.0-A1.0+A1.0-A2.0+A2.0-XINXOUTVrefP2.2/STE0S0S1S2S3S4MSP430F425P1.5/TTCLK/ACLK/S28P1.6/SIMO0/S27P1.7/SOMIO/S26P2.0/TA2/S25P2.1/UCLK0/S24R33R23R13R03COM3COM2COM1COM0S23S22S2148474645444342414039383736353433R11MCOM3COM2COM1COM0LCD偏压R21MR31MS5S6S7S8S90S1S11S12S13S14S15S16S17S18S19S20MCU17181920212223242526272829303132S5S6S7S8S90S1NCS11+3S12S11S10S15S13S12S11S10S9S8S7S6S5S4S3S2S1COMS30COM2COM1COM01234567890111121314151617181920S9S8S7S6S5S4S3S2S1COM3S0COM2COM1COM0S11S12S13S14S15

+12VLCD_08 17423812AD620620KREFINADC45AGND10K-12VAD705G=200047.8320K

28

基于MSP430的称重系统

附录II

程序代码如下:

#include \#include \int ADC_Result0;

#define Analog_On P2OUT|= BIT2 #define Analog_Off P2OUT&=~BIT2 char DispChannel=0; char BT_Flag=0; char ADC_Flag=0;

int Timer4=0;

/**************************************************************************** * 名 称:ADC_Sample3()

* 功 能:对3个ADC同时采样

****************************************************************************/ void ADC_Sample3()

{ long int ADC_Sum0=0; int i;

SD16CCTL2 |= SD16SC; // 向ADC2发出\开始采样\命令 //由于ADC0/1/2已经被编为一组,三个ADC将同时收到出\开始采样\命令 for(i=0;i<16;i++) //采样4次

{

while(ADC_Flag==0) LPM0; //CPU休眠,等待被采样结束唤醒 ADC_Flag=0;

ADC_Sum0+=ADC_Result0; //ADC0采样结果累加

}

SD16CCTL2 &=~ SD16SC; // 向ADC2发出\停止采样\命令 //由于ADC0/1/2已经被编为一组,三个ADC将同时收到出\停止采样\命令 ADC_Result0=(ADC_Sum0/16 -852) / 10; }

/**************************************************************************** * 名 称:SD16ISR() SD16中断

* 功 能:ADC采样结束产生的中断,读回采样结果,并唤醒CPU。

****************************************************************************/ #pragma vector=SD16_VECTOR

__interrupt void SD16ISR(void) {

ADC_Result0 = SD16MEM0; //读回采样结果 ADC_Flag=1;

__low_power_mode_off_on_exit(); //唤醒CPU }

/****************************************************************************

29

基于MSP430的称重系统

* 名 称:BT_ISR() BasicTimer 中断 * 功 能:1/16秒唤醒CPU一次。

****************************************************************************/ #pragma vector = BASICTIMER_VECTOR

__interrupt void BT_ISR(void) //1/16秒一次中断(由BasicTimer所产生) {

BT_Flag=1;

__low_power_mode_off_on_exit(); //唤醒CPU }

/**************************************************************************** * 名 称:int_main() 初始化程序 * 功 能: 初始化系统各个模块

****************************************************************************/ void ini_main() { int i;

char j;

WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗

FLL_CTL0 |= XCAP18PF; // 设置晶振负载电容18pF for (i = 0; i < 10000; i++); // 略延迟,让震荡稳定 SD16CTL = SD16REFON+SD16VMIDON+SD16SSEL0+SD16DIV_1;

// 开启内部1.2V基准源, 开启缓冲器,ADC时钟选择为SMCLK/2(524KHz)

for (i = 0; i < 500; i++); // 略延迟,让基准电压稳定

SD16CCTL0 |= SD16DF+SD16GRP; // ADC0与ADC1编组,数据格式为有符号 SD16CCTL1 |= SD16DF+SD16GRP; // ADC1与ADC2编组,数据格式为有符号 SD16CCTL2 |= SD16DF+SD16IE; // 打开ADC2中断,数据格式为有符号 //ADC0/1/2已经被编为同一组,对ADC2的操作将同时作用于ADC0与ADC1 SD16INCTL0 |= SD16INCH_0+SD16GAIN_1; // ADC0输入选择为外部输入,1倍放大 SD16INCTL1 |= SD16INCH_0+SD16GAIN_1; // ADC1输入选择为外部输入,1倍放大 SD16INCTL2 |= SD16INCH_0+SD16GAIN_1; // ADC2输入选择为外部输入,1倍放大 BTCTL = BTDIV+BT_fCLK2_DIV8; // 1/16s BT Int

IE2 |= BTIE; // Enable Basic Timer interrupt; char *pLCD = (char *)&LCDM1; // 取LCDM1寄存器(最低位)的地址 for (j = 0; j < 8; j++)

…… 此处隐藏:1346字,全部文档内容请下载后查看。喜欢就下载吧 ……
称重仪毕业设计(11).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/613691.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)