> For the complete documentation index, see [llms.txt](https://oceanaparts.gitbook.io/halnote/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://oceanaparts.gitbook.io/halnote/zhun-bei.md).

# 准备

### 看门狗

* 独立看门狗（IWDG)由专用的低速时钟（LSI)驱动分配，即使主时钟发生故障它仍有效。

对时间精度要求低。

* 窗口看门狗由从APB1时钟分频后得到时钟驱动，最适合那些要求看门狗在精确计时窗口起作用的程序

**功能描述**

在键值寄存器（IWDG\_KR)中写入0xCCCC，开始启用独立看门狗。此时计数器开始从其复位值0xFFF递减，当计数器值计数到尾值0x000时会产生一个复位信号（IWDG\_RESET)。无论何时，只要在键值寄存器IWDG\_KR中写入0xAAAA（通常说的喂狗）, 自动重装载寄存器IWDG\_RLR的值就会重新加载到计数器，从而避免看门狗复位。

### 输入捕获

通过检测TIMx\_CHx上的边沿信号，在边沿信号发生跳变（比如上升沿/下降沿）的时候，将当前定时器的值(TIMx\_CNT)存放到对应的捕获/比较寄存器（TIMx\_CCRx)里面，完成一次捕获。

可以用来捕获高电平的持续时间

### 时钟初始化

以正点原子的为例，使用8M的外部晶振作为高速时钟源，进来后在PLLXTPRE的分叉口选择不直接输入SW选择器，也不以/2的频率进入PLLXTPRE，而是以8M完整的频率进入PLLXTPRE，然后来到PLLSRC进入PLLMUL，以9倍频，即72M输出来到SW选择器，SW选择器以PLLCLK为输入源，即我们倍频得到的72M作为系统时钟的来源，供给后续链路

### 抢占优先级 & 响应优先级区别

高优先级的抢占优先级是可以打断正在进行的低抢占优先级中断的。

抢占优先级相同的中断，高响应优先级不可以打断低响应优先级的中断。

抢占优先级相同的中断，当两个中断同时发生的情况下，哪个响应优先级高，哪个先执行。

如果两个中断的抢占优先级和响应优先级都是一样的话，则看哪个中断先发生就先执行；

共有4种分组，最高16级抢占优先级

### 串口

* 配置串口属性（波特率，字长）
* 开启串口接受中断，操作配置控制寄存器 1(USART\_CR1），中断服务函数只有一个USART1\_IRQHandler
* NVIC配置中断向量
* 使能串口，操作控制寄存器 1(USART\_CR1)
* 在中断中，通过数据寄存器(USART\_DR)（8位）读取接收到的数据，对USART\_DR的读操作即（USART\_ReceiveData）可以SR寄存器的该位清

### 什么时候要开AFIO

具体来说：1、使用重映射时需要。2、使用外部中断时需要

### pwm模式

计数模式

PWM模式：PWM模式1－ 在向上计数时，一旦TIMx\_CNT\<TIMx\_CCR2时通道2为有效电平，否则为无效电平；在向下计数时，一旦TIMx\_CNT>TIMx\_CCR2时通道1为无效电平(OC2REF=0)，否则为有效电平(OC2REF=1)。

有效电平/输出极性：操作CCER寄存器 CC1P位 输入捕获/输出比较极性

### 编码器

并且在编码器输出上会有A、B两路信号，这两路信号可以用于判断编码器的正反转。当A端相位超前B端90度时，编码器正转，否则B端超前A端90度，编码器反转。

也有三相的

### 直流驱动

![image-20230413101239806](https://s2.loli.net/2023/04/13/o15pwGHEchDJCBj.png)

### 步进电机

A4988

同过脉冲数控制位置，通过频率控制转速

42（42是尺寸）步进电机**两相四线步进电机**（两组线圈，每组线圈引出头尾两根线），用“导通测试”档位测试，接到同一组线圈上时会有声响

假如我们把线圈分为A、B两组，以+、-代表不同的电流方向，那么一个通电循环可以视作：

A+ 、B+ 、A- 、B- 。这样一个通电循环，通电次数改变4次，我们称为“4步”。

实际使用的步进电机都不是4步转一圈的，因为这样一方面精度差，另一方面低速性能也很差。我们常用的步进电机一般在结构上设计为200步转一圈，也就是说一步转动360/200=1.8°，我们把这个1.8°称为步进电机的**步距角**。步距角是步进电机生产出来就确定的参数。

![image-20230413103213663](https://s2.loli.net/2023/04/13/Eo3GctLZMfAbT98.png)

### MPU6050

四元数法和卡尔曼滤波的区别主要在于状态变量的表示方式和滤波算法的优化方式。四元数法使用四元数表示姿态角，通过微分方程进行状态更新，比较适用于快速旋转和姿态变化较大的情况。卡尔曼滤波则采用状态向量和协方差矩阵表示状态估计量和方差，通过预测和测量更新状态，比较适用于稳定运动和噪声较大的情况。在实际应用中，可以根据场景和需求选择合适的算法进行姿态估计。

### 杂记

最近三年的职业规划：第一阶段：熟悉业务，提高自己的专业和技能水平，让自己能胜任这个职位。第二阶段：稳定提升，除了做好本职工作，持续学习本专业知识，同时对公司各个部门有全面的了解。第三阶段：不断学习，不断提升，横向拓展自己的业务能力，寻求 更多的发展机会，给公司带来更大的价值。 电子工程师面试题：

1. 电阻，电容，电感封装的含义：0402，0603，0805 表示器件的尺寸参数。0402：表示器件长40mil 宽20mil
2. 电容的精度：J:+-5%,K:+-10%,M:+-20%,Z:+80%\~20%
3. 电阻封装大小与电阻值、额定功率有关； 电容封装大小与电容值、额定电压有关； 电感封装大小与电感量、额定电路有关。
4. 为什么OD（开漏）和OC（开集）门输出必须加上上拉电阻？ 因为MOS管和三极管关闭时，漏极D和集电极C是高阻态，输出无确定电平，必须提供上拉电平，确定高电平时的输出电压。
5. LDO（低压差线性稳压器）的型号：AMS1117，LM7805
6. DC-DC控制器型号：LM2596
7. DC-DC与LDO的区别 ： 低压差线性稳压器（low dropout voltage regulator），仅能使用在降压应用中。也就是输出电压必需小于输入电压。

优点：稳定性好，负载响应快。输出纹波小。 缺点：效率低，输入输出的电压差不能太大。负载不能太大，目前最大的LDO为5A（但要保证5A的输出还有很多的限制条件） DC/DC多指开关电源。具有很多种拓朴结构，如BUCK（降压）。BOOST（升压）等。 优点：效率高，输入电压范围较宽。 缺点：负载响应比LDO差，输出纹波比LDO大。 8. 看门狗的工作原理：两个重要信号：时钟输入和复位输出 电路工作时，CPU送出时钟信号给看门狗，即喂狗 如果系统出现故障，无法送出连续的时钟信号，看门狗即输出复位信号给CPU，复位系统。 9. 耦合：可使能量从一个电路传送到另一个电路，或由电路的一个部分传送到另一个部分 去耦：阻止从一个电路或反馈能量到另一个电路，防止发生不可预测的反馈，影响下一级放大器或其他电路正常工作

旁路：将混有高频信号和低频信号的信号中的高频成分通过电子元器件过滤掉，只允许低频信号输入到下一级，而不需要高频信号进入 滤波：滤波是将信号中特定波段频率滤除的操作，是抑制和防止干扰的一项重要搓丝 10. UART：异步通信 USRT：同步通信 USART：通用同步异步通信 11. 串口异步通讯的字符帧由起始位、数据位、奇偶校验位和停止位四部分组成。 12. 差分平衡电平接口：CAN,USB 13. 通孔：贯穿整个PCB的过孔 盲孔：是从PCB表层连接到内层的过孔 埋孔：埋在PCB内层的过孔 14. 常用逻辑电平：12，5，3.3 15. 锁存器：一位触发器只能传送或存储一位数据 触发器：能够存储一位二值信号的基本单元电路称为“触发器” 寄存器：在实际的数字系统中，通常把能够用来存储一组二进制代码的同步时序逻辑电路成为寄存器。 16. 基本放大电路：共发射极放大电路，共基极放大电路，共集电极放大电路

17. 锁相环PLL是一种反馈电路，起作用是使得电路上的时钟和某一外部时钟的相位同步。
18. 电阻的作用：分流，限流，分压，偏置，阻抗匹配。
19. 电容的作用：隔直流，旁路，耦合，滤波，补偿，充放电，储能
20. 电感的作用：滤波，陷波，震荡，储存磁能
21. 单片机中地的种类：数字地，模拟地，功率低，信号地，交流地，屏蔽地
22. 二极管的应用电路：限幅电路，钳位电路，开关电路，整流电路（交变直）
23. 旁路电容：产生一个交流分路，从而消去进入 易感区的那些不需要的能量。 去耦电容：提供一个局部的直流电源给有源器件，以减少开关噪声在板上的传播和将噪声引导到地（他的取值大约为旁路电容的1/100到1/1000）
24. 单片机上电后没有运转，首先应确认电源电压是否正常，再检查复位引脚电压是否正常，分别测量按下复位按钮和放开复位按钮的电压值，看是否正确，然后再检查晶振是否起振了，用示波器来看晶振引脚的波形。
25. FPGA:可编程ASIC，ASIC：专用集成电路，面向专门用途的电路，专门为一个用户设计和制造的。
26. 半导体二极管：1.按材质分：硅二极管锗二极管，按用用途分：整流二极管，发光二极管，稳压二极管。
27. 场效应管是电压控制元件，而晶体管是电流控制元件。
28. 串口通讯：是指外设和计算机间，通过数据信号线、地线等，按位进行传输数据的一种通讯方式。
29. 单工：数据传输是单向的。通信双方中，一方固定为发送端，一方固定为接收端。信息只能沿一个方向传输，使用一个传输线。 半双工：通信使用同一根传输线，既可以发送数据也可以接受数据，但不能同时进行发送和接收。 全双工：通信允许数据同时再两个方向上传输。
30. 主机与从机：在通讯系统中起主要作用，发布主要命令的称为主机，接收命令的称为从机。 连续方式：指主机不需要发布命令，从机就能自主地向主机发送数据。 指令方式：指主机向从机发布命令，从机根据指令执行动作，并将结果“应答”给主机的模式。
31. RS232是计算机与通信工业应用中最广泛一种串行接口。它以全双工方式工作，需要地线、发送线、接收线三条线。 +3\~+15v为逻辑0，-3v\~-15v为逻辑1
32. TTL是双极晶体管构成，为电流控制器件，TTL电路电源电压是5v，TTL电路不适用的输入端悬空为高电平。 CMOS是场效应管构成，为电压控制器件，电路电源电压一般为12v，不使用的输入端不能悬空，会造成逻辑混乱。 TTL电平标准：输出低电平要小于0.8v，高电平要大于2.4v，输入，低于1.2v久认为0，高于 2.0v就认为1
33. USB转TTL串口的芯片有哪些：CH340
34. MAX232芯片是TTL电平与RS232电平的专用双向转换芯片，可以 TTL转232，也可以232转TTL
35. RS232传输距离远，TTL的传输距离短，其一般用于芯片间的短距离通讯。
36. I2C总线是一种串行、半双工总线，通过两根线（串行时钟线SCL和串行数据线SDA）便能实现总线上各器件的同步数据传送。也就是说它可以用来实现多机系统的串口同步通信。
37. 串行通信：所有的数据以位单位在SDA线上串行传输。 同步通信：即双方工作在同一时钟下，一般是通信的a方通过一根CLK信号线，将A设备的时钟传输到B设备，B设备在A设备传输的时钟下工作，同步通信的特征：通信线中CLK。
38. 主机：掌控总线的使用权，并产生串行时钟信号及起始和停止条件的设备。 从机：接收时钟信号并供主机寻址的设备
39. SPI是一种高速、全双工、同步通信协议，可以无中断传输数据，可以连续地发送或接收任意数量的位。 而在I2C和UART中，数据以数据包的形式发送，有着限定位数
40. SPI通信协议包含四种信号线：MOSI,主机输出，从机输入 MISO，主机输入，从机输出 SCLK，时钟信号 SS/CS，片选信号
41. 在SPI中的每个时钟周期传输一位数据，因此数据传输的速度取决于时钟信号的频率。时钟信号由于是主机配置生成的，因此SPI通信时钟由主机启动。
42. 主机通过拉低从机的片选CS/SS来使能通信，在空闲/非传输状态下，片选线保持高电平，在主机上可以存在多个CS/SS引脚，使得主机与多个不同的从机进行通讯。
43. 主机输出时钟信号，主机拉低片选信号，激活从机，主机通过MOSI将数据发送给从机，如果需要响应，则从机通过MISO将数据返回给主机
44. SPI通讯无起始位和停止位，因此数据可以连续流传输而不会中断，没有像I2C这样负责的从站 寻址系统，数据传输速率比I2C更高，几乎快两倍，独立的MISO和MOSI线路，可以同时发送和接受数据。 但是SPI使用四根线，没有信号接收成功的确认，没有任何形式的错误检查。
45. UART即通用异步收发器，是一种通用的串行、异步通信总线，该总线由两条数据线，可以实现全双工发送和接受，在嵌入式系统中常用于主机和辅助设备之间的通信。 发送UART从数据总线获取并行数据后，它会添加一个起始位，一个奇偶校验位和一个停止位来组成数据包并从Tx引脚上逐位串行输出，接收UART在其Rx引脚上逐位读取数据包
