ST意法半导体
直播中

h1654155275.5661

8年用户 1041经验值
私信 关注
[问答]

通过BLE (BlueNRG-LP)发送ADC值时出现问题怎么解决?

我有 STEVAL-IDB011V1 板。我正在开发电池配置文件,我参考了 ADC_Battery_sensor 和 BLE_sensorDemo 示例,但代码卡在下面的循环中。请让我知道固件中的问题是什么。问题出在 ADC 初始化中吗?请找到随附的固件链接。
/**
* @brief 禁用 ADC 数据输出位的反转(1 的补码)
* 当差分输入连接到 ADC 时
* @rmtoll 配置 BIT_INVERT_DIFF LL_ADC_InvertOutputBitDiffModeDisable
* @param ADCx ADC实例
* @retval 无
*/
__STAtiC_INLINE void LL_ADC_InvertOutputBitDiffModeDisable(ADC_TypeDef *ADCx)
{
CLEAR_BIT(ADCx->CONF, ADC_CONF_BIT_INVERT_DIFF);
}







回帖(1)

邓天文

2022-12-12 10:30:38
我可以确认您使用的 ADC 代码示例在 STEVAL_IDB011 上运行良好。你确认相同吗?我的意思是 STEVAL 上的默认 ADC_Battery_sensor 代码示例(在合并到 BLE_sensorDemo 之前)
  
在你的代码中,我想在合并期间你错过了你的 ADC init 中的一些东西。
此函数是纯 ADC 寄存器读取(无循环)。如果您无法读取寄存器,可能是您没有正确激活 ADC:
请检查 :


  • ADC 时钟被激活,ADC 被启用,...  

/* 外设时钟使能 */
LL_APB1_EnableClock(LL_APB1_PERIPH_ADCDIG | LL_APB1_PERIPH_ADCANA);
/* 不能在 QFN32 封装上调用此函数 */
LL_ADC_LDOEnable(ADC);
/* 启用 ADC */
LL_ADC_启用(ADC);
[...]
举报

更多回帖

发帖
×
20
完善资料,
赚取积分