2019-07-14 18:32发布
你我然后 发表于 2018-8-16 06:57 MSP是指和MCU相关的初始化,举个例子就可以理解: 比如串口的初始化 1、我们要初始化和MCU无关的东西:例如串口协议,其中包括波特率,奇偶校验,停止位等等,这些设置和使用什么样的MCU没有任何关系,可以使用F1的MCU,也可以是F2...F4,甚至是PC上的串口。所以就把串口抽像成为一个“串口”。
bin548 发表于 2018-8-16 10:09 谢谢你精彩的回复! 不知道 哪里有关于STM32 HAL 库框架的说明。
最多设置5个标签!
谢谢你精彩的回复!
不知道 哪里有关于STM32 HAL 库框架的说明。
如果用DMA 进行串口传输,那么第一步是怎样,第二步应该怎样~~~~~
另外你说
“ 在STM32的HAL驱动中MSP_Init()是做为回调,包含在PPP_Init()中的。”
但是我用Cube 生成了基本工程,添加了DMA和UART1 的外设。
看了HAL_UART_MspInit 没有在工程中被调用到!!!!你所谓的回调 具体是在哪里呢?
main () 进来之后
HAL_Init(); --======》里做了两件事 HAL_InitTick(TICK_INT_PRIORITY); 和 HAL_MspInit();
而 HAL_MspInit(); ======》
HAL_NVIC_SetPriority(SVC_IRQn, 0, 0);
HAL_NVIC_SetPriority(PendSV_IRQn, 0, 0);
HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
就没有调用HAL_UART_MspInit
而HAL_Init(); 之后 也就是 所谓的MX_PPP_Init()
MX_GPIO_Init();
MX_DMA_Init();
MX_USART1_UART_Init();
这些函数里面也没有调用到HAL_UART_MspInit
所以你说的回调,具体是怎么个回调法?
去看看工程启动顺序以及.s文件
一周热门 更多>