
note
文章平均质量分 76
LostSpeed
c++ coder
展开
-
openpnp - convert allegro placement to named csv - v5
手头的openpnp设备以前有问题,导致贴片精度差。将设备以最高标准维护完,稳定性和丝杠重复精度都不错。但是贴片精度还差。记得厂家同学在我维护设备之前说:“按照你的想法将设备硬件升级完,如果贴片精度还差怎么办?我当时说,如果还有问题就再找呗。本来也是,设备精度出了问题,那就一步一步的分析。谁敢说,我一次就分析清楚,一次就搞定。如果贴片精度仅仅由一个问题引起,将故障原因分析出来,那么升级了硬件之后,将这个问题搞定。那么精度就上来了。但是这设备的问题很多,谁敢说这瓜包熟?原创 2025-03-31 17:48:24 · 645 阅读 · 0 评论 -
doxygen语法的细节实验
doxygen的注释风格分为多行风格和单行风格。多行风格比单行风格好,这是确定的。多行风格除了首行和尾行,中间行前面的'*'不是必须的。用VS2019写程序时, 插件市场有一些可用的doxygen插件,都试用了一下,都不太好用。doxygen如果自己纯写,也没啥,不过有些烦。如果搞一些模板,需要哪些样式和种类的注释,从自己的模板代码中选择好,复制,粘贴到自己的.h/.cpp中,这样还方便些。原创 2025-03-29 20:12:03 · 680 阅读 · 0 评论 -
c++ - 右击一个cpp文件,但是编译菜单项是灰的
VS2019, 整理工程,在编译,工程报错,说有个函数的实现没找到。有实现part_opt.cpp,头文件也包的正确。去编译输出目录看,发现没有part_opt.cpp生成的part_opt.obj如果没有这个cpp生成的.obj, 那么这个实现.cpp中一定有错误,导致编译不过。只要将这个.cpp编译过了, 缺的实现的.obj就有了。但是发现一个怪现象,右击这个.cpp, 编译的菜单是灰的。比对了其他的正常能编译的.cpp, 发现右击属性中的文件类型有不同。原创 2025-03-29 15:14:37 · 338 阅读 · 0 评论 -
C++ - Header Guard/宏的名称最好不要加前缀/后缀“__“或者‘_‘
在开源工程和自己写代码时,如果对头文件加Header Guard, 一般会在宏前后加尾缀"查了资料,这样不好,因为C++标准说: 有"“前缀或尾缀的宏,都是给系统库用的。如果是应用层的宏,最好不要加”__"前缀或尾缀。在 ISO_IEC_14882_2024 确实有规定* 将.h文件名中的 '-' 和 '.' 改为 '_' * 将所有字母都改成大写的e.g. prj/my-test.h 的header guard 为 MY_TEST_H。原创 2025-03-29 13:49:06 · 265 阅读 · 0 评论 -
C++ - 数组定义元素的尾随逗号更利于维护
以前定义数组时,最后一个数组元素有时加尾随逗号,有时不加。因为知道可加,可不加,就没在意。今天查到了确切资料,知道尾随逗号更利于维护,且编译器支持。那以后就可以放心的在数组定义的最后一个元素后面加尾随逗号了。原创 2025-03-29 11:32:22 · 167 阅读 · 0 评论 -
c++,宏 - 在debug/release中都能用的断言
预定义宏 NDEBUG,表示现在是release编译模式。预定义宏 _DEBUG, 表示现在是debug编译模式。在普通宏中或者正常代码行中,不能用预定义宏的值来做条件判断。否则就会在其中一种编译模式下(debug/release)报错 - NDEBUG/-DEBUG未定义e.g. 错误的姿势注意这个细节后,就可以写出一个在debug/release编译模式下都能用的宏。想在程序中前置条件不满足时,不让程序继续跑, 显示错误发生的文件/行号后, 直接断言或退出。原创 2025-03-28 17:11:12 · 394 阅读 · 0 评论 -
cadence SPB17.4 - allegro - 查看封装管脚坐标的简单方法
在写allegro导出后的坐标文件转换为openpnp坐标文件的转换程序。为了精确,从allegro导出的坐标文件规则为pin1的坐标。现在想知道其他引脚的坐标(e.g. 元件pin1对应的最大对角上的pin坐标), 从而算出元件针对于pins围成的几何图形的中心。用allegro打开PCB, 定位到想要的元件,测量引脚的距离。这个比较烦。从导出的坐标文件中,拷贝封装的名字,在自己的PCB库中,找到封装的.dra. 然后用allegro打开,然后测量引脚间距。也不是很方便。原创 2025-03-27 14:34:18 · 237 阅读 · 0 评论 -
openpnp,cadence SPB17.4,placement - 从allegro中导出坐标文件的选项会影响贴片精度
因为贴片机精度的问题,以最高标准维护了贴片机。现在能确认,贴片机硬件和openpnp合在一起,精度为5个丝.但是将坐标文件导入后,对着板子上的元件浏览,大部分还可以,但是有3个IC,明显会在X轴方向偏了0.2mm. 这还了得…这个现象和我的烂贴片机维护之前的表现是一样的。既然我能确定贴片机硬件和openpnp合在一起是没问题的,那么只能怀疑我的坐标文件不对。这个坐标文件是我用工具处理过的().难道是我的处理代码有问题?不能够啊 😛 如果转换错了,那么所有的元件坐标都应该有问题才对啊?原创 2025-03-26 21:23:30 · 849 阅读 · 0 评论 -
vs2019 - warning GB6292005: multi-line // comment [clang-diagnostic-comment]
如果单行注释的行尾带有斜杠,编译时会有warning GB6292005。有警告的例子和解决方法如下// 注释用''包裹起来 => 'E:\my_git_rep\rep_for_test\'// 目录默认都要带尾巴上的\\// 如果注释行尾为\\, 也有可能会有警告, 最好将行尾出现的\\也用''包裹起来 => 目录默认都要带尾巴上的'\\'原创 2025-03-26 15:35:09 · 143 阅读 · 0 评论 -
openpnp,pcb - 将PCB上干涸的锡膏去掉的方法
贴片机已经维护完成。想验证贴片精度。PCB焊盘上如果没有涂敷东西,太滑了,当元件放到位后,如果位置不精准,不好确定原因(是贴的不准?还是放下元件后,元件在PCB上发生了滑动,引起的位置不准?比较土的方法是用双面胶贴在PCB上,然后贴片来测试。不过做完实验,清理起来非常麻烦,基本贴完,板子就废了。比较好的方法是直接用钢网刷锡膏,测试完后,再用酒精面片将PCB擦干净, 就和新的PCB一样。以前刷了几块实验板,当时只用了一块,剩下的放在PCB转运架上。原创 2025-03-26 11:52:53 · 216 阅读 · 0 评论 -
openpnp - 设备调试完成后的问题总结
在市面上没有找到想要的openpnp设备(办公室环境(10A的家用电),100料位,设备声音一定要小),找到一个厂家同学说可以定制,初步聊了一下挺专业的,感觉靠谱。厂家同学花了2个月的业余时间,帮我定制了设备。23年2月入手了定制好的的openpnp设备,功能性没问题。但是贴片精度一直不行。按理说,相对于设备定制不菲的花费(最后还给了所谓的设计调试费用),精度不至于这个吊样啊。原创 2025-03-25 13:12:50 · 835 阅读 · 0 评论 -
openpnp - 伺服参数的设置表
尝试过丝杠每圈脉冲数对应的 0.01mm/脉冲, 0.002mm/脉冲, 0.001mm/脉冲0.01mm/脉冲有点快。0.002mm/脉冲有点慢,能接受。0.001mm/脉冲太慢。还想尝试计算一下,是否还有其他的mm/脉冲数值。在其他参数(e.g. openpnp每秒的进给量(脉冲数))不变的情况下,mm/脉冲数值和丝杠运动速度有关。丝杠外径对丝杠的挠度有影响。对于1000mm的丝杠,如果是1520的丝杠,将丝杠螺母移到支撑端之后,丝杠中间的挠度为0.5mm.对于1000mm的丝杠,如果想消原创 2025-03-24 10:42:35 · 876 阅读 · 0 评论 -
git,openpnp - 根据安装程序打包名称找到对应的源码版本
想在openpnp官方最新稳定版上改一改,首先就得知道官方打包的安装程序对应的源码版本。原创 2025-03-23 12:22:20 · 435 阅读 · 0 评论 -
debug - 安装.msi时,为所有用户安装程序
为了测试,装了一个test.msi.安装时,只有安装路径的选择,没有是否为所有用户安装的选项。本地有2个用户,一个是正式的win10微软账号usr_a,一个是本地开发账号usr_b。usr_a的权限最高,是本机的第一个管理员账号。usr_b的权限稍微低一些,也是管理员。如果直接安装test.msi, usr_a可以正常用安装好的test程序。但是切到usr_b后,无法使用usr_a安装好的test程序。尝试查看test.msi的命令行帮助,看到有选项可以为所有用户安装。原创 2025-03-21 18:38:05 · 957 阅读 · 0 评论 -
openpnp - 如果安装面的钣金接触面不平,可以尝试加垫片
在X轴导轨上,架上百分表,打设备的工作平面的平面度,发现工作平面不平(和理想平面最多差0.5mm,且是凹凸不平的),当时以为工作平面永久变形了, 或者加工的有问题(其实CNC的零件,很难想象会加工的凹凸不平的)。但是飞达托板装满飞达时,向下凹陷变形已经是2mm以上了,用眼睛都看的出来。我将飞达托板拆下来,发现飞达托板是平的。这说明,15mm厚的铝合金平板零件,如果只有1mm以下的变形,不足以使平板件产生永久变形。今天因为要换Y光电,必须将工作平面从机箱钣金上分离。原创 2025-03-19 20:02:09 · 663 阅读 · 0 评论 -
openpnp - 调整滑块注油嘴角度的方法
注油嘴的理想方向是平行于滑块的上下运动面,防止和滑块上下的东西干涉。且朝向设备外部,方便注油。但是油嘴装到滑块上的油嘴安装孔中,最后拧到位置时,油嘴大概率不在自己想要的平行位置。这时,首先想到的是垫圈,试了一下,不行,因为标准的垫圈最少也有0.5mm厚,而油嘴下面垫了东西,差不多垫0.1mm, 就能改变油嘴45度的方向。如果要去做0.1mm的不锈钢垫片,也不便宜。且还得等几天回来才能继续做实验。想了想,用啥接近0.1mm的东西来垫在油嘴螺纹上呢?原创 2025-03-13 12:37:17 · 308 阅读 · 0 评论 -
debug - 查找非PE(普通数据文件)文件被哪个程序占用
刚才用procexp64.exe, 知道了PE(exe, dll)文件被哪个程序占用的问题。顺便,再实验一下,如何查找非PE文件(文档类,数据类)被哪个程序占用的问题。原创 2025-03-12 12:36:37 · 251 阅读 · 0 评论 -
debug - 查找PE(exe, dll)文件被哪个程序占用
win10有个软件位置安装的不对(默认安装到了C盘),想重新安装到D盘。在控制面版中卸载后,原来C盘的文件夹中还有DLL, 删不掉。好像还有DLL被服务占用。不知道是哪个服务用的这个DLL. 打开服务面板,翻了一下,看不出来。查资料,procexp64.exe可以干这个事(查DLL被哪个进程使用)。原创 2025-03-12 11:37:11 · 324 阅读 · 0 评论 -
openpnp - 丝杠导轨安装的总结
在查自己openpnp设备的精度问题。查到X轴底板上的X轴丝电机座的安装孔被厂家同学手工打了螺纹孔,导致平行度查了0.5mm.年前做了新设计的X轴底板,今天将滑块导轨装上了。有细节, 学到点东西,记录一下。原创 2025-03-11 18:57:39 · 701 阅读 · 0 评论 -
用命令行编译vs工程
看到资料,可以用devenv.com来编译vs工程,做个实验。如果用IDE对vs工程编译过了,就可以用命令行来编译vs工程。用命令行编译vs工程,可以使编译过程自动化。原创 2018-09-16 16:42:43 · 840 阅读 · 0 评论 -
IDA, tar - win10自带的tar.exe可以使用的隐藏命令行参数
再看一个开源工程的编辑脚本(bat)发现他居然用tar命令。难道我的win10里面还有tar.exe?-v Verbose有点好奇,去看了一眼。是win10自带的。但是不清楚是装什么软件装上的这个tar.先学一下这个脚本,看看怎么用tar来做一个文件压缩包。原创 2025-03-08 19:30:42 · 704 阅读 · 0 评论 -
截图 - 用win10自带截图和3D画图来标记截图
以前都用第三方的截图标记工具。这次尝试用win10自带的截图和3D画图工具来标记截图,也凑合用。原创 2025-03-08 12:19:19 · 302 阅读 · 0 评论 -
vscode - 操作整理
不同的文本文件后缀,编辑时可能有不同要求。e.g. .bat文件,就要求用ansi格式保存(否则中文乱码)e.g. 行缩进要求用空格键代表TAB键,一个TAB键为4个空格。vscode通过配置文件,是可以自动设置这些的. 针对不同文本文件类型, 设置不同的配置,方便编辑这些文件。原创 2025-03-08 11:46:54 · 930 阅读 · 0 评论 -
win10 - .bat - 中文显示乱码的解决方法
在win10中写了一个带中文提示的.bat, 运行后乱码。文件格式必须为ansi(可以用记事本, 另存为,编码为ansi)如果用VSCODE打开编辑时,看到的ansi中文是乱码,要改为以GB2312格式打开。原创 2025-03-07 12:01:23 · 162 阅读 · 0 评论 -
VS2019,VCPKG - 为VS2019添加VCPKG
开源工程用到了VCPKG管理的包。开源工程是VS2022的,用VS2019也能打开,将工具链换一下就行。现在已经为VS2019添加了VCPKG, 记录一下。原创 2025-03-06 13:50:43 · 519 阅读 · 0 评论 -
EA - 开源工程的编译
EA开源了‘命令与征服’的游戏源码尝试编译。原创 2025-03-04 19:44:00 · 652 阅读 · 0 评论 -
windbg,IDA - 通过dmp文件,准确定位函数中的汇编代码行
前几天,win10突然崩溃了。现象:本本都在正常用,用了很长时间。中间好像升级几个软件,不太确定具体是升级啥了。在用VS2019在看开源的工程,单步调试。想关掉VS2019时,怎么也关不掉。那重新启动一下计算机吧。正常关机过程中,始终在转圈(一个蓝色的关机界面,上面有个时钟在转动的圆圈),等了10分钟还那样。直接按本本右上角的关机按钮,长按关机。PA : 再启动本本,正常到达登录的界面。点击登录,输入用户名和口令,点击登录。原创 2025-03-04 14:22:16 · 972 阅读 · 0 评论 -
制作VS2019Community的离线安装包
VS2019之前的VS版本(VS2017, VS2015, VS2013 … )的安装程序都是以ISO方式提供的,在网上都能下载到。从VS2019开始,默认的安装程序都是在线安装。在MS官方上只能下载到最新版的VS在线安装程序(e.g. VS2022), 旧版的VS(e.g. VS2019)以后就可能下载不到了。想按照官方文档做一个VS2019的离线安装程序, 做好之后,就不怕MS站点下载不到了。原创 2025-03-03 13:45:35 · 1026 阅读 · 0 评论