stm32内部ad可以外接stm32f103 ad参考电压压吗

STM32的AD究竟能达到多少LSB? - STM32 - 意法半导体STM32/STM8技术社区
后使用快捷导航没有帐号?
查看: 1120|回复: 29
STM32的AD究竟能达到多少LSB?
主题帖子威望
金牌会员, 积分 1619, 距离下一级还需 1381 积分
金牌会员, 积分 1619, 距离下一级还需 1381 积分
本帖最后由 逍遥李 于
19:00 编辑
如题,我想知道下面我测量的纽扣电池电压和精密电阻对Nucleo板上3.3V分压 精度上是否正常?或者我接法有错误?
测试一共做了两组,就是简单的AD采样,采样方式使用DMA连续采样,采样值不做处理直接经串口输出,输出频率≤100HZ,板子使用Nucleo,芯片stm32f303,下面是实验过程:
试验一:采样纽扣电池电压,连接方式和数据结果如图:
_105930.png (569.79 KB, 下载次数: 0)
11:00 上传
连接很简单,如上图所示。
DMA采样纽扣3V电池问题.jpg (60.12 KB, 下载次数: 0)
10:51 上传
上面是连续输出1120个采样点,纵轴是采样的纽扣电池电压对应的AD转换结果,横轴代表采样点下标,另外计算得到如下参数:
最大值:3915;最小值:3905;均值:3909.9;中位数:3909;标准差:2.3493;
疑问1:最大值和最小值相差10,这个数值是否正常?是不是哪里有干扰我没考虑到?
DMA采样纽扣3V电池问题2.jpg (27.31 KB, 下载次数: 0)
10:51 上传
这幅图是数据分布柱状图,纵轴代表采样结果中对应数值出现的次数即频次,横轴代表采样值;
疑问2:为什么不服从正态分布?为什么有两个波峰?
试验二:采样板子自身3.3V经精密电阻分压数值(采样过程中精密电阻不调节),连接方式和数据结果如图:
_105951.png (523.64 KB, 下载次数: 0)
11:04 上传
连接方式很简单,如图所示。
DMA采样精密电阻分压后的自身3.3V.jpg (39.94 KB, 下载次数: 0)
11:06 上传
上面是连续输出18456个采样点,纵轴是精密电阻分得电压对应的AD转换结果,横轴代表采样点下标,另外计算得到如下参数:
最大值:1031;最小值:984;均值:1005.3;中位数:1005;标准差:3.081;
疑问3:最大最小值相差47,除去几个尖点,其数值在纵向宽度超过10,DMA采样数据需要软件滤波才能输出使用?请高手指点!
DMA采样精密电阻分压后的自身3.3V_2.jpg (24.57 KB, 下载次数: 0)
11:06 上传
这幅图是数据分布柱状图,纵轴代表采样结果中对应数值出现的次数即频次,横轴代表采样值;
以上手我做的两个关于AD采样的试验,想听听大家的看法,主要是两个方面:
1、AD采样12bit精度能用的精度是多少bit?实际用的时候都是自己再做软件滤波吗?
2、我的电路连接上是否哪里有问题?误差来源大家认为都是哪里?
请不吝赐教,非常感谢!
主题帖子威望
金牌会员, 积分 1619, 距离下一级还需 1381 积分
金牌会员, 积分 1619, 距离下一级还需 1381 积分
本帖最后由 逍遥李 于
19:30 编辑
今天特意去买了几片TL431,使用TL431的2.495V参考源电压作为测量目标,对其进行测量,测量数据图如下所示:
TL431单独采样_纽扣供电.jpg (113.17 KB, 下载次数: 0)
19:27 上传
图上各参数定义参考原帖……这次采样了66125个点
TL431单独采样_纽扣供电2.jpg (48.08 KB, 下载次数: 0)
19:27 上传
感谢各位坛友的回答,就目前情况来看,使用TL431也并没有什么用,看来是需要进行滤波处理了。
主题帖子威望
中级会员, 积分 334, 距离下一级还需 166 积分
中级会员, 积分 334, 距离下一级还需 166 积分
可以用一个稳定的电源来测试哦,艾德克斯电源就行哦
主题帖子威望
金牌会员, 积分 2814, 距离下一级还需 186 积分
金牌会员, 积分 2814, 距离下一级还需 186 积分
纽扣电池输出的本身就不是绝对的稳压直流电源,会有一定的波动,通过电阻分压的,即使是精密电阻,得到的电压精度也没那么高,12位ADC精度理论上能达到1/v参考电压就是0.8mv,实际嘛当然不会这么高,有几mv偏差是正常的。电路上ADC采样端可以接个电容减小电压波动
主题帖子威望
金牌会员, 积分 2101, 距离下一级还需 899 积分
金牌会员, 积分 2101, 距离下一级还需 899 积分
是不是插线接触不良造成的干扰?毕竟不是直接焊接。
我不是高手,只是兴趣楼主思考问题的方式。
期待看到工程文件。。。
主题帖子威望
论坛元老, 积分 3496, 距离下一级还需 9996503 积分
论坛元老, 积分 3496, 距离下一级还需 9996503 积分
主题帖子威望
高级会员, 积分 749, 距离下一级还需 251 积分
高级会员, 积分 749, 距离下一级还需 251 积分
导线自身存在的干扰呢?杜邦线自身的接触干扰,都是干扰,如果想要测试的准确,就应该以一个恒定的稳压电源来做AD的外部输入。
主题帖子威望
金牌会员, 积分 1003, 距离下一级还需 1997 积分
金牌会员, 积分 1003, 距离下一级还需 1997 积分
片内12位ADC通常达到10位的精度是没有问题的,要想达到11位以上对电路的设计就有些要求了。对于楼主采集的实验,结果应该是正常的。偏差也在范围内。至于误差的原因,有以下:1、参考源,不知道楼主使用的是哪个参考源,内部的还是外部的;2、信号源是否稳定,根据楼上几位所说,纽扣电池的电压并不是稳定;3、电路板设计,我没有楼主手上的开发板,不知道这个开发板对模拟部分是怎么处理的,通常的开发板对模拟部分都是没有十分下功夫的。
另外,如果对采样精度要求比较高,DMA出来的数据最好是做下滤波处理,这样既能提高精度,如果需要通过过采样还能提高分辨率
主题帖子威望
高级会员, 积分 817, 距离下一级还需 183 积分
高级会员, 积分 817, 距离下一级还需 183 积分
振荡器问题可能导致频谱双峰
主题帖子威望
金牌会员, 积分 1619, 距离下一级还需 1381 积分
金牌会员, 积分 1619, 距离下一级还需 1381 积分
可以用一个稳定的电源来测试哦,艾德克斯电源就行哦
手里没这高端玩意儿啊~
站长推荐 /1
即日起,ST面向全球征集STM32解决方案,其中优秀项目将有机会作为参考案例在ST官网展示,同时还将携手ST共赴线下展会,与全球技术大牛一较高下。
Tel: 3-8056
备案号: 苏ICP备号-2
Powered bySTM32芯片ADC内部的CH17参考电压的用途
单片机&嵌入式
单片机应用
嵌入式操作系统
学习工具&教程
学习和开发单片机的必备工具
(有问必答)
(带你轻松入门)
电子元件&电路模块
当前位置: >>
>> 浏览文章
STM32芯片ADC内部的CH17参考电压的用途
& & 每个STM32芯片都有一个内部的参照电压,相当于一个标准电压测量点,在芯片内部连接到ADC1的通道17。
根据数据手册中的数据,这个参照电压的典型值是1.20V,最小值是1.16V,最大值是1.24V。这个电压基本不随外部供电电压的变化而变化。
不少人把这个参照电压与ADC的参考电压混淆。ADC的参考电压都是通过Vref+提供的。100脚以上的型号,Vref+引到了片外,引脚名称为Vref+;64脚和小于64脚的型号,Vref+在芯片内部与VCC信号线相连,没有引到片外,这样AD的参考电压就是VCC上的电压。
在ADC的外部参考电压波动,或因为Vref+在芯片内部与VCC相连而VCC变化的情况下,如果对于ADC测量的准确性要求不高时,可以使用这个内部参照电压得到ADC测量的电压值。
具体方法是在测量某个通道的电压值之前,先读出参照电压的ADC测量数值,记为ADrefint;再读出要测量通道的ADC转换数值,记为ADchx;则要测量的电压为:
Vchx = Vrefint * (ADchx/ADrefint)
其中Vrefint为参照电压=1.20V。
【】【】【】【】
上一篇:下一篇:
CopyRight @
单片机教程网
, All Rights Reserved如果我的单片机的基准电压为3.3V,而外部的模拟量输入为0—5V我要对这个模拟量直接用单片机的内部AD进行采_百度知道& & 前几天看到论坛有人在问这个问题,我特意去做了这个实验,这样用外部SRAM就跟用内部SRAM一样,不用自己去申请内存,也不用考虑什么内存地址,一切让编译器自己去解决。
&&&&&&& 废话不多说,我直接拿原子哥的战舰开发板库函数版的外部SRAM实验来修改。在库函数的system_stm32f10x.c这个初始化文件当中其实就已经有外部SRAM的初始化,我们只要增加&#define DATA_IN_ExtSRAM 1&这句宏定义
#if defined (STM32F10X_HD) || (defined STM32F10X_XL) || (defined STM32F10X_HD_VL)
/* #define DATA_IN_ExtSRAM */
#define DATA_IN_ExtSRAM 1
&&&&&&& 再编译的时候就会把外部SRAM的初始化编译进去,初始化的代码大家可以去看文件中的void SystemInit_ExtMemCtl(void) 这个函数。然后我们在工程设置那里把外部SRAM地址增加进去,如下图
&&&&&&&修改启动文件中的中的第39行,把__initial_sp 修改成&__initial_sp& EQU 0x + Stack_Size
&&&&&&& 然后我们把Main中的testsram中的地址去掉,让编译器自己去指定地址
&&&&&&& 再把原子哥的外部SRAM的初始化注释掉,因为前面已经在System_init已经初始化了。其实这里我们可以把原子的SRAM.c文件去掉不用它了,我这里没去掉,其实只是为了能正常调用fsmc_sram_test()来测试实验结果
&&&&&&& 到这里我们可以编译了,下载到开发板,我们就可以看到实验结果
&&&&&&& 我们继续深入点,看看testsram[]这个大数组到处编译在到哪里去了,用IDA64来反汇编下编译出来的AXF文件
&&&&&&& 可以看到testsram这个大数组自动编译到外部sram的0x这个地址上。我们再试试再定义几个大数组看看
&&&&&&& 再来看看编译后的结果
&&&&&&&可以看到每个大数组都由编译器自己分配了内存的地址,压根不用我们自己去定义。
&&&&&&&到这里相信大家会有一个疑问,那编译是怎么来决定把哪些变量定义在内部SRAM,那些定义在外部SRAM。这一点我也研究清楚,我只知道编译会优先把变量都定义外部SRAM,当外部SRAM不够用情况才会定义在内部SRAM上,至于怎么让编译优先使用内部SRAM,我也没有搞明白。目前我能做到的是把已经初始化的全局变量都放在SRAM,做法是修改散列文件,让RW只在内存SRAM上编译。
&&&&&& 去掉小红框的勾,然后点击Edit我们来修改SRAM.sct文件,也就是编译散列文件
&&&&&& 把RW_RAM1中(也就是外部SRAM)的+RW去掉,这样已经初始化的全局变量就只会编译在内部SRAM中
&&&&&& 重新编译下工程,再来反汇编下看看编译结果
&&&&&&& 可以看到usmart_nametab[]这个已经初始化的数组编译在内部SRAM上,adc2[]这个未初始化的数组,数组的大小比较而且能在内部Sram编译得下的,却还是编译在外部SRAM上。
&&&&&&& 最后散列相关的知识,大家可以看看这里
&&&&&&&&前面没有修改启动文件,其它变量全部在内部SRAM的时候,程序运行是没有问题,减小数组的时候程序运行不起来,修改前面的红字部分后,程序就可以运行起来,但是LCD偶尔正常,偶尔不正常,调试下感觉是延时的问题,没有再继续调试了
旗下网站:
与非门科技(北京)有限公司 All Rights Reserved.
京ICP证:070212号
北京市公安局备案编号: 京ICP备:号21ic官方微信-->
后使用快捷导航没有帐号?
STM32F030 AD采样怎么每个通道是MCU供电电压值呢?
&&未结帖(20)
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
这样在主程序中读取,并显示行不行?实际上我现在用你的给那个代码试了,没有显示,也就是说没有DMA转换 ...
我 读取ADC结果部分 代码:
for(i=0;i&10;i++)& & & & & & & & // ???,?¨ADC?????¨u?????????10??ADC 1/2 á??
& &&&/* Test DMA1 TC flag */
& & & & while((DMA_GetFlagStatus(DMA1_FLAG_TC1)) == RESET )
& & & & {};
/* Clear DMA TC flag */
DMA_ClearFlag(DMA1_FLAG_TC1);
adc_buf=ADC_ConvertedValue[channel];
delay(1000);& &&&
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
非常感谢你这位热心的朋友!我搞这个AD采样几天了,一直没有解决
我 读ADC结果部分 的 代码:
for(i=0;i&10;i++)& & & & & & & & // ???,?¨ADC?????¨u?????????10??ADC 1/2 á??
& &&&/* Test DMA1 TC flag */
& & & & while((DMA_GetFlagStatus(DMA1_FLAG_TC1)) == RESET )
& & & & {};
/* Clear DMA TC flag */
DMA_ClearFlag(DMA1_FLAG_TC1);
adc_buf=ADC_ConvertedValue[channel];
delay(1000);& &&&
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
我 读取ADC结果部分 代码:
我现在用的是你给的代码,没有显示。& &DMA1_FLAG_TC1&&这个标志位一直是0
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
我现在用的是你给的代码,没有显示。& &DMA1_FLAG_TC1&&这个标志位一直是0
你 程序其他地方 有没有问题 啊
你实验一下 你之前的 程序,把程序其他 部分 全部 屏蔽 掉,
只进行 一路ADC采样,转换出来不要 换算,直接 显示ADC数字量,看 结果 如何
我 能 分享给 你的 就是,我 的 GPIO&&ADC&&DMA是怎么 配置的 ,还有ADC结果是怎么读的 ,至于你 怎么参考怎么整合& &还有排错,还 是 主要靠你
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 154, 距离下一级还需 146 积分
中级技术员, 积分 154, 距离下一级还需 146 积分
我现在用的是你给的代码,没有显示。& &DMA1_FLAG_TC1&&这个标志位一直是0
在给 你看 一下我 的 行 初始化阿斯 怎么 调用GPIO& &ADC& &DMA初始化的
void&&system_initial(void)
//------------------------------
//?u???±?????????? 1/2 ???main()?(R)?°???? 3/4 -?????? 1/4 ?AE????? 1/4 ?startup_stm32f030.s
//------------------------------
GPIO_configure();
&&display_clear();& & & &
ADC_configure();
DMA_configure();
USART_configure();& & & &
tim3_configure();
nvic_configure();
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
在给 你看 一下我 的 行 初始化阿斯 怎么 调用GPIO& &ADC& &DMA初始化的
void&&system_initial(void)
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
#define ADC1_DR_Address& && && && && & 0x
__IO uint16_t ADC1ConvData[4];
void ADC1_DMA_Init(void)
&&ADC_InitTypeDef& &&&ADC_InitS
&&DMA_InitTypeDef& &&&DMA_InitS
& & & & GPIO_InitTypeDef& & GPIO_InitS
& & & && &/* ADC1 DeInit */&&
&&ADC_DeInit(ADC1);
& & & & /* Enable&&GPIOA clock */
& & & && &RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
&&/* ADC1 Periph clock enable */
&&RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);
&&/* DMA1 clock enable */
&&RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1 , ENABLE);
&&/* Configure PA.01&&as analog input */
&&GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3;
&&GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AN;
& & & & GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL ;
&&GPIO_Init(GPIOA, &GPIO_InitStruct);& & & & & & & & & & & & & & & & // PC1,输入时不用设置速率
&&/* DMA1 Channel1 Config */
&&DMA_DeInit(DMA1_Channel1);
&&DMA_InitStruct.DMA_PeripheralBaseAddr = (uint32_t)ADC1_DR_A
&&DMA_InitStruct.DMA_MemoryBaseAddr = (uint32_t)ADC1ConvD
&&DMA_InitStruct.DMA_DIR = DMA_DIR_PeripheralSRC;
&&DMA_InitStruct.DMA_BufferSize =4;
&&DMA_InitStruct.DMA_PeripheralInc = DMA_PeripheralInc_D
&&DMA_InitStruct.DMA_MemoryInc = DMA_MemoryInc_E
&&DMA_InitStruct.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfW
&&DMA_InitStruct.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfW
&&DMA_InitStruct.DMA_Mode = DMA_Mode_C
&&DMA_InitStruct.DMA_Priority = DMA_Priority_H
&&DMA_InitStruct.DMA_M2M = DMA_M2M_D
&&DMA_Init(DMA1_Channel1, &DMA_InitStruct);
&&/* DMA1 Channel1 enable */
&&DMA_Cmd(DMA1_Channel1, ENABLE);
//& &/* ADC DMA request in circular mode */
&&ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);
&&/* Enable ADC_DMA */
//&&ADC_DMACmd(ADC1, ENABLE);&&
&&/* Initialize ADC structure */
&&ADC_StructInit(&ADC_InitStruct);
&&/* Configure the ADC1 in continous mode withe a resolutuion equal to 12 bits&&*/
&&ADC_InitStruct.ADC_Resolution = ADC_Resolution_12b;
&&ADC_InitStruct.ADC_ContinuousConvMode = ENABLE;
&&ADC_InitStruct.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_N
&&ADC_InitStruct.ADC_DataAlign = ADC_DataAlign_R
&&ADC_InitStruct.ADC_ScanDirection = ADC_ScanDirection_U
&&ADC_Init(ADC1, &ADC_InitStruct);
//& &/* Convert the ADC1 temperature sensor&&with 55.5 Cycles as sampling time */
//& &ADC_ChannelConfig(ADC1, ADC_Channel_TempSensor , ADC_SampleTime_55_5Cycles);&&
//& &ADC_TempSensorCmd(ENABLE);
&&/* Convert the ADC1 Vref&&with 55.5 Cycles as sampling time */
&&ADC_ChannelConfig(ADC1, ADC_Channel_0&&, ADC_SampleTime_55_5Cycles);
& & & & ADC_ChannelConfig(ADC1, ADC_Channel_1&&, ADC_SampleTime_55_5Cycles);
& & & & ADC_ChannelConfig(ADC1, ADC_Channel_2&&, ADC_SampleTime_55_5Cycles);
& & & & ADC_ChannelConfig(ADC1, ADC_Channel_3&&, ADC_SampleTime_55_5Cycles);
//& &ADC_VrefintCmd(ENABLE);
&&/* ADC Calibration */
&&ADC_GetCalibrationFactor(ADC1);
&&ADC_DMACmd(ADC1, ENABLE);
&&/* Enable ADC1 */
&&ADC_Cmd(ADC1, ENABLE);& &&&
&&/* Wait the ADCEN falg */
&&while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADEN));
&&/* ADC1 regular Software Start Conv */
&&ADC_StartOfConversion(ADC1);
//=======================================
& & & & & & & & & & & & Free_WWDG();
& & & & & & & &
& & & & & & & &
& & & & & & & & & & & & ADC_ConvertedValueLocal= ADC1ConvData[0];
& & & & & & & & & & & & delay(2);
& & & & & & & & & & & & Display(0,0,ADC_ConvertedValueLocal);
& & & & & & & &
& & & & & & & & & & & & ADC_ConvertedValueLocal= ADC1ConvData[1];
& & & & & & & & & & & & delay(2);
& & & & & & & & & & & & Display(40,0,ADC_ConvertedValueLocal);
& & & & & & & &
& & & & & & & & & & & & ADC_ConvertedValueLocal= ADC1ConvData[2];
& & & & & & & & & & & & delay(2);
& & & & & & & & & & & & Display(0,1,ADC_ConvertedValueLocal);
& & & & & & & &
& & & & & & & & & & & & ADC_ConvertedValueLocal= ADC1ConvData[3];
& & & & & & & & & & & & delay(2);
& & & & & & & & & & & & Display(40,1,ADC_ConvertedValueLocal);
& & & & & & & &
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
/* Private typedef -----------------------------------------------------------*/
/* Enable ADC_DMA */
&&ADC_DMACmd(ADC1, ENABLE);&&
ADC DMA 开启一定放在ADC1校准后面,否则通道会混乱了
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
主题帖子积分
专家等级:结帖率:100%打赏:0.00受赏:21.10
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
& &/* Enable&&GPIOA clock */
& && &&&RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
GPIOA不是在AHB上 是在APB2上
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
主题帖子积分
专家等级:结帖率:100%打赏:0.00受赏:21.10
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
RCC_AHBPeriph_GPIOA这个不会产生编译错误么?
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
主题帖子积分
专家等级:结帖率:100%打赏:0.00受赏:21.10
主题帖子积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
资深工程师, 积分 16966, 距离下一级还需 3034 积分
噗。。。。。。我搞错了。。。。。030和103不一样。。。。。。。
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 135, 距离下一级还需 165 积分
中级技术员, 积分 135, 距离下一级还需 165 积分
噗。。。。。。我搞错了。。。。。030和103不一样。。。。。。。
我最后贴出那个代码是调试可以用的
主题帖子积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
/* Enable&&GPIOA clock */
& && &&&RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
GPIOA不是在 ...
请问哪个对啊?
主题帖子积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
中级工程师, 积分 3704, 距离下一级还需 1296 积分
恭喜LZ搞定了,我试了三个礼拜了还没有好啊
主题帖子积分
助理工程师, 积分 1788, 距离下一级还需 212 积分
助理工程师, 积分 1788, 距离下一级还需 212 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
助理工程师, 积分 1788, 距离下一级还需 212 积分
助理工程师, 积分 1788, 距离下一级还需 212 积分
3039是ADC采样的数字量,实际对应地电压值需要再转换的
主题帖子积分
中级工程师, 积分 3890, 距离下一级还需 1110 积分
中级工程师, 积分 3890, 距离下一级还需 1110 积分
主题帖子积分
专家等级:结帖率:100%打赏:0.00受赏:5.00
主题帖子积分
中级工程师, 积分 3890, 距离下一级还需 1110 积分
中级工程师, 积分 3890, 距离下一级还需 1110 积分
这个没法做吧,我是不会。
主题帖子积分
初级工程师, 积分 2742, 距离下一级还需 258 积分
初级工程师, 积分 2742, 距离下一级还需 258 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
初级工程师, 积分 2742, 距离下一级还需 258 积分
初级工程师, 积分 2742, 距离下一级还需 258 积分
没用过,都是直接采用了内部的参考,然后随便做做
主题帖子积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
GPIO口改为 GPIO_Mode_AN&&模式
主题帖子积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
主题帖子积分
专家等级:结帖率:0%打赏:0.00受赏:15.00
主题帖子积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
助理工程师, 积分 1261, 距离下一级还需 739 积分
ADC DMA 开启一定放在ADC1校准后面,否则通道会混乱了,这个学习了
主题帖子积分
助理工程师, 积分 1470, 距离下一级还需 530 积分
助理工程师, 积分 1470, 距离下一级还需 530 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
助理工程师, 积分 1470, 距离下一级还需 530 积分
助理工程师, 积分 1470, 距离下一级还需 530 积分
呵呵,这帖子都过去这长时间了,想必楼主的问题早已经解决了吧。。现在也是遇到了类似的问题了。。进来看看。。
技术奇才奖章
人才类勋章
奔腾之江水
发帖类勋章
时间类勋章
精英会员奖章
等级类勋章
突出贡献奖章
等级类勋章
湍急之河流
发帖类勋章
技术导师奖章
人才类勋章
时间类勋章

我要回帖

更多关于 stm32 ad 电压范围 的文章

 

随机推荐