关于单片机方面论文范文例文,与万方数据库文查询资源相关论文查重免费
本论文是一篇关于单片机方面论文查重免费,关于万方数据库文查询资源相关函授毕业论文范文。免费优秀的关于单片机及可靠性及软件设计方面论文范文资料,适合单片机论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。
通道和定义该通道的参考电平和保存结果的存储器.第三步:启动转换,用ENC启动,等待转换,转换需要13个时钟周期,其中12个时钟周期用于产生转换结果,1个时钟周期用于存储转换结果.
第四步:获取转换结果,可通过查询方式或中断方式,采用查询方式时必须在获取数据后将ENC等于O以及中断标志复位.如将结果写入选定的存储ADC12MEMx时,中断标志会自动复位.
第五步:重复执行第三步,进行下一个转换.
需要注意的是,当选用ADC12SC(软件转换)控制转换时,每次转换还要启动一次ADC12SC,如果用定时器启动,可在定时器中断中启动ENC一次即可.
下面描述一AD单通道多次转换程序:
#include"msp430xl6x.h"
#defineNum_of_Results12
Staticunsignedintresults[Num_of_Results],//设置全局数组
voidmain(void)
{
WDTCTL等于WDTPW+WDTHOLD,//停止看门狗定时器
P6SEL1等于Ox01://使P6.0为ADC模块使用
//使能A/D转换通道A0
ADC12CTLO等于ADC120N+SHTO_8+MSC,
//打开ADC12,采样周期为ADC12CLK的8倍,
//关闭内部参考电压发生器,选择内部1.5V参考电压
ADC12CTLl等于SHP+CONSEQ_2,//采样信号直接源自采样定时器,
//内部时钟源选:ADC120SC
//单通道多次转换模式
ADC12IE等于0x01,//A0转换结束允许中断
ADC12CTLO|等于ENC,//使能转换
_EINT(),//中断允许
ADC12CTLO|等于ADC12SC://开始一次转换
_BIS_SR(LPMO_bits),//进入低功耗模式0:LPM0
}
interrupt[ADC_VECTOR]voidADC12ISR(void)
{
staticunsignedintindex等于0,
results[index]等于ADC12MEM0,//存储转换结果
ADC12CTLO|等于ENC+ADC12SC,//开始新一轮转换
}
5.5串口通信软件设计
MSP430单片机的USART模块可实现UART异步通信和SPI同步通信本装置采用异步通信模式.MSP430串行异步通信模式通过两个引脚,即接收引脚URXD和发送引脚UTXD与外界相连.串行异步通信的特点如下:
(1)异步模式,包含线路空闲她址通信协议.
(2)两个独立移位寄存器:输入移位寄存器和输出移位寄存器.
(3)可传输7位或8位数据,可采用奇校验或偶校验或无校验.
(4)从最低位开始的数据发送和接收.
(5)可编程实现分频因子为整数或小数的波特率.
(6)独立的发送和接收中断.
(7)通过有效的起始位检测将MSP430从低功耗唤醒·
(8)状态标志检测错误或者地址位.
用户对USART模块的使用是通过对硬件原理和通信协议的理解下,在一系列寄存器设置之后,由硬件自动实现数据的输入输出.本系统采用USARTl寄存器,USART1寄存器有:控制寄存器困U1CTL,USART模块的基本操作由此寄存器的控制位决定,发送控制寄存器(U1TCTL),接收控制寄存器U1RCTL,波特率调整控制寄存器U1MCTL,如果波特率发生器的输入频率BRCLK不是所需波特率的整数倍,带有一小数,则整数部分写入UBR寄存器,小数部分由UMCTL的内容反映,波特率控制寄存器0(U1BRO),波特率控制寄存器1(U1BRI),接收缓存寄存器(UlRXBUF),发送缓存寄存器(U1TXBUF),SFR模块使能寄存器2(ME2),SFR中断使能寄存器2(IE2),SFE中断标志寄存器2(IFGZ).
整个软件设计包括初始化设置,串口中断服务程序和主处理程序,下面对各个部分程序分别进行介绍.
在初始化设置里波特率发生器的时钟源采用系统子时钟SMCLK等于DCOCKL等于
1048576Hz,波特率设定为115200bit:传输字符长度设定为8位,无校验,线路空闲多机协议:使能UART1的TXD和RXD(接收和发送允许),接收和发送中断使能,将P4.0和P4.1设置为发送和接收端口.
串口通信采用中断机制,发送数据和接收数据都采用中断方式.当接收到数据时,设置一个标志来通知主程序有数据到来,当主程序有数据要发送的时候,设置一个中断标志进入中断发送数据.
接收中断服务程序从接收缓存寄存器(RXBUF1)里读取数据,将得到的数据放到一个全局变量缓冲区里,然后再设置一个标志来通知主程序.如果有数据需要发送时,主程序设置一个发送标志,并且触发发送中断,进入发送中断服务程序.
主处理程序主要是验证和处理所收到的数据,如果数据没有出错则把得到的数据传送给系统主函数进行运算,同时,要把响应信息封装完后连同响应信息长度一起发送给PC机,如果接收数据有错则把出错信息封装完毕后连同发送数据长度一起返回给PC机,使其重新发送数据.从上位机发送的数据也要包含数据长度,以保证数据发送的正确性.
5.5压力采集子程序
它的主要功能是对压力进行采样,系统规定每10秒采样一次,单片机启动A/D转换后,在中断方式下执行压力采集子程序,读取A/D值,经数字滤波,定量计算后,存储数据,设置A/D转换完毕标志,以供主程序查询,实时向微机发送压力数据.程序框图如图所示.
存储数据
压力采集子程序图
5.6干扰及其应用
由于本系统用在工业生产现场,各种电磁干扰复杂,如不采用抗干扰措施,往往导致系统失效.针对以上情况,系统在硬件和软件两方面采取了措施.
5.6.1硬件措施
(1)整个装置屏蔽在铁盒内,并有良好的接地,以避免空间杂散电磁波的干扰,
(2)电源部分采用电源滤波器,隔离变压器,以控制电源系统中的高次谐波的干扰,
(3)电脉冲量输入采用光电耦合器隔离.
5.6.2软件措施
(1)当单片机对电压进行采样时,外界干扰也会通过输入口随之而入,这样就造成数据采样的抖动,甚至出现不应该的偏差.因此如取瞬时采样一次的方法,显然不会得到满意的结果.本系统对采样的数据进行数字滤波,具体的算法是对一个采样进行3次采样,三个值比较,剔除异值,取其余较接近两值的平均值做为最终采样值.
(2)为了防止外界干扰时,发生系统失控或造成程序乱飞,程序中设置了软件陷阱.即在非程序区,反复用02100002100等H填满(指LJMP1000H机器码),这样,不论系统失控后指向哪个字节,最后都使程序转到出错处理程序中.
5.6与微机的通信
数据采集系统获取数据后,经过一系列的数据处理,存储,编码,数据压缩,需将结果传送给PC机进一步处理.由于处理的数据量很小,我们采用串口通信的方法进行数据传送最为简单.
6全文总结
在本文的MSP430最小系统中低功耗,低成本是两条主线.
在低功耗设计方面,首先是选择低功耗元件,从单片机,显示器,放大器,都尽量选择市场上功耗最低的产品,本文选用的放大器OPA333就是TI公司推出最低功耗,最小尺寸的零漂移放大器,其次在硬件电路设计方面,引入了低压差线性稳压器TPS76330,降低系统工作电压,放大器的供电由单片机来控制,再次,是软件设计融入低功耗思想,核心的方法就是在最短的时间内把需要的工作完成,然后立即进入休息状态,不论在工作还是休息状态,立即关闭不必要的模块,以最大限度地降低功耗,例如,采样间歇状态时,关闭单片机内部除看门狗定时器之外的所有模块,切断放大器的供电,只有显示器处于活动状态,最大限度地降低了功耗.
这些低功耗的措施起到了良好的效果,成功地控制了MSP430最小系统的功耗,超过了设计对低功耗的要求.
在降低成本的措施方面,在满足性能的前提下,尽量选择低成本元件,利用了MSP430单片机集成于单片机内部的12位高速A/D(转换时间小于3.6us),省略了外部A/D转换器,这样减小外部电路,同时这样可以提高转换速度,使得工作和休息的时间比例加大,进一步降低功耗,提高相应速度等.
本系统成功的在MSP430F169单片机上实现了显示,键盘,UART,D/A和A/D等一些常见的外围电路功能,并在此基础上构建了一个常用外围电路的通用化设计平台,根据应用系统的扩展功能的需求配置本系统,则可实现所需的外围电路功能.
采集系统整个过程包括信号的采集,整型,A/D转换及MSP430F169的信号处理,对采集的数据实时显示,最后将数据给计算机进行处理.同时本设计增加了状态显示功能,根据实际需
关于单片机方面论文范文例文,与万方数据库文查询资源相关论文查重免费参考文献资料: