MSP432(Keil5)——9.ADC驱动

发布者:花开堂前最新更新时间:2022-08-03 来源: csdn关键字:MSP432  Keil5  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_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P5, GPIO_PIN5,

    GPIO_PRIMARY_MODULE_FUNCTION);


/* Configuring ADC Memory */

    MAP_ADC14_configureSingleSampleMode(ADC_MEM0, true);

    MAP_ADC14_configureConversionMemory(ADC_MEM0, ADC_VREFPOS_AVCC_VREFNEG_VSS,

    ADC_INPUT_A0, false);


/* Configuring Sample Timer */

    MAP_ADC14_enableSampleTimer(ADC_MANUAL_ITERATION);

/* Enabling/Toggling Conversion */

    MAP_ADC14_enableConversion();

    MAP_ADC14_toggleConversionTrigger();

/* Enabling interrupts */

    MAP_ADC14_enableInterrupt(ADC_INT0);

    MAP_Interrupt_enableInterrupt(INT_ADC14);

}


extern uint16_t curADCResult;

extern float normalizedADCRes;

extern float angle;


void ADC14_IRQHandler(void)

{

    uint64_t status = MAP_ADC14_getEnabledInterruptStatus();

    MAP_ADC14_clearInterruptFlag(status);


    if (ADC_INT0 & status)

    {

        curADCResult = MAP_ADC14_getResult(ADC_MEM0);

        normalizedADCRes = (curADCResult * 3.3) / 16384;

angle = normalizedADCRes / 3.3 * 360 ;


        MAP_ADC14_toggleConversionTrigger();

    }

}


adc.h

#ifndef __ADC_H

#define __ADC_H


/* DriverLib Includes */

#include


void ADC_Init(void);


#endif

关键字:MSP432  Keil5  ADC驱动 引用地址:MSP432(Keil5)——9.ADC驱动

上一篇:MSP432(Keil5)——10.通过匿名上位机看数据
下一篇:MSP432(Keil5)——8.oled驱动

推荐阅读最新更新时间:2024-11-20 08:30

MSP432--driverlib入门(3):I2C原理初探
言归正传,对于I2C的使用,通常来说有两种实现方法,一种是利用单片机自带的硬件实现I2C,另外一个就是根据I2C协议和GPIO的输出,来实现软件I2C。虽然我没有实操过I2C,但是我的很多朋友(巨佬)都和我说硬件I2C巨坑,会有很多玄学问题,相比之下软件I2C会靠谱许多,于是就决定把软件I2C给办了。至于硬件I2C嘛.。。。嘛。。。有空再说! 其实想要用好I2C很简单,只需要上CSDN上扒一些代码移植移植就完事了。但是要是想真正用好I2C,个人认为理论基础也必须要过关,所以上代码之前,我们先来过一遍I2C的原理。 硬件的电气连接: I2C通信中,主机SDA端与从机SDA端相连,主机SCL端与从机SCL端相连,且必须共地
[单片机]
MSP432--driverlib入门(3):I2C原理初探
基于SmartARM2300开发板的ADS工程移植keil5工程
需求描述: 最近在用LCP2378做项目,需要用到此芯片上的CAN接口,官方给的例程中,是ADS平台下的,根据我个人习惯,想在keil下进行开发,所以就需要将源码转换到keil平台上,根据需要搭建好keil5的软件环境(需要能支持LPC2XXX系列芯片支持包)。 1.新建keil工程,选择LCP2378芯片: 2、会提示是否加载LPC2300.S可以选择加载后可以删除,这个文件相当于ADS里面的Startup.s是程序启动文件(就是复位、中断、main跳转之类的),由于将ADS工程移到这边可以不需要keil自带的LPC2300.S 3、 将ADS工程文件全部考到Keil 工程文件夹下,后在工程中将文件都加入(除了scf
[单片机]
基于SmartARM2300开发板的ADS工程移植<font color='red'>keil5</font>工程
第2章-如何安装KEIL5—零死角玩转STM32-F429系列
本章内容所涉及的软件只供教学使用,不得用于商业用途。个人或公司因商业用途导致的法律责任,后果自负。 2.1 温馨提示 1、安装路径不能带中文,必须是英文路径 2、安装目录不能跟51的KEIL或者KEIL4冲突,三者目录必须分开 3、KEIL5的安装比起KEIL4多了一个步骤,必须添加MCU库,不然没法使用。 4、如果使用的时候出现莫名其妙的错误,先百度查找解决方法,莫乱阵脚。 2.2 获取KEIL5安装包 要想获得KEIL5的安装包,在百度里面搜索 KEIL5下载 即可找到很多网友提供的下载文件,或者到KEIL的官网下载:https://www.keil.com/download/product/,一大
[单片机]
第2章-如何安装<font color='red'>KEIL5</font>—零死角玩转STM32-F429系列
NO.9 矩阵键盘和MSP432实例——控制MSP开发板板载LED
  上一节我们介绍了矩阵键盘的具体原理,这次我们来将实际操作。   首先,在MSP432中,对于按键的输入就是检测端口的高低电平来判断矩阵键盘的按键情况。   首先我们打开CCS中的gpiointerrupt工程,打开syscfg文件,增加几个输入和输出GPIO口,如下:      其中CONFIG_GPIO_ABCD是属于检测我们矩阵键盘中ABCD的键值。CONFIG_GPIO_GREENBLUERED是属于控制我们开发板上的三色LED灯。   然后我们打开gpiointerrupt.c这个文件,开始我们核心函数的编写。   我们实验的内容是:通过矩阵键盘检测不同的键值ABCD亮不同颜色的灯。   像往常一样,我们要引入G
[单片机]
NO.9 矩阵键盘和<font color='red'>MSP432</font>实例——控制MSP开发板板载LED
小广播
设计资源 培训 开发板 精华推荐

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

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

更多开源项目推荐
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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