MSP432笔记——单路ADC采样

发布者:温柔的爱情最新更新时间:2022-08-10 来源: csdn关键字:MSP432 手机看文章 扫描二维码
随时随地手机看文章

配置ADC

引脚配置

使能ADC模块,初始化ADC模块

单路转化配置,转化存储器配置

使能采样时钟,使能转化

中断使能,开启总中断

开始转化

    //enable ADC module

    ADC14_enableModule();

    ADC14_initModule(ADC_CLOCKSOURCE_MCLK,ADC_PREDIVIDER_1,ADC_DIVIDER_1,0);


    //gpio P5.5

    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P5,GPIO_PIN5,GPIO_TERTIARY_MODULE_FUNCTION);

    //ADC Mem

    ADC14_configureSingleSampleMode(ADC_MEM0,true);

    ADC14_configureConversionMemory(ADC_MEM0,ADC_VREFPOS_AVCC_VREFNEG_VSS,ADC_INPUT_A0,false);

    //Sample timer

    ADC14_enableSampleTimer(ADC_MANUAL_ITERATION);  //完成一次采样后需要再用ADC14_toggleConversionTrigger才开始下一次

    ADC14_enableConversion();


    ADC14_toggleConversionTrigger();    //开始转化


    //ADC 中断

    ADC14_enableInterrupt(ADC_INT0);


  Interrupt_enableInterrupt(INT_ADC14);


    Interrupt_enableSleepOnIsrExit();

    Interrupt_enableMaster();


计算浮点数要开启FPU模块enableFPU


    //FPU enable    计算ADC使用

    FPU_enableModule();

    FPU_enableLazyStacking();


中断服务函数

void ADC14_IRQHandler()

{

    uint32_t status = ADC14_getEnabledInterruptStatus();    //获取中断状态

    ADC14_clearInterruptFlag(status);   //清空标志位


// 自行指定

    if (status & ADC_INT0)

    {

        uint16_t curADCvalue=0;

        curADCvalue = ADC14_getResult(ADC_MEM0);

        float curVoltage=1.0;

        curVoltage = (curADCvalue * 3.3 ) / 16384 ;

    }

    //下一次连续采样

    ADC14_enableSampleTimer(ADC_MANUAL_ITERATION);  //完成一次采样后需要再用ADC14_toggleConversionTrigger才开始下一次

    ADC14_enableConversion();

    ADC14_toggleConversionTrigger();    //开始转化

}


关键字:MSP432 引用地址:MSP432笔记——单路ADC采样

上一篇:基于MSP432的中断练习
下一篇:MSP432笔记——TIM定时器中断

推荐阅读最新更新时间:2024-11-12 11:13

msp432快速入门第一节之找齐资料
老话说:授人以鱼不如授人以渔,这里我会讲一下自己如何快速入门一款单片机,便于回看,在2020年省赛我被430折磨,故今年提前准备。主要是记录自己的方法,仅仅代表个人观点。 (1)需要的资料整理 先看一下大概需要的资料 ,我手里是TI的msp432p401r 小火箭板(红色),对于先入门一款单片机,可以先想一下我们需要的资料: (1)usermanual,各种外设的使用在这里; (2)datasheet,主要看一下电气特性以及引脚复用 (3)相应的sdk,TI官方应该有,最好SDK里边有例子程序,那么可以直接用了,当然重新整理下也不错。 (4)板子的原理图,其他就不太需要了, 那么我们按照需要挨个找链接下载。 (2)TI官网下载
[单片机]
<font color='red'>msp432</font>快速入门第一节之找齐资料
STM32定时TIM2触发ADC采样,使用DMA保存结果
1.adc.h文件 //ADC-------------------------------------------------------------------------// #ifndef __EVAL_ADC_H #define __EVAL_ADC_H // Includes ------------------------------------------------------------------// #include stm32f10x.h #include eval.h // Exported types ------------------------------
[单片机]
msp432记录-timer
timer驱动API非常简单,就只有几个,开始计时,停止计时,获得计数值。认识初始化参数结构体即可 typdef struct { Timer_Mode timerMode; //模式 Timer_PeriodUnits periodUnits; //计数周期单位 Timer_CallBackFxn timerCallback; //回调函数 uint32_t period; //计数周期,联系periodUnits } //下面记录一下具体的数据结构参数 //模式结构体 注意,某些定时器可以被配置为向上计数和向下计数模式,通过Timer_getCount()得到计数值 typedef enum{ Timer
[单片机]
MSP432库函数学习笔记-CS
时钟初始化设置 void CS_setExternalClockSourceFrequency(uint32_t lfxt_XT_CLK_frequency, uint32_t hfxt_XT_CLK_frequency); //设置外部晶振LFXT和HFXT的频率值 如果不使用外部时钟来源则不管这个,时钟故障机制会选择其他时钟来源 void CS_initClockSignal(uint32_t selectedClockSignal,uint32_t clockSource, uint32_t clockSourceDivider); //初始化时钟信号
[单片机]
<font color='red'>MSP432</font>库函数学习笔记-CS
STM32HAL库ADC实验(二)——连续采样模式打印电压值
int main(void) { /* USER CODE BEGIN 1 */ uint16_t adcData; float voltage; /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ HAL_Init(); /* USER CODE BEGIN Init */ /*
[单片机]
STM32HAL库A<font color='red'>DC</font>实验(二)——连续<font color='red'>采样</font>模式打印电压值
MSP432--GPIO IAR环境
GPIO 1.特点:众多的独立可编程I/O口 任意端口的输入输出组合 中断 独立的输入输出寄存器 独立可配置的上拉下拉寄存器 2.分布:总共有P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 PJ P1-P10共78个I/O,PJ有6个I/O P1.0,P1.4,P1.5,P3.0,P3.4,P3.5,P6.6,P6.7自带硬件滤波,消抖 P1.2-- BSLRXD P1.3-- BSLTXD SPI引脚:P1.4-- BSLSTE P1.5-- BSLCLK P1.6-- BSLSIMO P1.7-- BSLSOMI IIC引脚:P3.6-- BSLSDA P3.7-- BSLSCL 总共100引脚 ZXH封装
[单片机]
MSP430 ADC12 最高采样率测试
使用的MSP430型号为MSP430F5529LP(Lauchpad) MSP430x5xx and MSP430x6xx Family User's Guide 给出:其内置12位ADC的 最高采样率约为200ksps 下面详述ADC设置过程。 目录 1.设置ADC转换模式为Repeat-single-channel; 2.设置ADC的转换时钟sample-and-hold source (SHI) 3.设置定时器A为输出输出模式 4.设置输入通道 5.设置ADC12SHP位 6.设置采样保持时间 1.设置ADC转换模式为Repeat-single-channel; 请通过
[单片机]
MSP430 A<font color='red'>DC</font>12 最高<font color='red'>采样</font>率测试
MSP432(Keil5)——9.ADC驱动
本次例程驱动了板载的ADC来读取一个模拟的角度传感器,大家可以在ADC读取中断里面换成其他的计算,具体引脚见程序代码。 adc.c #include adc.h void ADC_Init(void) { /* Initializing ADC (MCLK/1/4) */ MAP_ADC14_enableModule(); MAP_ADC14_initModule(ADC_CLOCKSOURCE_MCLK, ADC_PREDIVIDER_1, ADC_DIVIDER_4, 0); /* Configuring GPIOs (5.5 A0) */ MAP_GPIO_setAsPeripher
[单片机]
<font color='red'>MSP432</font>(Keil5)——9.A<font color='red'>DC</font>驱动
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved