我们都了解stm32cubeide可以通过配置图形化界面然后直接调用函数就好了。但是做项目的时候,有些特殊情况就不能更改图形化界面,这时候我们就需要自己写初始化函数了.
一个技巧就是可以新建一个工程就是自己对应的芯片 然后根据需求进行配置 通过配置 系统会生成初始化内容 然后直接复制粘贴即可 这里简单介绍一下初始化内容的含义
下面列出DMA对于 ADC1 UART1的初始化 并打开中断
DMA
void MX_DMA_Init(void)
{
/* DMA controller clock enable */
__HAL_RCC_DMA1_CLK_ENABLE();
/* DMA interrupt init */
/* DMA1_Channel1_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
/* DMA1_Channel4_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel4_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel4_IRQn);
/* DMA1_Channel5_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn);
}
具体调度过程请见我的这篇文章下面 有介绍如何找初始化具体内容