- 博客(2549)
- 资源 (604)
- 收藏
- 关注
原创 VS2022 - C#程序简单打包操作
以前用VS2019对C++程序打包做了一个笔记(vs2019 - 打包(开发机win10x64 - 目标机win7x64 - debug版程序)有个打包新手同学(刚接触C#打包,才接触了10天),要对C#写的测试程序进行打包,自己搞不定。私信让我帮他搞一下。看他私信明确要求是有偿服务,就帮他搞一下。如果没看到有偿字样的胡言乱语,俺应该直接将私信删了,没义务啊。打包的事情全部依赖于VSIDE, 作为用户,我们如果要简单打包,需要的操作特别少,只需要几个固定的步骤就可以完成一个简单的打包。
2025-08-21 00:46:16
1418
原创 JLink突然连接不上MCU的处理方法
用eclipse-embedcpp + JLink-edu-mini单步调试LPC1768的固件工程。开始是能正常用的,后来修改了编译选项,尝试将PC设置到0xCC.突然就报错,连接不上板子了。因为0xcc是reset入口,不知道在那里设置断点,会不会影响汇编代码和JLink.可以尝试用进入ISP模式(openpnp - MKS SGEN_L V2.0-002 烧录bootloader。
2025-12-20 14:29:52
792
原创 MDK-ARM的所有版本名称
不知道自己手头的MDK4.74是否是最后版本,现在找到一个官方网页,证明了MDK4.74就是官方最后一个MDK4的版本。终于心里踏实了。
2025-12-18 20:55:15
946
原创 win10 - 删除非法命名的文件夹的方法
在修改编译开源工程Smoothieware, 用的msys2-mingw64命令行。昨天,因为修改makefile时弄错了,生成了一个nul的文件。在win10中,用手工删除,或者用cmd管理员模式,都删除不掉。最后,重启计算机后,在msys2-mingw64中删掉了。今天将Smoothieware工程作为makefile工程导入eclipse-cpp中,发现报错,说有一个…drop目录导入失败。去看了一下。这个文件夹在文件资源管理器中可以打开。但是在资源管理器中,手工删除失败。
2025-12-18 14:41:31
916
原创 openpnp - Smoothieware - 固件工程编译(msys2-mingw64环境)
准备学习Smoothieware工程,将固件调试环境先搭建一下。前面实验,已经将 MSYS2 MINGW64 + eclipse-cpp + arm-gnu-toolchain + makefile的单步调试环境搞定了,已经可以正常调试LPC17xx-DFU-Bootloader工程。就在这个环境基础上,搭建Smoothieware的固件调试环境。
2025-12-17 06:48:49
981
原创 openpnp - LPC17xx-DFU-Bootloader - SDCARD_V2HC可以正常使用的git提交点
在学习开源工程LPC17xx-DFU-Bootloader格式化了合适格式的SD卡。
2025-12-16 11:55:35
609
原创 gcc的-O优化等级和编译后程序占用空间的关系
在调试固件,想看看可以选哪个优化等级,既不会增加代码体积,也不会妨碍单步调试。不关心具体的优化标志,只关心大的-O优化等级开关。编译优化标志(-fx)受到编译优化等级开关(-Ox)的控制. 如果一个编译优化标志在makefile中指定了,但是优化等级开关没达到(e.g. -O0), 这些指定的优化标志也不会生效。如果不指定优化等级,默认的是-O0然后比较一下同一个实际工程,用不同的优化等级,编译出的代码体积的差别。gcc在线文档url。
2025-12-15 14:01:51
1026
原创 openpnp - LPC17xx-DFU-Bootloader - 固件调试环境搭建
接着笔记()做实验。前面将硬件环境(openpnp - Smoothieware - MKS SGEN_L V1.0 + JLink-edu-mini 连接测试)搭好了。现在搭建软件调试环境。上次笔记(),软件环境大致搭好了,但是那次实验是烧录bootloader, 并没有单步。按照上次笔记留下的环境单步调试,有问题,修正一下。
2025-12-14 17:03:30
572
原创 openpnp - Smoothieware - MKS SGEN_L V1.0 + JLink-edu-mini 连接测试
准备看Smoothieware相关固件实现,将硬件实验环境搭一下。先确定板子(MKS SGEN_L V1.0)和JLink-edu-mini的连接关系,用JLINK软件试一下,能通过SWD通讯,目的就达到了。
2025-12-14 14:48:23
826
原创 openpnp - 确定自动换刀坐标的辅助工装
吸嘴所在的N1/N2轴,由于精度问题(机械零件制造公差,机械零件的装配误差),导致Z轴不是完全垂直于工作平面的。如果从Z零点的顶部相机看到的吸嘴坞中的吸嘴上部中心作为第一点,等吸嘴内套落下套住吸嘴上部的圆柱时,坐标已经偏了。轻则吸嘴在吸嘴坞的吸嘴槽中有倾斜,妨碍吸嘴的移动, 加剧吸嘴坞的磨损,阻碍换刀速度的提高(如果吸嘴在吸嘴坞中不能顺畅滑动,如果提高换刀速度,就有可能发生撞刀)。重则直接发生撞刀。
2025-12-13 13:59:44
517
原创 SW - 无法改变默认坐标系轴的方向
SW默认的坐标系,不是Y轴向上,就是Z轴向上。我现在正在估算自己的openpnp设备自动换刀时, 28电机轴下落时的平面坐标偏差(因为机械零件制造公差和机械装配精度限制,Z轴不可能是完全和工作平面垂直的),在画一个零件图来估算平面坐标偏差值。我的设备的运动轴方向为:Z轴正方向向上X轴正方向向左Y轴正方向后。首先需要将SW图纸中的初始坐标系改为和我的设备一样。
2025-12-12 12:47:55
159
原创 openpnp - 相机模组调焦时,图像中心轴(光轴)的角度会发生轻微变化
将N1上的吸嘴移动到底部相机十字中,从Z零件位置向PCB高度落下,发现吸嘴的位置逐步偏离相机十字中心。最终落到PCB高度时,会偏移1.6mm.开始以为是机械部分的问题,于是重新对X,Y,Z的机械部分用千分表打表,确定机械部分是没问题的。那么就开始怀疑是底部相机装的不垂直。我的底部相机在一个鼠笼中(openpnp - 底部相机支架的制作),理论上垂直度应该是很好的,重新装配了底部相机,确定底部相机也是垂直的。再测试,问题依旧。那么就开始怀疑是相机模组镜头旋转时,光轴会偏心了。
2025-12-10 10:11:41
658
原创 断丝 - 螺丝断在螺丝通孔中的处理方法
用M3的螺丝固定2个小零件,因为怕松动,都是用六角扳手横着拧之后,等10分钟,再用六角扳手继续拧。很奇怪,又没有滑丝,总是能继续拧的动。经过多次拧紧后,继续拧时,突然一颗M3的螺丝断在螺丝孔中了…, 背啊。
2025-12-07 14:39:27
289
原创 SW - 螺丝过孔直径不能选紧密套合
有个零件是大板件(长度超过1000mm)。调整垫片时,需要松开螺丝。松开螺丝后,用六角扳手来回试试松紧。发现有4个螺丝总是有点紧。左右两边的2堆螺丝,是双Y导轨滑块的固定螺丝过孔。去查图纸,发现M5螺丝的过孔直径为5.3.如果零件松开螺丝后,来回转动,还带着力和周围孔壁刮蹭,那肯定会让零件受额外的不必要的力。有潜在风险,吃亏了。如果用SW的过孔套合去自动设置直径, 5.3mm属于紧密套合。没经验,等下次不管是啥螺丝孔,最好要按照正常套合的直径去设置。
2025-12-06 14:14:29
193
原创 openpnp - 在有前提的情况下是可以不做齿隙矫正的
判断自己的丝杠+伺服是否有齿隙,最简单的方法,就是不同的步长(0.01,0.1, 1, 10, 100)往返移动(将openpnp在齿隙校验前的配置备份好,就在没有做X,Y轴齿隙前,来手工操作JOG面板移动一个固定长度的步长,一次一步,动了一步,就观察顶部相机下的丝杠移动结果,测试是否有齿隙),此时顶部相机是配置好的。所以,如果确定自己的丝杠没有物理齿隙,或者由于不可抗因素(伺服就是10年的旧货,控制性能无法和新伺服比较),那么在设备标定过程中,就不要做X和Y轴的齿隙。只是观测出有齿隙,实际上是没有的。
2025-12-01 14:59:14
626
原创 openpnp - 单独做吸嘴的背景校验
标定设备时,NT1吸嘴校验时,吸嘴内壁框的不太准(框小了)。导致NT1吸嘴校验完,NT1的背景校验过不去。在向导中,将NT1的吸嘴校验重新打开。将NT1的吸嘴校验重新做一遍后,刷新向导,依然没有NT1吸嘴的背景校验流程。看了一下,可以查看NT1吸嘴的信息,将背景校验的方法改为None,再刷新向导,就可以重新做吸嘴的背景校验。
2025-12-01 12:30:39
162
原创 openpnp - 伺服JAWD7502查看新旧程度
设备上用的伺服,用的时间越长,性能越差。如果是伺服本身老化了,引起性能下降。这就不是说调整伺服参数能就能解决运动精度的问题。看了设备的伺服JAWD7502的运行总时间,时间很短,才30天。是个新伺服。
2025-12-01 11:12:05
227
原创 win10自带杀毒软件Microsoft Defender添加白名单
win10本本上,以前装的是360.360是有白名单设置的。现在去掉了360, 本本上只有Microsoft Defender。Defender将伺服厂家给的内测版调试软件的exe给删掉了。在界面上无法增加白名单的文件夹。
2025-12-01 09:34:56
178
原创 openpnp - 汇川IS620PS2R8I-IAB-C的参数设置和调整
手头订制的openpnp设备精度太差了,在解决X轴丝杠齿隙的问题。首先解决了固定问题引起的物理齿隙问题(openpnp - 消除滚珠丝杠物理齿隙的方法此时,用openpnp标定X轴齿隙,还是有齿隙。在openpnp没有标定齿隙之前,控制X轴在顶部相机下运动,顶部相机下有钢尺做参照。发现,X轴丝杠有过冲的情况发生。如果openpnp在X轴丝杠过冲还没结束时,就拍照做比对,那就发生了由测量操作引起的所谓齿隙。这个“测量引起的齿隙”并不是真正的丝杠物理齿隙。
2025-11-30 13:15:26
755
原创 openpnp - SW - 零件螺丝固定孔要考虑工具操作空间
在调试订制设备的过程中,发现X轴螺母连接块和滑块的螺丝固定孔设计的不合适。M4的内六角螺丝孔,六角扳手只能竖着拧,因为孔深已经超过20mm, 无法横着拧,导致不能可靠的锁紧2个零件。做了修改,将一个滑块改为2个滑块,让出了六角扳手横着拧的空间。六角扳手设计的2个边不等长,是考虑到了用人手横着拧六角扳手,才能拧紧螺丝。这不是无缘无故的这么设计的。
2025-11-30 12:24:00
403
原创 openpnp - 汇川IS620PS2R8I-IAB-C的位置模式控制线序
想用InoServoShop_V4.10.0.31_20220429自带的调整功能,优化一下带负载的电机运行参数。不过因为DI上的S-ON已经给了使能信号,使InoServoShop不能控制。将伺服控制线从冰沙主板那边摘掉,不好使。想了一下,应该是作者做控制线的时候,将S-ON输入在伺服这边的插座中做了连接。应该将控制线从伺服的DI插座上摘下来就行。不过既然摘下来了,那么就将并口形状的插座拆下来看一下,看作者怎么接的线。然后再和冰沙那边的插座对一下,整理一个线序对应关系出来。
2025-11-26 19:47:22
653
原创 openpnp - 汇川MS1H1-40B30CB-A331Z-S的编码器线数
X丝杠用的MS1H1-40B30CB-A331Z-S电机,作者说是23位编码器。等排除机械精度后,发现,走100mm, 就少走了0.1mm. 这完全不对啊。查官方文档,发现,官方并没有明确说编码器线数是多少位, 有可能是23位/20位/18位.从电机型号无法看出编码器位数。
2025-11-25 11:55:00
986
原创 cadence SPB17.4 - 3D预览时,不需要显示Place_Bound占位的黑立方体
元件的占位面积有高度的,是有用的,用于DRC检查。如果将元件占位面积的高度改为0,和实际不符,是有害的。但是默认3D预览板子时,如果没有3D模型的stepfile, 会将元件显示为黑立方体,实际上这个黑立方体就是代表元件(占位面积和元件高度)。没查到资料,怎么在3D预览时去掉这个占地面积的黑立方体。因为黑立方体将元件顶面的焊盘挡住了,如果要检查焊盘是否被一面盖油,就看不到效果。记得不用去动元件的封装库,好像3D模型预览就有不现实元件占位面积的选项。
2025-11-19 23:14:54
299
原创 cadence SPB17.4 - 导入正常的CIS库
本地的原理图库以前都在正常用。重装了cadence SPB 17.4, 重装完的SPB17.4中是没有自己的原理图库的。想将自己正常用的原理图库,配置进新安装的SPB17.4。
2025-11-19 16:03:06
555
原创 确定任务管理器中的程序“无响应“是否是真的
有的程序比较大,操作比较复杂,从界面上看,半天不动地方。e.g. 用AleegoCrackMasterV3.2.6强制卸载CadenceSPB17.4时,调用出来的Cadence程序卸载时,要准备好久才开始卸载,好慢。这时,如果不确定是否真的无响应,需要强行杀掉该无响应的程序?可以用工具先看一下,这个程序干活没有?如果一点活都没干,真的挂住了,那就杀掉他。
2025-11-18 21:56:39
239
原创 JLink EDU mini 的接口引脚功能
今天从备件中翻出来一个J-Link EDU mini,想做实验。10pin的接口好像是1.27mm 5x2P.用电子显微镜,配合钢尺和J-Link EDU mini的接口摆在一起,大概是1.27mm的引脚间距。正好有先见之明,已经买来1.27mm10pin接口转2.54mm20pin接口的转接块。J-Link EDU mini 的板子上,并没有引脚功能的丝印。在网上倒是找到了其他同学写的笔记,有J-Link EDU mini的接口引脚定义。
2025-11-18 18:40:41
349
原创 Smoothieware - LPC17xx-DFU-Bootloader - study
Smoothieware工程用的bootloader工程为LPC17xx-DFU-Bootloader.学习一下,看有没有机会来改进一下. e.g. 将MCU模拟U盘加进去,是否能在16KB的代码空间装下。
2025-11-18 11:40:39
743
原创 msys2-mingw64 makefile - find: paths must precede expression; find: possible unquoted pattern after
在看一个开源的固件工程,用makefile编译的.工程的历史提交次数不多,20~30次。就像从作者首次提交看起。因为只是学习,就将历史版本用sourcetree直接迁出,使版本头悬空。很奇怪的是,makefile编译总是报错.开始觉得,可能是作者开始提交时,makefile有bug,或者代码有bug.于是逐步想最新的提交点迁出,还是报错。最后查了makefile最新的修改点,迁出后编译还是报错。这时,开始怀疑是环境问题,或者makefile语法有错。
2025-11-17 22:51:27
538
原创 msys2 - msys2-mingw64测试并调整镜像源
msys2-mingw64适合固件开发。安装软件时,如果不调整镜像源,速度很慢.msys2本身已经提供了镜像源文件。
2025-11-17 10:20:47
646
原创 openpnp - Smoothieware固件差异比较 - exp1
同学说, 有人改了Smoothieware固件,给了一个样本。开始有点不信,改这干嘛?真有这能力么?分析一下,是否改了?如果真的改了,看看改了啥?实验不是一次就能做完,拆分为几个实验来做。这个实验,先确定固件是否被改了?改动的具体内容是啥?后续的实验再确定改动后的作用,和修改前的源码联系起来,并还原为C语言代码。再从源码编译,看看是否和样本实现相同。
2025-11-16 12:15:20
960
原创 openpnp - MKS SGEN_L V2.0-002 USB口电路元件位号测量
前面做了实验(openpnp - MKS SGEN_L V2.0-002 烧录bootloader发现烧录bootloader正常,但是连上计算机,win10设备管理器会显示“USB不识别”。此时,只烧录了bootloader, MCU是不会模拟USB设备的。看厂家提供的原理图。应该是D+/D-上连的元件有问题,导致阻抗失配或噪声,从而导致win10枚举USB设备失败。用UsbView看对应的USB设备信息,也可以看到是USB设备枚举失败。
2025-11-13 09:57:56
583
原创 openpnp - Smoothieboard烧录bootloader
昨天,用编译出的bootloader烧录进 MKS SGEN_L V2.0-002,不好使。LPC17xx-DFU-Bootloader 是给冰沙Smoothieboard用的。想试一下LPC17xx-DFU-Bootloader烧录进Smoothieboard是否好使,如果好使,说明LPC17xx-DFU-Bootloader本身是没问题的,然后再找LPC17xx-DFU-Bootloader用在MKS SGEN_L V2.0-002板子上作为bootloader的不同点。
2025-11-11 12:11:17
768
原创 openpnp - MKS SGEN_L V2.0-002 烧录bootloader
想学习Smoothieware固件工程, 开源的冰沙板子是没有引出SWD接口到排针的,只留了焊盘,不好接SWD的调试器。看到同学手中有一块MKS SGEN_L V2.0,引出了不带SWO的SWD接口。从咸鱼弄了一块。到手后,发现USB口(J7)坏了, 准备换USB口下图是换完好使的样子。拆卸前,先用新的焊锡将USB口的6个焊盘,都加锡。防止老锡不好融化。然后用热风枪340度将6个焊盘都热透,然后尝试往处拔。不要用力,有一点力量就行,如果热透了,才能凭借一点点力量拔下来。
2025-11-09 22:20:24
909
原创 openpnp - 汇川 Inovance IS620PS2R8I-IAB-C - 手工修改惯量识别参数
InoServoShop_V4.10.0.31_20220429 提供了惯量识别的自动参数,但是无法使用。虽然不能用,但是能看到和惯量识别的参数位置为H0815,这个值自己手工改一下,实验一下,就能解决过冲问题。H0900, H0901是刚度参数需要的,不能改。H0905不用改。H0906按照实际运行的参数改,我这里是600rpm最高。H0907, H0908可以参照默认值来改,我这里先不改。
2025-11-06 12:17:03
905
原创 openpnp - 汇川 Inovance IS620PS2R8I-IAB-C - 解决“丝杠过冲“
X轴丝杠用的是汇川伺服 Inovance IS620PS2R8I-IAB-C + 伺服电机MS1H1-40B30CB将物理齿隙(openpnp - 消除滚珠丝杠物理齿隙的方法)消除后,发现丝杠有过冲现象。表现 : 移动1mm/0.1mm时,等动作停了,过了1秒钟,还会往回走一点距离。增加刚度参数优化转动惯量将刚度调整为合适值后,过冲有了明显改善。现在,在看官方手册 19010215-SC_C05《IS620P系列伺服设计维护使用手册》.pdf,看看如何在线调整增益和转动惯量。
2025-11-05 15:14:40
879
原创 openpnp - 消除滚珠丝杠物理齿隙的方法
设备到手后,X轴一直有齿隙。看官方文档的说明,齿隙就是当给了轴步进控制,但是轴没有动的现象。e.g. 轴向右走100mm, 再向左走0.01mm, 可是此时轴并没有运动,再向左走0.01mm, 轴才开始动。为了解决这个问题,我将丝杠周边的东西(丝杠,一体化电机座,丝杠安装底板)都换过了,还是没解决这个问题,这就是明显影响运动精度的地方,真是如鲠在喉。前几天,看官方wiki, 看到齿隙的对应方法。看到方法只有一个,一定要将丝杠固定端的锁紧螺母拧紧。
2025-11-04 15:13:14
574
原创 openpnp - 关于“主次基准点”的官方说法
设备上的当前主次基准点设置都是固定的,如下:基准点用黑色亚光塑料打印的1mm的白色圆点,贴在和PCB基本同高的PCB夹具的固定边上。PCB夹具槽深2.0mm, 一般PCB都采用1.6mm的.黑色亚光塑料也有0.5的厚度.当采用1.6mm厚度的PCB时,基准点和PCB的Z高度差大概不到1mm。左边的白点是视觉归位用的home点,因为发现启动视觉归位会影响已经捕获的关键点坐标,已经废弃不用。中间的白点作为主基准点,贴在3块1.6mm的PCB上,3块小PCB用螺丝拧在PCB夹具固定边上。
2025-11-02 08:58:29
969
原创 openpnp - 吸嘴的单独校准
当设备标定完,开始正常使用后。当设备机械归零后,如果吸嘴连杆(N1,N2)上已经安装了吸嘴。会自动校验吸嘴。发现会偶发的校验吸嘴失败。参数根本就没有动,光照情况也一样。此时,要是单独校验失败的吸嘴,有时也能校验成功,有时会校验失败。其实,如果开机机械归零后的自动校验吸嘴会偶发失败,在校验参数没改的情况下,以后还可能吸嘴校验失败。所以,在吸嘴校验失败后,如果不微调参数,是没有意义的。像偶发的吸嘴校验失败,应该是opencv对参数敏感,要微调参数才靠谱。
2025-11-01 16:09:47
949
原创 openpnp - 坐标系统只有一个
想测试自动换刀,想确认一下openpnp的坐标系统。本来想将顶部相机移动到吸嘴库中的吸嘴上部中心,然后用openpnp提供的"将吸嘴移动到相机中心"的功能,将N1/N2自动移动到顶部相机看到的位置,但是发现,顶部相机并没有这种功能。只有底部相机才有这种功能。那只能确认一下,是否N1/N2的坐标和顶部相机中看到的坐标是否一致?
2025-11-01 13:51:29
742
vs2010_Sample_C_plus_plus.zip
2013-08-08
filedisk-17-org.zip
2013-10-31
cppunit-1.12.1.tar.gz
2011-08-30
Advanced-Windows-Debugging-sources-awd.zip
2014-04-28
TrueCrypt 7.1a Source.zip
2013-11-01
工程目录结构模板设计_2011_0309_2054
2011-03-10
ResourceHack
2010-11-26
STLport-5.2.1.tar.bz2
2011-08-20
srcSpyxx.zip
2012-09-30
DebugViewV4_81.zip
2013-03-13
ProcessExplorer
2011-11-05
Sysinternals_Source.zip
2013-09-16
pcasm-book-simplified-chinese.zip
2014-05-09
quicktimesdk 7.3.0.70 for windows
2015-05-18
C++_Templates_The_Complete_Guide_book_code.zip
2015-06-14
eclipse-java-mars-2-win32-x86_64.zip
2017-04-21
depends22_x64.zip
2015-07-26
NTFS文件系统扇区存储探秘_电子书和随书光盘.7z
2019-03-18
Linux C程序设计王者归来_book_cd.7z.003
2018-08-22
Linux C程序设计王者归来_book_cd.7z.002
2018-08-21
International standard ISO/IEC C++98
2015-12-25
Linux C程序设计王者归来_book_cd.7z.001
2018-08-21
Linux C程序设计王者归来_book_cd.7z.004
2018-08-22
book code C语言名题精选百则
2015-12-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅