摘要:
同步与互斥 同步:两任务要协调 互斥:两任务要争用 举一个例子。在团队活动里,同事A先写完报表,经理B才能拿去向领导汇报。经理B必须等同事A完成报表,AB之间有依赖,B必须放慢脚步,被称为同步。在团队活动中,同事A已经使用会议室了,经理B也想使用,即使经理B是领导,他也得等着,这就叫互斥。经理B跟同 阅读全文
摘要:
创建任务的接口函数 osThreadNew 和 xTaskCreate 都是用于创建任务(线程)的函数,但它们属于不同的接口和框架。 接口层级: xTaskCreate: 是 FreeRTOS 的原生 API 直接用于创建任务,属于 FreeRTOS 的核心函数。这是一个更低级的接口,直接与 Fre 阅读全文
摘要:
Unix时间戳:从1970年1月1日零点计数的一个很大的数值 在计算机底层是时间戳计数,然后将其转换为人类看的正常日期 RTC的时钟来源:一般采用LSE (可以VBAT供电,且是RTC专用 32.768KHZ(2^15)使用15位计数器进行自然溢出,可以得到1HZ,计时一秒) 上图中的余数寄存器是一 阅读全文
摘要:
软件模拟的SPI和硬件实现SPI(SPI外设) SPI(串行外设接口)协议 四根通信线:SCK(串行时钟线) MOSI(Master output slave input)主机输出从机输入 MISO(主机输入从机输出) SS(从机选择)有时也叫CS MOSI和MISO有时也叫DO和DI 同步,全双工 阅读全文
摘要:
在STM32中,可以使用硬件I2C和软件I2C来实现I2C通信。它们之间的区别如下: 硬件I2C:1. 使用STM32芯片内部的硬件模块来实现I2C通信,通常是通过专门的I2C外设来实现。2. 硬件I2C具有更高的性能和稳定性,因为它直接由硬件模块来控制,不需要CPU的干预。3. 在一些高速通信或者 阅读全文
摘要:
单端信号和差分信号是两种常见的数字信号传输方式: 单端信号: - 使用单线传输信号,地线作为参考电平。- 发送端将数字信号直接发送到传输线上。- 接收端根据传输线上的电平高低判断数字信号是1还是0。- 优点是实现简单,只需要一条传输线。- 缺点是易受外界电磁干扰,传输距离较短。 差分信号: - 使用 阅读全文
摘要:
串口常用电平标准 USATR 第一步开启串口和GPIO时钟 第二步GPIO初始化,将TX配置成复用输出,RX配置成输入 第三步用结构体配置USART 阅读全文
摘要:
存储器映像 开启DMA时钟 在结构体中配置外设数据和存储器数据 配置转运方向(DIR) M2M 传输计数器数值,以及是否自动重装 开启DMA DMA_SetCurrDataCounter()函数可以单独设置传输计数器的值 DMA_GetFlagStatus()函数的作用是获取指定DMA传输的标志状态 阅读全文
摘要:
结构图 16个外部输入通道和两个内部信号源(温度和Vre),有两种转换模式,分别是注入组和规则组。规则组可以同时转换16个通道,但数据寄存器只能存一个结果,要想前面的通道数据不被覆盖,可以结合DMA来使用,将数据转存到别的地方。而注入组对应四个数据寄存器。 触发开始转换的信号有两种,一种是软件触发, 阅读全文
摘要:
编码器接口的两个引脚借用了输入捕获单元的前两个通道,所以编码器的输入引脚就是定时器的CH1和CH2这两个引脚。 GPIO模式什么时候上拉什么时候使用下拉模式呢?看外部模块,若外部模块默认输出高电平,则选择上拉输入模式,反之,选择下拉模式。如果不确定外部模块的默认状态,尽量选择浮空输入模式,但是这种模 阅读全文