-
记一次奇特的debug经历
客户反馈说HA(arm -m7)串口开了DMA后进休眠后自动重启,读RSSR的唤醒源发现是LPACK 先介绍一下LPACK这个唤醒源: 当PCU模块向芯片系统发出即将进入低功耗的消息时,要求各外设模块尽快调整状态准备进入低功耗(相当于要熄灯睡觉了)... -
云途HA SPI外设介绍
首先来看HA的DS手册中对SPI外设的描述:SPI外设的电路系统框图如下所示:通过RM手册的IPC章节可知,SPI模块的外设功能时钟是可选的首先是IPC的DIV分频,是一个四位,范围从0-15;实际上还需要通过PRESCALE来计算SPI的分频,但是... -
IIC协议介绍
IIC由飞利浦公司开发,对硬件的依赖小(如果代码使用的软件IIC,移植起来非常方便),半双工,高位先行,带数据应答。支持总线挂载多设备(一主多从、多主多从) 抗干扰能力弱,低速,短距离(异步时序的好处就是省一根时钟线,节省资源。但对时间要求严格) 同... -
PWM采集方法介绍
本介绍两种常用的PWM采集方法1.TIM的PWM输入捕获2.IO中断+定时器 方法一:定时器的通道的IO存在映射关系,可以把两个通道的信号(TI1,TI2)映射到同一个端口。通过TIM的TI1通道采集PWM的上升沿,TI2来采集PWM的下降沿。这样就... -
SPI通讯协议介绍
本文简单介绍一下SPI这个协议,SPI算是众多协议里相对简单的.本质:串行外设接口(Serial Peripheral Interface Bus,SPI),这些只介绍最基础的SPI,QSPI暂时不做讨论(后续可能会补充)。由于速度快,经常有作大... -
云途 串口发送阻塞与非阻塞API
云途MCU串口数据发送常用的有两套API(其实有三套) 12LINFlexD_UART_DRV_SendDataLINFlexD_UART_DRV_SendDataBlocking 下面简要说明一下带blocking的这个API,为了简明,我把API... -
SPI 读取数据'错位'
在FAE群里面有人说SPI读取的数据出现了错位,然后这个问题我刚好遇到过,遂记录一下可以观察到其实这组数据还是很有规律的 12345正确数据01 02 03 04 05 06 07 08 09错位数据80 81 01 82 02 83 03 84 0... -
freertos PendSV 任务切换函数解析
在freertos中PendSV 中断服务函数是真正实现任务切换的地方,任务切换的本质就是CPU寄存器的切换基本流程:触发PendSV中断 → 硬件自动保存R0-R3, R12, LR, PC, xPSR → 手动保存R4-R11, LR → 切换T... -
云途HA 从Power down模式唤醒后,保持RTC时钟的方法分享
HA进入Power down模式后被唤醒是从main进入,唤醒以后整个系统执行了重新初始化会带来RTC的重新初始化(给人一种好像RTC寄存器丢失的错觉)。在没有执行重新初始化之前,RTC是会保持之前功能; 解决方法简单来说就是:从RSSR中查询复位源... -
国民技术N32A455 R-sram在stop2模式下保持数据的验证
在阅读国民技术A455系列的用户手册时发现该系列有一块大小为16KB的R-sram(Retention SRAM)有点特殊,除去常规SRAM存放程序执行过程中的变量和数据、堆栈的功能外,还可以在STOP2模式下保存数据。 本文旨在验证Rsram在ST...