欢迎来到天天文库
浏览记录
ID:56125350
大小:78.50 KB
页数:15页
时间:2020-06-20
《MSP430单片机AD转换实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、A/D转换实验一、转换原理MSP430F149的A/D转换器原理请参考相关书籍。实验板上与AD相关的硬件电路:编程工作实际就是对以下寄存器的操作:寄存器类型寄存器缩写寄存器的含义转换控制寄存器ADC12CTL0转换控制寄存器0ADC12CTL1转换控制寄存器1中断控制寄存器ADC12IFG中断标志寄存器ADC12IE中断使能寄存器ADC12IV中断向量寄存器存储及其控制寄存器ADC12MCTL0~ADC12MCTL15存储控制寄存器0~15ADC12MEM0~ADC12MEM15存储寄存器0~15设计主程序和中断服务程序。二、转换程序1、程序1
2、:转换结果发送到PC主程序中进行A/D初始化,中断服务程序读A/D转换结果,主程序中通过串口发送结果。“main.c”主程序与中断程序:/*********************************************************程序功能:将ADC对P6.0端口电压的转换结果按转换数据和对应的模拟电压的形式通过串口发送到PC机屏幕上显示-----------------------------------------------------------通信格式:N.8.1,9600---------------------
3、--------------------------------------测试说明:打开串口调试精灵,正确设置通信格式,观察接收数据**********************************************************/#include#include"allfunc.h"#include"UART0_Func.c"#include"ADC_Func.c"#defineNum_of_Results32uintresults[Num_of_Results];//保存ADC转换结果的数组uinta
4、verage;uchartcnt=0;/***********************主函数***********************/voidmain(void){uchari;ucharbuffer[5];WDTCTL=WDTPW+WDTHOLD;//关狗/*下面六行程序关闭所有的IO口*/P1DIR=0XFF;P1OUT=0XFF;P2DIR=0XFF;P2OUT=0XFF;P3DIR=0XFF;P3OUT=0XFF;P4DIR=0XFF;P4OUT=0XFF;P5DIR=0XFF;P5OUT=0XFF;P6DIR=0XFF;P6OU
5、T=0XFF;P6DIR
6、=BIT2;P6OUT
7、=BIT2;//关闭电平转换P6DIR
8、=BIT6;P6OUT&=~BIT6;//关闭数码管显示InitUART();Init_ADC();_EINT();buffer[4]=' ';while(1){LPM1;Hex2Dec(average,buffer);for(i=0;i<4;i++)buffer[i]+=0x30;PutString0("Thedigitalvalueis:");PutString(buffer);Trans_val(average,buffer);buffer[3]=
9、buffer[2];buffer[2]=buffer[1];buffer[1]=0x2e-0x30;for(i=0;i<4;i++)buffer[i]+=0x30;PutString0("Theanalogvalueis:");PutString(buffer);}}/*******************************************函数名称:ADC12ISR功能:ADC中断服务函数,在这里用多次平均的计算P6.0口的模拟电压数值参数:无返回值:无***************************************
10、*****/#pragmavector=ADC_VECTOR__interruptvoidADC12ISR(void){staticucharindex=0;results[index++]=ADC12MEM0;//Moveresultsif(index==Num_of_Results){uchari;average=0;for(i=0;i>=5;//除以32index=0;tcnt++;if(tcnt==250)//主要是降低串口发送速度{LP
11、M1_EXIT;tcnt=0;}}}“ADC_Func.c”A/D转换相关程序:#includetypedefunsignedin
此文档下载收益归作者所有