STM32 AD采集电源电压应用【行业二类】

上传人:工**** 文档编号:551691464 上传时间:2023-11-15 格式:DOC 页数:3 大小:114KB
返回 下载 相关 举报
STM32 AD采集电源电压应用【行业二类】_第1页
第1页 / 共3页
STM32 AD采集电源电压应用【行业二类】_第2页
第2页 / 共3页
STM32 AD采集电源电压应用【行业二类】_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《STM32 AD采集电源电压应用【行业二类】》由会员分享,可在线阅读,更多相关《STM32 AD采集电源电压应用【行业二类】(3页珍藏版)》请在金锄头文库上搜索。

1、STM32 AD采集应用写出关键的代码,供参考。 /ADC相关设置/ GPIO_InitStructure.GPIO_Pin = POW_ADC|GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; GPIO_Init(GPIOC, &GPIO_InitStructure); /读取ADSTM32_ADC_int(); /电源电压检测/ ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5); AD1_value=ADC_GetConve

2、rsionValue(ADC1); if(AD1_value0x0500) speakertest();delayms(1000);speakertest();delayms(1000);speakertest(); printf(The current AD1 value = 0x%04X rn, AD1_value);/ /stm32_adc.h/#ifndef _stm32_adc_H_#define _stm32_adc_H_#includeSTM32_Config.hvoid STM32_ADC_int(void);/AD初始化程序/AD相关定义/* 用于定义ITM Viewer相关

3、的ITM激励寄存器端口 */#define ITM_Port8(n) (*(volatile unsigned char *)(0xE0000000+4*n)#define ITM_Port16(n) (*(volatile unsigned short*)(0xE0000000+4*n)#define ITM_Port32(n) (*(volatile unsigned long *)(0xE0000000+4*n)#define DEMCR (*(volatile unsigned long *)(0xE000EDFC)#define TRCENA 0x01000000/*用于定义是否使用

4、ITM Viewer*/#define DBG_ITM /* Private typedef -*/* Private define -*/#define ADC1_DR_Address (u32)0x4001244C)int AD_value, AD1_value;static unsigned long ticks, Y;unsigned char Clock1s;/* Private macro -*/* Private variables -*/ADC_InitTypeDef ADC_InitStructure;DMA_InitTypeDef DMA_InitStructure;vu1

5、6 ADC_ConvertedValue;ErrorStatus HSEStartUpStatus;/void STM32_ADC_int(void)/AD初始化程序 /* DMA channel1 configuration -*/ DMA_DeInit(DMA1_Channel1); DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address; DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&ADC_ConvertedValue; DMA_InitStructure.DMA_DIR = DM

6、A_DIR_PeripheralSRC; DMA_InitStructure.DMA_BufferSize = 1; DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable; DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable; DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; DMA_InitStructure.DMA_MemoryDataSize = DMA_

7、MemoryDataSize_HalfWord; DMA_InitStructure.DMA_Mode = DMA_Mode_Circular; DMA_InitStructure.DMA_Priority = DMA_Priority_High; DMA_InitStructure.DMA_M2M = DMA_M2M_Disable; DMA_Init(DMA1_Channel1, &DMA_InitStructure); DMA_Cmd(DMA1_Channel1, ENABLE); /* Enable DMA channel1 */ /* ADC1 configuration -*/ A

8、DC_InitStructure.ADC_Mode = ADC_Mode_Independent; ADC_InitStructure.ADC_ScanConvMode = ENABLE; ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; ADC_InitStructure.ADC_NbrOfChan

9、nel = 1; ADC_Init(ADC1, &ADC_InitStructure); ADC_DMACmd(ADC1, ENABLE); /* Enable ADC1 DMA */ ADC_Cmd(ADC1, ENABLE); /* Enable ADC1 */ ADC_ResetCalibration(ADC1); /* Enable ADC1 reset calibaration register */ while(ADC_GetResetCalibrationStatus(ADC1); /* Check the end of ADC1 reset calibration register */ ADC_StartCalibration(ADC1); /* Start ADC1 calibaration */ while(ADC_GetCalibrationStatus(ADC1); /* Check the end of ADC1 calibration */ ADC_SoftwareStartConvCmd(ADC1, ENABLE); /* Start ADC1 Software Conversion */#endif1文书#借鉴

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 机械理论及资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号