⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 MSP430定时器触发ADC并送串口的程序
💻 C
字号:
/****************************************************************************
文件名:main.c
编写者:Benjamin Wang
描述:100Hz,ADC12转换程序,串口输出。用于14x,16x系列。
      MCLK:XT2   ACLK:32.768kHz
版本:2006-3 V1.0
*****************************************************************************/
#include <msp430x14x.h>
#include "adc12.h"
#include "df_timerb.h"
#include "df_uart.h"
#define  TimeZhi 327
#define  RED BIT5
#define  GREEN BIT7


unsigned int ad_result[100];
unsigned int *tmp=ad_result;
unsigned char flag = 0,ad_num=0;            



/*****************************************************************************
系统初始化
******************************************************************************/
void InitSys()
{
   unsigned int iq0;

   BCSCTL1&=~XT2OFF;     					//打开XT2振荡器
   do
   {
 		IFG1 &= ~OFIFG;					// 清除振荡器失效标志
 		for (iq0 = 0xFF; iq0 > 0; iq0--);	        // 延时,等待XT2起振
 	}
 	while ((IFG1 & OFIFG) != 0);				// 判断XT2是否起振

	BCSCTL2 =SELM_2;					//选择MCLK为XT2
	TimerAInit();						//定时器A初始化
	P5DIR |= RED+GREEN;
	SetTime(TimeZhi);					//设置定时时间
        UartInit();                                             //串口初始化
	GotimeDfB(100);						//打开定时器
	Adc12Init();  			                        //初始化AD转换模块
	_EINT();	                                        //打开全局中断控制,若不需要打开,可以屏蔽本句
}

int main()
{
	//unsigned int j,iq0;
	unsigned char q0;
	//float fq0;
	int *pmem=ADC12MEM;
	WDTCTL = WDTPW + WDTHOLD;   	                        //关闭看门狗
	InitSys();
	P5OUT &= ~RED;
	P5OUT &= ~GREEN;

  //初始化寄存器
	for(q0=0;q0<16;q0++)
	{
		ad_result[q0]= 0xFF;
      *pmem=0xFF;
       pmem++;
	}

	while(1);

}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -