- 博客(51)
- 收藏
- 关注
原创 第三次PID状态机
通过这种设计,PID 参数可以根据系统状态动态调整,在响应速度和稳定性之间取得平衡。在实时系统中,更新 PID 参数时可能需要关闭中断,确保参数赋值操作的完整性。示例中通过累计误差判断系统状态,实际可根据需求使用其他指标(如误差变化率)。若需更平滑的切换,可对参数进行插值过渡(如线性渐变)。
2025-04-07 22:21:52
144
原创 PID灯控算法
根据代码分析,以下是针对PID算法和光敏传感器系统的优化建议,分为算法优化、代码结构优化和系统级优化三部分:---### **一、PID算法优化**#### 1. **增量式PID + 输出平滑**```c// 修改PID计算函数uint16_t PID_calculation_fun(void) { if(PID_Str_Val.Tdata >= PID_Str_Val.T) { // 增量式PID计算 float delta = PID_Str_
2025-04-07 17:10:01
349
原创 当使用指针访问结构体成员时,要使用 -> 操作符。例如 ui_msg->src_name 等同于 (*ui_msg).src_name,不过 -> 操作符的写法更简洁。
当使用指针访问结构体成员时,要使用 -> 操作符。例如 ui_msg->src_name 等同于 (*ui_msg).src_name,不过 -> 操作符的写法更简洁。
2025-04-07 16:17:12
59
原创 如何查看ota传输过来的数据
查看通过OTA(Over-The-Air)传输过来的数据,通常涉及到几个关键步骤,包括接收数据、验证数据完整性以及解码数据。首先,确保你的设备或系统能够接收来自OTA服务器的数据。这通常涉及到网络通信的设置,如使用HTTP、HTTPS、MQTT或其他协议。HTTP/HTTPS: 通常用于下载固件或软件更新包。你可以使用标准的HTTP客户端库(如Python的requests库,C/C++中的libcurl等)来实现。MQTT: 用于实时数据传输,特别是在物联网设备中。
2025-02-28 08:05:57
406
原创 rssi和rsrp
RSRP(Reference Signal Receiving Power,参考信号接收功率):RSRP是LTE网络中用于代表无线信号强度的关键参数,是在某个符号内承载参考信号的所有资源元素(RE)上接收到的信号功率的平均值。RSSI:由于RSSI反映的是所有接收到的信号总功率,包括不需要的邻频干扰和噪声,因此它更适合用于设备内部的信号强度评估,但不能准确反映信号的可靠性。测量对象:RSSI反映的是某一特定用户收到的总发射功率,包括所有类型的信号和噪声。
2025-02-28 07:59:02
202
原创 如何用万用表确定基极、集电极和发射极
判别三极管(BJT)的基极、集电极和发射极是电子测试中的常见操作,但需结合具体类型(NPN/PNP)和测量方法进行判断。“黑表笔接某一引脚,红表笔接另外两引脚。若两次阻值均小,则黑表笔为NPN基极;否则红表笔为PNP基极。“黑表笔接基极,红表笔接另两引脚。对于NPN,阻值小的为C,大的为E;:原方法存在局限性,仅依赖阻值差异可能导致误判,建议结合放大特性验证。:原描述基本正确,但需明确NPN和PNP的测试逻辑差异。此方法可提高测试准确性,避免因器件特性差异导致的误判。
2025-02-26 08:00:05
856
原创 叠焊和平面焊
例如,[10]提到10层PCB叠层通过多层电路设计提高稳定性,可能叠焊指的是多层堆叠的焊接工艺,而平面焊是单层或某一层的处理。此外,[5]中的脉冲热压机用于FPC与PCB的焊锡连接,可能涉及多层结构的焊接,但同样需要进一步关联。总结:根据现有搜索结果,直接提及叠焊和平面焊区别的信息有限,但结合PCB设计和焊接工艺的知识,可以推断叠焊涉及多层结构或多次焊接,平面焊则是单层处理。可能需要综合推断:叠焊可能指在多层PCB中,各层之间的焊接或连接方式,而平面焊则是在同一层进行的焊接。但需要确认是否有更直接的资料。
2025-02-19 15:30:56
494
原创 printf和sprintf区别
而sprintf函数也是用于格式化输出,但它将格式化后的字符串输出到指定的字符数组中,而不是屏幕上。这里,str是指向一个字符数组的指针,用于存储格式化后的字符串。sprintf函数常用于将数据转换为字符串形式,或者进行字符串的拼接等操作。它接收一个格式控制字符串和一系列要输出的参数,按照格式控制字符串指定的格式将参数输出到屏幕上。简单来说,如果你希望将格式化后的输出直接显示在屏幕上,应使用printf函数;如果你需要将格式化后的字符串存储在某个字符数组中以便后续使用,则应选择sprintf函数。
2025-01-28 16:02:45
246
原创 windows环境下通过vscode插件remotessh免密连接linux服务器
从你的描述来看,SSH 连接仍然要求输入密码,即使你已经指定了私钥。这可能是由于几个常见的原因导致的。
2025-01-22 13:43:37
1026
原创 工具编译器开发环境
在使用枚举时,确保你对枚举值的范围和使用场景有清晰的认识,以避免可能出现的逻辑错误。可以提供更强的类型安全性,避免枚举值与其他整数类型的隐式转换,并且可以防止不同枚举之间的命名冲突。如果你在使用枚举时遇到问题,比如将枚举作为函数参数、进行比较操作或者存储在容器中,可以使用。来打印模块的值,并且将枚举值存储在一个数组中,通过循环打印出来。作为函数参数和数组元素类型,因为枚举值本质上是整数,在 C++ 中可以隐式转换为。(枚举)是一种用户自定义的数据类型,用于定义一组命名的整数常量。在 C 和 C++ 中,
2025-01-15 20:35:42
835
原创 枚举在不同c版本中应该如何声明
在使用枚举时,确保你对枚举值的范围和使用场景有清晰的认识,以避免可能出现的逻辑错误。可以提供更强的类型安全性,避免枚举值与其他整数类型的隐式转换,并且可以防止不同枚举之间的命名冲突。如果你在使用枚举时遇到问题,比如将枚举作为函数参数、进行比较操作或者存储在容器中,可以使用。来打印模块的值,并且将枚举值存储在一个数组中,通过循环打印出来。作为函数参数和数组元素类型,因为枚举值本质上是整数,在 C++ 中可以隐式转换为。(枚举)是一种用户自定义的数据类型,用于定义一组命名的整数常量。在 C 和 C++ 中,
2025-01-15 10:08:29
155
原创 #ifdef和 #if defined区别
的效果是一样的,可以根据个人习惯和代码风格选择使用。而当需要进行更复杂的宏条件组合判断时,总的来说,在只检查单个宏是否定义的情况下,
2025-01-13 11:14:39
394
原创 我终于理解指针怎么使用了!!!!!!!
也就是通过指针来接收传递过来的地址 通过解引用操作指针所指向的地址里面存放的值 来完成数值的交换是的,完全正确!通过指针来接收传递过来的地址,然后通过解引用操作指针所指向的地址里面存放的值,来完成数值的交换。
2025-01-05 22:11:28
236
原创 取地址符 指针 详解 涵盖自己的理解
tmp是一个指针,它存储的是一个int类型变量的地址。如果你想要访问tmp所指向地址上的值,必须使用*tmp(解引用)。所以tmp本身并不是地址所指向的值,而是存储该地址的变量。要操作这个地址上的值,你需要解引用它。
2025-01-05 22:04:16
556
原创 AD,PCB设计流程总结
第五节:在工程文件上右键,选择为工程添加新的PCBLibraries,将新建的封装库更名并保存到需要的目录下,拖拽出来成为独立的封装库,点击左下角PCB Libraries,寻找芯片的package characteristics,在元件空白处选择元件向导,选择quad packs单位为mm,按照datasheet进行计算即可,引脚间距为e,另外一个为(D-D3)/2,在其中一个引脚上面查找相似对象,4.感应连线和感应焊盘优先布局。芯片靠近感应焊盘放置,感应连线直接引到感应焊盘(或弹簧焊盘)。
2024-12-17 14:38:59
168
原创 中微CMS开发链接
IO口 https://blog.youkuaiyun.com/Velpr0_0/article/details/138612439#comments_33716824。
2024-12-16 17:25:24
116
原创 ADC采样原理问题
如果充电的电流非常小,那么充电时间长,电容在充电的时候阻抗非常小,此时ADC内阻就非常小。如果此时恰恰配置的采样时间又很小,结果只有一个,采样不准确。这个因果关系是怎么得出的?
2024-12-07 17:04:54
421
原创 ADC和DAC简介
在单片机中,ADC(Analog-to-Digital Converter,模数转换器)和DAC(Digital-to-Analog Converter,数模转换器)是两个重要的外设模块,分别用于将模拟信号转换为数字信号和将数字信号转换为模拟信号。这两个模块广泛应用于信号采集和处理,如传感器数据的读取、音频信号处理等。图1 ADC0809的8位模数A/D转换器芯片原理图。二、ADC(模数转换器)一、逐次逼近型ADC。
2024-12-06 18:01:09
1363
原创 stm32中的FSMC
定义与功能概述FSMC(Flexible Static Memory Controller)即灵活静态存储器控制器,是STM32芯片中一个很重要的外设。它的主要功能是方便地与外部静态存储器(如SRAM、NOR Flash、NAND Flash等)进行连接并实现高效的数据传输,使得STM32能够访问外部大容量存储设备,扩展存储资源和功能。工作原理FSMC通过地址线、数据线和控制线与外部存储器进行连接。它可以根据不同类型的外部存储器,配置相应的时序参数来适应这些存储器的读写特性。例如,对于NOR
2024-11-30 18:56:42
328
原创 电感啸叫原因及可能的解决办法
由于负载电流过大,导致功率电感饱和,电感电流变大,使得DCDC产生切换频率恰好在20Hz-20kHz之间,从而啸叫.电感的两种模式:DCM(断续模式)和CCM(连续模式)以下是别人写的关于电感的知识,方便自己查阅.
2024-11-24 11:43:30
270
原创 PWM占空比是厂家确定还是自己确定?
首先了解PWM占空比的定义PWM(脉冲宽度调制)是一种对模拟信号电平进行数字编码的方法。占空比是指在一个脉冲循环内,通电时间相对于总时间所占的比例。例如,一个PWM信号周期是10ms,其中高电平时间是3ms,那么占空比就是3ms/10ms = 30%。占空比通常是由用户自己确定的情况在大多数应用场景下:当使用PWM控制电机转速时,用户可以根据实际需要的电机转速来调整PWM占空比。比如,在直流电机调速系统中,占空比越大,电机两端的平均电压越高,电机转速就越快。用户可以根据具体的速度要求,通
2024-11-24 10:55:06
222
原创 三相无刷直流电机
三相无刷直流电机(BLDC)的控制算法核心在于对电机定子绕组通电顺序的控制,以实现旋转磁场的生成,从而驱动电机旋转。由于无刷电机没有机械换向器,控制算法则是通过电子换相来实现。三相无刷电机的控制常用以下几种算法:六步梯形波控制、FOC(矢量控制)、正弦波控制等。以下将介绍一些关键的控制算法和步骤。
2024-11-16 21:22:49
800
原创 MCU旁接大电容还是小电容?
在设计MCU(微控制器)的电源电路时,选择旁接大电容还是小电容需要根据具体需求来决定。通常,电路设计中两者都需要使用,各自发挥不同的作用。
2024-11-16 11:01:15
404
原创 PCB,嘉立创EDA绘制技巧(自我总结,不断更新)
通过 “全连接” 或者 “十字连接” 等方式可以有效地降低连接电阻,使得大电流能够更顺畅地通过,减少热量的产生.
2024-11-16 10:04:01
164
原创 运算放大器(运放)
运算放大器(简称运放,英文:Operational Amplifier,Op-Amp)是一种具有高增益的电子电路元件,主要用于放大电压信号。运放是模拟电路设计中的基础器件,广泛应用于信号放大、滤波、信号运算、信号调理等各种电路中。
2024-11-11 12:51:52
1769
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人