
STM32U5 IWDG的提前唤醒中断无法在STOP模式下触发
求助,移植touchgfx之后stm32不运行程序,keil进入debug倒是可以手动运行
stm32驱动st7735屏幕区分地图上的障碍物.
STM32CubeMX如何设置成中文界面?
STM32CubeMX在配置DCMI的腳位時,在Mode的選項中, 只有8bits, 10bits與12bits, 為何沒有14bits?
STM32N6 cubeAI部署时用的内存是在内部还是外部?
stm32cubumx使用1.28.0固件包无法初始化fsmc
workbench6.3.2生成的代码,无法用pilot电机参数识别,无法通讯
串口DMA + 空闲中断收发 ?
X—CUBE—AI和touchgfx没法同时使用吗
楼主只配置了ADC,没有启动ADC,就好像发动了车,但没有挂挡。
uint32_t ADC_Result[3];int main(void)
{
.
.
HAL_ADC_Start_DMA(&hadc1, (uint32_t*)& ADC_Result, 3);
.
.
.
}
评分
查看全部评分
还需要下面这个函数,判断ADC采样完成。。。
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
{
:::::
}
评分
查看全部评分
另外,配置了还要添加合适的用户代码,比方HAL_ADC_START_DMA();
评分
查看全部评分
您好!
实际上搜代码搜到可用的ADC启动函数有:
HAL_ADC_Start_IT(&hadc1);
HAL_ADCEx_Calibration_Start(&hadc1);
第一个无报错,但MCU不动了——做了个程序计数器,不变,LED也不闪了。
第二个也不报错,所有PWM正常,LED正常,但ADC不知哪里读出数据。
添加您给的,定义变量:
uint32_t ADC_Result[3];
在循环体中添加
HAL_ADC_Start_DMA(&hadc1,(uint32_t*)&ADC_Result,4);
HAL_Delay(50);
val1=ADC_Result[0];
val2=ADC_Result[1];
val3=ADC_Result[2];
val4=ADC_Result[3];
结果倒是显示了,但所有结果都只有ADC 的通道in1有效,通道2,3没有显示出来。
这是什么原因?谢谢
实际上还有一个问题:UART5在STM32CubeMX中设置没有问题,但printf没有结果,也运行自己生成的uart.c了,在此谢谢。
楼主貌似没有正确分配ADC的通道参数了,(还有那个injected模式并不适合混合使用)
1~4rank都一样,都是图上的一个数值。
谢谢
这个问题已解决。
将采样后加个延时再读取数据就一切正常了。
按照采样通道数量(本实例5个,4个外置,1个内部芯温)采用while(tt--)的方式,tt为130正好,150可靠一些。