随笔分类 -  stm32笔记

摘要:初始化和使用都比较简单 void FSMC_SRAM_Init(void) { FSMC_NORSRAMInitTypeDef FSMC_NORSRAMInitStructure; FSMC_NORSRAMTimingInitTypeDef p; GPIO_InitTypeDef GPIO_Init 阅读全文
posted @ 2020-11-13 09:25 R1chie 阅读(1078) 评论(0) 推荐(0)
摘要:一般发生这种情况可能是内存越界操作或堆栈溢出。 排查方法: 1.查看LR的值 首先要查看R14(LR)的值,确定当前堆栈指针是MSP还是PSP。 LR = 0xFFFFFFF9 为主堆栈(MSP),LR = 0xFFFFFFFD为线程堆栈(PSP)。 图中为0xFFFFFFF9,即MSP主堆栈。 2 阅读全文
posted @ 2020-08-25 10:03 R1chie 阅读(2812) 评论(0) 推荐(2)
摘要:如果串口发送了若干个字节后,从一个波特率切换至另一个波特率的时候,应该要延时一会,否则刚刚串口发送的最后一个字节可能会有错误 阅读全文
posted @ 2020-07-14 11:58 R1chie 阅读(1133) 评论(0) 推荐(0)
摘要:空闲接收中断的原理就是在一个字节时间内如果没有收到数据,那么就认为传输结束并触发中断。这个我认为非常依赖于对方的发送时间,如果另一个设备在发送的时候,稍微延时了一点点,就会出现数据接收不完整。建议还是使用定时器模式来接收不定长的数据。 阅读全文
posted @ 2020-07-11 16:49 R1chie 阅读(309) 评论(0) 推荐(0)
摘要:本文以串口4为例子: 在APB1为72MHz的时钟频率下,是设置不了300波特率的,原因在于 Tx/Rx baud = fck / (16 * reg_value) ,reg_value是写进USART_BRR寄存器里。 比如我们要设置300波特率, reg_value = 72000000/ (1 阅读全文
posted @ 2020-07-11 13:46 R1chie 阅读(665) 评论(0) 推荐(0)
摘要:1. 下载FreeRTOS https://sourceforge.net/projects/freertos/files/FreeRTOS/ 一般下载V9.0.0版本比较稳定。 2. 解压 我们需要几个文件 1) 在FreeRTOSv9.0.0/FreeRTOS/Source/下的所有C文件(PS 阅读全文
posted @ 2020-07-06 23:01 R1chie 阅读(718) 评论(0) 推荐(0)