雨特宙科技

欢迎来到雨特宙科技

探索未知,扩展人生

嵌入式操作系统

freertos

总体介绍

全局变量

  • pxReadyTasksLists是一个链表数组,每个就绪的任务都会被添加到该数组对应优先级的链表中
    xSuspendedTaskList是一个链表,挂起的任务将会被添加到这个链表中,并不再参与系统调度直到有任务调用恢复接口将该任务恢复
    pxCurrentTCB指向当前任务的TCB
  • 当调用函数vTaskStartScheduler后,xSchedulerRunning会被设置为pdTRUE,当调用函数vTaskEndScheduler后,xSchedulerRunning会被设置为pdFALSE,函数vTaskStartScheduler和vTaskEndScheduler可以在适当的时候被调用。

GPIO

通过寄存器地址来修改位值。https://www.nowcoder.com/discuss/460819659290394624

数据库

通讯协议

https://www.nowcoder.com/discuss/413289272839614464?sourceSSR=search

USB协议

  • USB 采用小端字节顺序,在总线上先传输一个字节的最低有效位,最后传输最高有效位,采用NRZI 编码,
  • 若遇到连续的6 个1 要求进行为填充,即插入一个0。
  • 所有的USB 包都由SYNC 开始,高速包的SYNC 宽度为32bit,全速/低速包的SYNC段度为8bit。
  • 实际接收到的SYNC 产度由于USB HUB 的关系,可能会小于该值。
  • USB 是一种支持热插拔的高速串行传输总线,它使用差分信号来传输数据。USB 支持“总线供电”和“自供电”两种供电模式。在总线供电模式下,设备最多可以获得500mA 的电流。USB 体系包括“主机”、“设备”以及“物理连接”三个部分,一个USB 系统中仅有一个USB 主机。USB 体系采用分层的星型拓扑来连接所有USB 设备。

CAN总线

  • CAN总线竞争优先级的策略如下:
    在总线空闲态,最先开始发送消息的单元获得发送权。
    多个单元同时开始发送时,各发送单元从仲裁段的第一位开始进行仲裁。连续输出显性电平最多的单元可继续发送。
    具有相同 ID 的数据帧和遥控帧在总线上竞争时,仲裁段的最后一位(RTR)为显性位的数据帧具有优先权,可继续发送。
    标准格式 ID 与具有相同ID 的遥控帧或者扩展格式的数据帧在总线上竞争时,标准格式的RTR 位为显性位的具有优先权,可继续发送。

GPIO映射

  • STM32 内置外设是与I/O口共用引出管脚,所有内置外设的外部引脚都是与标准GPIO引脚复用的,如果有多个复用功能模块对应同一个引脚,只能使能其中之一,其它模块保持非使能状态。
  • 晶体振荡器的引脚在不接晶体时,可以作为普通I/O口。GPIO映射方便了PCB的设计同时减少了潜在的信号交叉干扰。

定时器模块

  • ①PSQ(分频寄存器)、APR(比较寄存器)、TCNT(计数寄存器)为定时器核心寄存器
    ②为了确保输出脉冲信号为理想需求的,减小输出偏差,一般常规操作是在定时器未开始工作时或者停止工作时,完成核心寄存器的配置

指针

  • 32位系统下任何类型指针的长度都是4个字节;指针的数据类型声明的是指针实际指向内容的数据类型;野指针是指向未分配或者已经释放的内存地址

符号运算

  • 位运算中,操作数每右移一位,相当于操作数除以2

SPI

  • SPI总线中,有两个比较核心的两个名词,分别是时钟极性(CKP)和时钟相位(CKE),这两个的含义如下:
    CKP = 0:时钟空闲IDLE为低电平 0
    CKP = 1:时钟空闲IDLE为高电平1
    CKE = 0:在时钟信号SCK的第一个跳变沿采样
    CKE = 1:在时钟信号SCK的第二个跳变沿采样
    上面的时钟极性和时钟相位配合,组成了SPI的四种模式,分别是以下四种
    CKP = 0 CKE = 0
    CKP = 0 CKE = 1
    CKP = 1 CKE = 0
    CKP = 1 CKE = 1

platform总线

  • 当注册驱动时,只有match成功后,才会执行该驱动对应的probe函数
    当在platform上注册驱动时,会遍历总线上的设备链接,挨个查找与该驱动匹配的设备
    当在platform上注册设备时,会遍历总线上的驱动链接,挨个查找与该设备匹配的驱动
    总线在注册时,可以提供该总线对应match函数,下面是platform总线和I2C总线注册时的struct bus_type定义,从该定义可以看出,这两个总线中的match函数不同

任务

  • OSPendMulti()用来等待多个内核对象,调用 OSPendMulti()时,如果这些对象中有多个可用,则所有可用的信号量和消息都将返回给调用者,如果没有任何对象可用,则OSPendMulti()将挂起当前任务。OSQPost(),OSSemPost()和OSMutexPost()分别是消息队列,信号量和互斥信号量的发送函数。

计算机网络

OSI:物,数,网,传,会,表,应。osi

网络地址:分为网络号和主机号。

数据传输:封装与解封装。

TCP/IP

  • 体系结构:物,数,网,传,应。

无线局域网WLAN

  • 物理层,数据链路层
  • MAC层定义了3种访问控制机制。1.CSMA/CA:载波侦听多路访问/冲突避免,可以解决隐蔽站的问题。
    2.分布式协调功能DCF
    3.点协调功能PCF

C语言

进程

qt

  • 打开界面/opt/Qt5.12.9/Tools/QtCreator/bin/qtcreator.sh &

软考

posted @ 2023-11-01 23:27  YTZt  阅读(64)  评论(0编辑  收藏  举报