stm32f4中通過(guò)dma采集adc
環(huán)境:
主機(jī):WIN8
開(kāi)發(fā)環(huán)境:MDK5.13
MCU:STM32F407IGH
源代碼:
drv_power.h
/*********************************************************************
*電源模塊驅(qū)動(dòng)層頭文件
*(c)copyright2015,jdh
*AllRightReserved
*新建日期:2014/10/20byjdh
*修改時(shí)間:2015/3/2byjdh
**********************************************************************/
/*********************************************************************
功能說(shuō)明:
可以控制VDD的供給,VDD供給MCU和LCD
硬件連接說(shuō)明
電路標(biāo)號(hào)單片機(jī)引腳特殊功能
VDD_PWR_ENPI7
VBAT_DETPF3ADC3_IN9
VBAT_DET_GNDPF2
**********************************************************************/
#ifndef_DRV_POWER_H_
#define_DRV_POWER_H_
/*********************************************************************
*頭文件
**********************************************************************/
#include"stm32f4xx.h"
/*********************************************************************
*宏定義
**********************************************************************/
/*********************************************************************
*單片機(jī)AD參考電壓
*單位:mv
**********************************************************************/
#defineREF_AD3300
/*********************************************************************
*分壓系數(shù)
*分壓電阻為33K和62K
**********************************************************************/
#defineRATE_AD1.532
/*********************************************************************
*函數(shù)
**********************************************************************/
/*********************************************************************
*初始化電源模塊
**********************************************************************/
voiddrv_power_init(void);
/*********************************************************************
*電源控制
*參數(shù):state:1開(kāi)機(jī),0:關(guān)機(jī)
**********************************************************************/
voiddrv_power_set(uint8_tstate);
/*********************************************************************
*電池adc檢測(cè)使能
*參數(shù):state:允許檢測(cè),0:不允許檢測(cè)
**********************************************************************/
voiddrv_power_adc_set(uint8_tstate);
/*********************************************************************
*得到電池電壓
*返回:電池電壓,單位mv
**********************************************************************/
uint16_tdrv_power_get_voltage(void);
#endif
drv_power.c
*電源模塊驅(qū)動(dòng)層文件
*(c)copyright2015,jdh
*AllRightReserved
*新建日期:2014/10/20byjdh
*修改日期:2015/1/27byjdh
**********************************************************************/
/*********************************************************************
*頭文件
**********************************************************************/
#include"drv_power.h"
/*********************************************************************
*靜態(tài)變量
**********************************************************************/
/*********************************************************************
*adc轉(zhuǎn)換結(jié)果存放地址
**********************************************************************/
#defineLEN_ADC_BUF10
static__IOuint16_tADC_Converted_Value[LEN_ADC_BUF]={0};
/*********************************************************************
*靜態(tài)函數(shù)
**********************************************************************/
/*********************************************************************
*初始io
**********************************************************************/
staticvoidinit_io(void);
/*********************************************************************
*初始ADC
**********************************************************************/
staticvoidinit_adc(void);
/*********************************************************************
*函數(shù)
**********************************************************************/
/*********************************************************************
* 初始化電源模塊