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

📄 3_8_2_2.c

📁 MSP430F133开发板代码包 独立按键(C) 5_1_6_1.c 扫描按键 key.s43 扫描按键(C) key.c ADC 5_1_8.s43 5_1_9_1.s43 I
💻 C
字号:
#include "MSP430x14x.h"     
#define ADCMEM ((int*) 0x0140)          // ADC12MEMx 定义
//--------------------------------------------------------------------------
void Init(void);          		// Initialization of System/Control Registers
void main(void)
{
    unsigned int i; 
    unsigned int j;
    unsigned int Result[2];     	//用以保存转换结果
    Init();                 	        //对ADC进行初始化
    while (1)
    { 
       for (i=0;i<2;i++)       
       {
            ADC12CTL0 |= 0x01;     	// 开始转换
            ADC12CTL0 &=~0x01;     
          for (j=0;j<=1000;j++); 	// 延时,准备触发序列中的下一次转换
       }
       while ((ADC12CTL1&0x01)==1); 	// 等待整个序列的转换完成
       for(j = 0 ; j <2; j++) 
       {
            Result[j] = ADCMEM[j];
       }
       for (i=0;i<=40000;i++);   	// 两个序列之间的一个延时
    }
}
void Init(void)
{
    WDTCTL = WDTPW + WDTHOLD;	        // 停止Watchdog
/* ADC12 Settings: */     
     P6SEL = 0xFF;         		// 所有P6口线均为ADC模块使用
     ADC12CTL0 &=~ 0x02;   		// 在进行设置时首先复位ADC的转换使能
                            		// 选则参考电压和输入管脚
     ADC12MCTL0  = 0x00;    		// Ref = AVss, AVcc; Input = A0
     ADC12MCTL1  = 0x8a;    		// Ref = AVss, AVcc; Input = A10
                            		// ADC12MCTL1 是最后一个转换通道
     ADC12CTL1 = 0x0202;    		// ADC12SC 位触发采样和保持
                            		// 采样脉冲由采样定时器产生
                            		// 时钟源:内部振荡器
                            		// 时钟分频: 1
                            		// 转换模式: 多通道、单次转换
     ADC12CTL0 = 0x0010+SHT0_8;    
     ADC12CTL0 |= 0x02;     		// 使能ADC转换
}

⌨️ 快捷键说明

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