摘要:
不使用Microlib导致卡死的原理在使用CubeMX初始化代码时,生成的工程默认是使用Microlib的,正常情况下,在STM32CubeMX通过成的.s文件里可以看到一个__main函数,这个就是microlib的入口地址,他会完成创建栈空间,创建堆空间,初始化用户可能用到的系统库等初始化动作, 阅读全文
摘要:
打开硬件浮点运算 keil 软件中 Options for Target—>C/C+±–>define中添加定义 ,__TARGET_FPU_VFP,ARM_MATH_CM4,__CC_ARM,__FPU_PRESENT=1U,__FPU_USED=1U Target 选项卡 Ploating Po 阅读全文
摘要:
当串口接收大量数据来不及处理的时候,会出现 overrun error,此时我们需要清标志位 手册上写到,清ORE位需要先读SR寄存器,再读DR寄存器 void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart) { if(HAL_UART_GetEr 阅读全文
摘要:
最近在测试串口收发的时候,发现串口会出现无法接收数据的情况,后来在网上查找资料,发现是库的问题 发送用的 HAL_UART_Transmit,接收数据使用的是中断方式 HAL_UART_Receive_IT HAL_UART_Transmit在发送的过程中,如果这时候来了接收中断,就有可能会出现挂掉 阅读全文
摘要:
https://blog.csdn.net/chengde6896383/article/details/69484357/ https://blog.51cto.com/u_14114084/3651582 阅读全文
摘要:
1、中断里调用 信号量、消息队列等API, 信号量的接收、消息队列的接收都需要等待中断结束后才能响应 2、中断回调函数只能使用中断级API (xxFromISR) 函数 3、比configMAX_SYSCALL_INTERRUPT_PRIORITY优先级高的中断函数中不能使用FreeRTOS的函数 阅读全文
摘要:
https://blog.csdn.net/liangbin414/article/details/94734877?utm_medium=distribute.pc_relevant.none-task-blog-baidulandingword-2&spm=1001.2101.3001.4242 阅读全文
摘要:
原文 https://blog.csdn.net/jiejiemcu/article/details/86715766 FreeRTOS消息队列基于 FreeRTOS 的应用程序由一组独立的任务构成——每个任务都是具有独立权限的程序。这些独立的任务之间的通讯与同步一般都是基于操作系统提供的IPC通讯 阅读全文
摘要:
原文链接 https://blog.csdn.net/yuleitao/article/details/104055748 使用标准库来配置的,可以看我之前的博客https://blog.csdn.net/yuleitao/article/details/103721812这个项目是使用CUBEMX 阅读全文
摘要:
https://blog.csdn.net/bonson2004/article/details/68942442 阅读全文