- 博客(175)
- 资源 (21)
- 收藏
- 关注
原创 BLHeli电调使用遥控器摇杆进行参数设置指南
介绍了RX42BL接收器集成标准BLHELI电调,使用遥控器进行参数修改的方法, 提供11个可调参数(如0-30度换向时序)
2025-06-11 11:19:27
524
原创 使用mpu6500/6050, PID,互补滤波实现一个简单的飞行自稳控制系统
使用mpu6500, PID,互补滤波实现一个简单的自稳控制系统
2025-06-10 16:36:31
347
1
原创 使用pwm控制舵机来回摆动的中心位置
本文实现了一个基于PWM控制的舵机摆动模拟器,使用tkinter创建可视化界面。通过PWM信号(1000-2000)控制舵机在±45度范围内摆动,其中1500对应中心位置。系统采用滑动条输入PWM值,实时计算目标角度并动态更新摆臂位置,同时显示红色虚线标记摆动范围。程序包含角度转换、边界检测和摆动速度控制功能,模拟了舵机根据PWM信号平滑移动到目标位置的过程。该模拟器可直观展示PWM与舵机角度间的映射关系。
2025-06-06 18:01:34
246
原创 使用pwm控制一个舵机摆动的速度
控制舵机摆动速度的关键在于利用PWM间接调节。由于舵机角速度固定且与角度差成正比,可通过以下方法实现速度控制:1)初始化PWM与舵机角度同步;2)按指定速度定时计算角度增量并更新PWM值(如每0.02秒更新);3)加入启动时间补偿。具体实现时,根据设定速度计算角度增量,进行边界检测和方向反转,最终转换为目标PWM值输出。示例代码展示了如何通过计算deltaAngle实现舵机匀速摆动,其中涉及角度到PWM的转换公式(1500+(angle/0.09))。
2025-06-06 17:36:52
218
原创 使用python写一个虚拟的舵机模拟器
摘要:这是一个用Python tkinter开发的舵机摆动模拟器,用于调试舵机控制代码。模拟器包含一个SwingArm类模拟舵机运动(固定速度180度/秒),通过滑动条输入PWM信号(1000-2000对应-45°至45°)。GUI显示当前角度和摆臂位置,每50ms更新一次状态。使用前需安装python-tk,主要功能包括:PWM到角度转换、平滑角度过渡和实时可视化。该工具便于开发者测试舵机控制算法而无需实际硬件。
2025-06-06 16:17:00
285
原创 萝莉Loli双向有刷电调源代码 SDCC 版本
本文介绍了基于STC15单片机的双路电机控制代码移植和优化过程。原始代码是为Keil51设计的,作者将其修改为可兼容SDCC编译器的版本,适用于macOS系统。主要修改包括:寄存器声明方式调整、IO引脚定义重映射、位操作优化为位域处理,并添加了Makefile和调试工具。代码实现了两路PWM电机控制,包含信号检测、混控算法、摩擦力补偿和死区处理等功能,通过10μs定时器中断实现100级分辨率的软件PWM控制。移植后的代码保留了原有功能,包括上电自检、失联保护、非线性映射补偿等特性,适用于机器人或遥控车等应用
2025-06-02 14:13:41
153
原创 Futaba乐迪小飞象Frsky7通多协议接收机KA6说明书
支持FRSKY D8的遥控,如 DJT, DHT,XJT , TANDEM X12,X14,X18SE,X20, X20RS, XE,TWIN X LITE,Taranis,X-Lite s/pro,TARANIS X7,X9D, X9D plus, X9D Plus SE, horus x10 ,horus x10s。3. 对码时,要保持接收机和遥控器0.5米以上,SFHSS,乐迪和小飞象静待1分钟左右,Frsky D8 按下对码按钮,看到指示灯快闪然后保持长亮就对好码了。, FRSKY D8则将是。
2025-05-29 22:00:16
418
原创 解决PIP 安装出错ERROR: cp310-cp310-manylinux_2_28_x86_64.whl is not a supported wheel
把whl的文件名改一下。发现,刚好少了2_28。
2025-04-15 16:56:57
417
原创 如何在huggingface安装指定的版本的transformer
2.要安装指定版本,那么需要在 URL 加一个@加上commit id , 如。commit/后就是这个commit的id了。3. commit id 到。1.安装最新,一般是这样。,如下图复制链接地址。
2025-04-02 13:16:18
356
原创 如何在ms-swift 微调训练deepseekvl2时使用sageattention
1.本质上sageattention是sdpa,SDPA的全称为Scaled Dot-Product Attention, 属于乘性注意力机制, 简单一句话来说就是,根据Query (Q)与Key之间的匹配度来对Value进行加权,而事实上不管是Query, Key还是Value都来自于输入,因此所谓的SDPA本质上是对输入信息信息进行重组。因此,deepseekvl2无法直接简单使用sageattion,我们需要改一下deepseek的开源代码,才有可能用上sageattion.
2025-03-28 11:22:07
446
原创 Stable Diffusion API /sdapi/v1/txt2img的完整参数列表及其说明
【代码】Stable Diffusion API /sdapi/v1/txt2img的完整参数列表及其说明。
2025-03-14 13:42:30
723
原创 关于MCP SSE 服务器的工作原理
2. MCP SSE Client会发起多个连接,但是第一个连接是http://yourhost:port/sse, 这个连接是沟通的第一步,它会使用chunked的回传数据,意思是不告诉client这个数据有多少,这样就它就可以一直连着了。但是sse的方式叫cursor 干始终不成功, 找了一轮,发现youtube的教程视频里主持,也没有搞定sse的服务器,balahblah说了一堆,就要move on ....于是研究了一下。跟着就是ping包的返回,防止client死了。
2025-03-12 17:19:24
1896
原创 JETFAY RX121BR 多协议小比例静改动接收机说明书
0.3g3.3-6V内置12种无线协议,支持FUTABA,RADIOLINK,DUMBORC,FRSKY,FLYSKY,MC6C,WFLY2等,内置联动,多种控制方式,3通及以上都可全部控制。最大电流1.8A,一路有6个输出模式可选,可以输出多路标准PWM,电调PWM, SBUS和PPM。0402/0603LED, 总电流不可超600毫安,每路可接2-3个LED.电压,信号强度,丢包率,仅部分协议支持,如RADIOLINK,DUMBORC, FLYSKY,WLFY2等。
2025-03-10 23:57:20
982
2
原创 VsCode/Cursor workbench.desktop.main.js 的入口
这个也是main函数开始的,下面就是最后一行代码,表示export出rSo 函数作为它的名字公开为main, 和dll export表有点像了。nSO是一个类,应该是就是workbenchMain了。
2025-03-06 13:04:42
490
原创 Visual Studio Code或Cursor的workbench.desktop.main.js的完整性校验的原理
修改workbench.desktop.main.js,再打开app,就会提交安装似乎已经损坏的提示。它是使用sha256,然后base64来检查的。
2025-03-05 18:11:47
294
原创 搭建一个本地DeepSeek r1 14B配置低到惊喜!附超简单步骤
发现只需要11G显存!只使用一张rtx3060 12G的就搞定了。速度和答案质量还不错,太令人惊喜了!7B只需要5GB的显存。
2025-02-13 11:40:28
345
原创 c语言使用通配符取一个目录下符合规则的所有文件的最简单办法
其实很多种办法,可以使用dir相关的函数把文件都枚举出来,然后使用正则表达式,这个是我之前的做法。如此简单,没有想到吧?
2025-02-06 10:32:34
128
原创 使用deepseek写一个单击,双击和长按的检测函数
DeepSeek好火,注册试用一下:提问:请使用c语言写一个函数,输入参数是是为: A为当前的输入量,1000-2000,根据它的变化, B为当前这个输入量的状态数据结构, 函数检查这个A,判断它的变化,从而判断用户是单击还双击,还是长按。具体当A变化量大于300时认为是开始了有效的点击,这时认为是按下按钮,记录变化前的值为C ,当A变回和C差值只有50左右时,认为释放按钮。已深度思考(用时 272 秒)
2025-02-04 13:17:26
646
原创 Macos编译openjdk因berkeley-db版本问题失败解决办法
看来是优先使用/usr/local下的头文件了, 简单处理一下,看起来brew也有多份,直接删除一下/usr/local下的db.h及相关的头文件。原因是berkeley-db最新的版本这个get的定义是多一个DB_TXN的参数,看名字是用于事务处理的。一开始以为是版本低了,upgrade了一下没有解决,后来找了一下xcode目录下,也有一个db.h。同时get这个函数看起来也刚好是只有四个参数,打开看了一下,好像比较老的,然后再编译,顺利通过。
2025-02-03 11:16:00
634
原创 cannot locate symbol “_ZTTNSt6__ndk114basic_ofstreamIcNS_11char_traitsIcEEEE“ 的解决办法
使用clang++编译出来的android程序,实际真机运行出现 cannot locate symbol "_ZTTNSt6__ndk114basic_ofstreamIcNS_11char_traitsIcEEEE" referenced by。重新上传,运行ok.
2025-01-23 15:06:35
339
原创 Macos下交叉编译安卓的paq8px压缩算法
修改paq8px/CMakeLists.txt, 如下,去掉clang++不支持的-march=nocona和-floop-strip-mine。稍旧的ndk并不能编译成功,需要下载最新的ndkr27c, 最后是使用clang来编译。官方没有android的编译方法,自己编写脚本在macos下交叉编译.编译build.sh。
2025-01-23 10:56:01
701
原创 从根源分析,调试,定位和解决MacOS ld: unsupported tapi file type ‘!tapi-tbd‘ in YAML file
发现是最后一个spam是调用/usr/local/Cellar/gcc/14.2.0_1/bin/../libexec/gcc/x86_64-apple-darwin20/14/collect2。这个anaconda的ld和系统的是不匹配的,但是它为了penv把这个替换了,结果collect2使用了它设置的工具链的ld. 然后引起这个问题。本文希望可以帮到需要的人,还是不人遇到这个的,可能原因不大一样,但是这个文章把debug和定位的方法和原理都告诉大家了,祝大好运!看起来好了,再试试编译。
2025-01-22 16:09:27
696
4
原创 STM32G031G6和STM32F031G6是两个型号,别弄错了啊!
没有道理啊,查文档,对针针脚,查了STM32F031G6的。决定焊第二张,就留mcu最简线路,又是一样,没有反应。9.难道mcu坏的,焊第三张样板,就留mcu最简线路,又是一样,没有反应。买的是STM32G031G6,画图画的是STM32F031G6。1.EDA选了STM32F031G6,画图,4层板,画得我眼都花了,14.我又看了一眼电路原理图,看了一下mcu上的丝标,呃。7.发现没有反应,以来没有焊好,补焊一轮,检查连通性,无果。4.终于等到,开工贴双面,眼又花了,花了数个小时。11.好吧,睡觉。
2025-01-18 12:47:55
239
原创 IL2CPPDumper符号导入IDA的set_name错误解决
结果,原来是我使用ida使用ida_py3.py是不行了,然后ida.py就好了。看来是python的版本问题。python 版本确实乱。乱到要出一个pyenv管理, anaconda, 很是奇怪的语言。把il2cpp的生成的符号信息导入ida中会有出现以下错误;调了半天,还改了ida_name.py,以为是可变参数问题。这个直接单独执行没有问题。
2025-01-14 15:07:51
362
原创 Frida调试il2cpp的程序打印原生c#对象为json
需要配合il2cpp原来程序里的一些json序列化的工具来进行,一般都可以找到,如下面的。MiniJSON.Json,像这个 Serialize到运行时对象就不行了。主要的思路是,输入一个对象,那么使用反射的GetType, 然后使用type的GetFields, 拿到Field的列表,然后遍历field列表。Field是一个抽象类的,这里我使用 RuntimeFieldInfo : RtFieldInfo里面的函数来实现。
2025-01-14 15:01:55
407
原创 使用命令行打开CygWin/mintty登录环境变量,并转到对应路径
对于使用sublime text,我在当前编辑所在的文件的路径下打开一个cygwin的命行令窗口,进行命令行操作,这样就很方便了,直接打开,不用再自己cd到当前目录。上一篇使用oldpwd来转目录,也可解决问题,但是其实mintty有一个隐藏的--dir的参数,启动的时候指定即可,发文记录一下。这个打一个cygwin的窗口,登录/bin/sh ,初始化环境变量后,会cd的%cd%这个当前目录。
2025-01-12 16:21:40
241
原创 万能无线航模模拟器加密狗说明书
在对码模式下,按一下按键会切换一个协议,在12个协议不断循环,请一边按一边观察指示颜色和闪烁的摩斯电码,当你观察到对应的协议,就可以停止按键了,如你需要AHDFS2A富斯二代,你看到指示灯两个紫色就可以了。对码成功后,关闭遥控,加密狗重新上电后,长按按键,指示灯会循环切换模式,观察到需要的模式,如模式二,就是看到每三秒闪两下,松开按键,指标灯会自动快闪重启,切换模式就成功了。使用加密狗上的按钮,选择对应的模拟器的工作模式。对码成功后,关掉遥控,观察指标灯的每3秒闪多少下,就是模式几。具体看FAQ第二节。
2025-01-08 09:48:33
5387
原创 如何使用Sublime Text3和Keil uVision 5协同进行单片机开发
本来一向使用SDCC,后来发现同一套代码工程Keil编译出来的代码小20%左右。但是Keil的IDE和编辑器相当难用,看着极不顺眼。后来发现VScode可以调用Keil来编译。我研究一下了,发现也是可行的。3. 需要安装cywin,然后在sublime上使用我上编文章的cywinmake的buildsystem。4. ctrl+b就可以使用keil来编译了。
2025-01-01 13:01:12
276
原创 windows 下如何在sublime Text调用cywin终端,然后执行make进行编译代码
找到cywin的安装目录找到mintty.exe, sublime的菜单Tools新一个buildSystem,回到工作目录,选择这个cywinmake为buildsystem,如上图。填写以上内容,然后保存为cywinmake.sublime-build。sublime会帮你新建个文件叫 *sublime-build。ctrl+B就可以编译了。
2025-01-01 12:43:19
187
原创 要快速找到 A, B, C 使得 A×B×Cx4/13 最接近 D
A取值范围 为(64, 128, 256,1024),B为(1-255),C为(1-256)D的取值范围是[0,66846720]
2024-12-30 15:31:22
384
原创 计算intel hex文件占用空间大小
只是需要使用sdcc的make的时候,最后打印一下hex文件占用flash的大小和百分比,试了srec_info , python 的intelhex等,好像都不是需要的。没有办法,只好自己使用shell脚本写一个。保存为showsize.sh,使用例子如下。
2024-12-29 16:33:12
134
MachORuntime.pdf
2020-04-28
lzma in as3
2011-12-09
2013-2014的MBP的固件427
2020-11-17
Finger Sensing Pad macos x 触模板 驱动源代码
2014-03-04
com.goplaycn.googleinstall.apk
2020-05-28
Geekbench 4.2.0破解补丁
2017-11-12
File_DXE_driver_NVMe_mbp114.ffs
2019-11-07
clover+EFI+gtx1080 +msiX99ARaider+i76800k+sm951 NVMe.zip
2017-04-23
SharpSniffer
2008-05-31
Clover_v2.4k_r4114 for x99
2017-07-14
Clover EFI For MSI X99ARaider E5-2696V4 MacOS High Sierra 10.13
2017-11-12
Gigabyte Phoenix X99 SLI +Vega64+Xeon E5 2996V4 EFI.zip
2019-07-03
twrp-3.3.1-0-shamu.img
2019-11-27
Synalyze It! Pro 1.20 破解补丁
2017-11-12
j2me手机游戏之俄罗斯方块
2008-10-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人