【问题】Delay_us等延时函数与HAL库延迟函数冲突导致程序卡死

摘要: 今天使用了OLED驱动代码,其中为了适应MCU较高速度而加入了Delay_us(4),后来再调用HAL库的HAL_Delay()出现了程序卡死在HAL库延迟函数之中。为此对延迟函数作进一步学习。 问题原因 首先是Delay_us()函数原型(代码来源江科大的代码) void Delay_us(uin 阅读全文
posted @ 2025-02-04 22:19 fhbui 阅读(10) 评论(0) 推荐(0) 编辑

[debug记录] UART数据收发

摘要: 程序无法进入HAL_UART_RxCpltCallback 配置接收中断后需要使能接收中断,方式有如下三种。 //使能RX接受中断(三种方式) SET_BIT(USART1->CR1, USART_CR1_RXNEIE); __HAL_UART_ENABLE_IT(&uart1_handle,UAR 阅读全文
posted @ 2025-01-26 16:25 fhbui 阅读(9) 评论(0) 推荐(0) 编辑

DMA笔记

摘要: PSIZE:外设数据宽度 MSIZE:存储器数据宽度 DMA工作流程 一个DMA控制器有8个数据流,其中的每个数据流有8个通道与其他外设连接。当一个外设请求占用某一数据流通道时,相同数据流的其他通道处于不可用状态。 8个数据流会进入仲裁器,仲裁器会先后根据软件上的数据流优先级配置、硬件上的数据流编号 阅读全文
posted @ 2025-01-26 09:34 fhbui 阅读(8) 评论(0) 推荐(0) 编辑

[HAL库] UART使用记录

摘要: 标志位 USART_SR_TC:发送完成标志(Transmission Complete); 轮询收发 不带后缀的UART收发函数 HAL_UART_Transmit 、HAL_UART_Receive 是阻塞的,其内部调用了 UART_WaitOnFlagUntilTimeout ,来等待UART 阅读全文
posted @ 2025-01-09 06:57 fhbui 阅读(12) 评论(0) 推荐(0) 编辑

[阅读记录]《在森崎书店的日子》

摘要: 2024/12/28,读完 (看情节觉得角色的行为、想法不现实,会不会是自己带着有色眼镜,没有深入理解、体会角色?算是看得比较顺畅的书了,上了大学就很久没像这样看书了,对这本书的总体评价还是不错。) 书中很多人都非常温柔,围绕森崎书店的每个人都用心彼此相待、彼此关怀。 桃子舅妈的故事可能是全书中最悲 阅读全文
posted @ 2024-12-28 18:30 fhbui 阅读(9) 评论(0) 推荐(0) 编辑

通信协议整理(I2C、UART、SPI)

摘要: 通信特征 (从数据传输方向上): 单工:数据只能单一方向传输; 半双工:数据能在两个方向传输,但同一时刻只能在一个方向; 双工:数据能同时在两个方向传输; I2C I2C在物理层上有SCL和SDA两条线将主机和从设备连接,并有上拉电阻连接。 SCL工作逻辑: 空闲时为高电平,通信开始后拉低 通信过程 阅读全文
posted @ 2024-12-26 22:36 fhbui 阅读(20) 评论(0) 推荐(0) 编辑

使用STM32定时器输入捕获的一些记录

摘要: (最近在学习六步换相驱动直流无刷电机,记录一下其中陌生的定时器功能) 英文标识含义 TIx:TIM Input; 霍尔传感器接口 霍尔传感器接口大概功能逻辑: 将CH1~3的输入连接到异或器,输出TI1,实现同时对三个信号的边沿检测; TI1经过滤波、边沿检测 -> TI1F_ED信号 -> TRC 阅读全文
posted @ 2024-12-20 08:28 fhbui 阅读(76) 评论(0) 推荐(0) 编辑