完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
大家好,以前一直用STM8S103,做AD采样时通过读取通道7可以计算出当前电源电压,现在改用STM8S105K4T6,用读取通道7的方法得到的全是0,请问用过这个芯片的朋友指点一下,怎么才能读到内部1.22V基准电压,谢谢啦~
|
|
相关推荐
2个回答
|
|
|
要仔细看下手册AD部分的通道是不是有连接基准源的
|
|
|
|
|
|
大家好,关于STM8S105K4T6读取内部1.22V基准电压的问题,我为您提供以下解决方案:
1. 首先,确保您的STM8S105K4T6已经正确连接并上电。 2. 在您的代码中,您需要配置ADC(模拟-数字转换器)以读取内部基准电压。以下是配置ADC的基本步骤: a. 使能ADC时钟:在您的代码中,添加以下语句以使能ADC时钟: ``` CLK_PeripheralClockConfig(CLK_Peripheral_ADC1, ENABLE); ``` b. 初始化ADC:使用`ADC_DeInit()`函数对ADC进行去初始化。 c. 配置ADC通道:使用`ADC_Init()`函数配置ADC通道。对于STM8S105K4T6,内部基准电压通道为ADC_Channel_17。以下是配置示例: ``` ADC_Init(ADC1, ADC_Resolution_12bit, ADC_SchmittTriggerChannel_All, ADC_SampleTime_54Clocks5); ``` d. 选择ADC通道:使用`ADC_RegularChannelConfig()`函数选择ADC通道。以下是选择内部基准电压通道的示例: ``` ADC_RegularChannelConfig(ADC1, ADC_Channel_17, 1, ADC_Align_Right); ``` e. 启动ADC:使用`ADC_StartConversion() `函数启动ADC转换。 3. 读取内部基准电压:在ADC转换完成后,使用`ADC_GetConversionValue()`函数读取转换结果。以下是读取示例: ``` uint16_t adc_value = ADC_GetConversionValue(ADC1); ``` 4. 计算内部基准电压:根据STM8S105K4T6的数据手册,ADC转换结果与实际电压之间的关系为: ``` Vref = adc_value * (1.22V / 4095) ``` 其中,adc_value是读取到的ADC转换结果。 通过以上步骤,您应该可以成功读取STM8S105K4T6的内部1.22V基准电压。希望这些信息对您有所帮助! |
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
4207 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
3263 浏览 1 评论
2796 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
2227 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
15169 浏览 2 评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
3169浏览 4评论
stm32f4下spi+dma读取数据不对是什么原因导致的?
1943浏览 3评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
2110浏览 3评论
2020浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
2218浏览 3评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 12:51 , Processed in 0.684305 second(s), Total 77, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3319