- 博客(2444)
- 资源 (604)
- 收藏
- 关注
原创 openpnp - convert allegro placement to named csv - v5
手头的openpnp设备以前有问题,导致贴片精度差。将设备以最高标准维护完,稳定性和丝杠重复精度都不错。但是贴片精度还差。记得厂家同学在我维护设备之前说:“按照你的想法将设备硬件升级完,如果贴片精度还差怎么办?我当时说,如果还有问题就再找呗。本来也是,设备精度出了问题,那就一步一步的分析。谁敢说,我一次就分析清楚,一次就搞定。如果贴片精度仅仅由一个问题引起,将故障原因分析出来,那么升级了硬件之后,将这个问题搞定。那么精度就上来了。但是这设备的问题很多,谁敢说这瓜包熟?
2025-03-31 17:48:24
629
原创 doxygen语法的细节实验
doxygen的注释风格分为多行风格和单行风格。多行风格比单行风格好,这是确定的。多行风格除了首行和尾行,中间行前面的'*'不是必须的。用VS2019写程序时, 插件市场有一些可用的doxygen插件,都试用了一下,都不太好用。doxygen如果自己纯写,也没啥,不过有些烦。如果搞一些模板,需要哪些样式和种类的注释,从自己的模板代码中选择好,复制,粘贴到自己的.h/.cpp中,这样还方便些。
2025-03-29 20:12:03
675
原创 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
328
原创 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
262
原创 C++ - 数组定义元素的尾随逗号更利于维护
以前定义数组时,最后一个数组元素有时加尾随逗号,有时不加。因为知道可加,可不加,就没在意。今天查到了确切资料,知道尾随逗号更利于维护,且编译器支持。那以后就可以放心的在数组定义的最后一个元素后面加尾随逗号了。
2025-03-29 11:32:22
164
原创 c++,宏 - 在debug/release中都能用的断言
预定义宏 NDEBUG,表示现在是release编译模式。预定义宏 _DEBUG, 表示现在是debug编译模式。在普通宏中或者正常代码行中,不能用预定义宏的值来做条件判断。否则就会在其中一种编译模式下(debug/release)报错 - NDEBUG/-DEBUG未定义e.g. 错误的姿势注意这个细节后,就可以写出一个在debug/release编译模式下都能用的宏。想在程序中前置条件不满足时,不让程序继续跑, 显示错误发生的文件/行号后, 直接断言或退出。
2025-03-28 17:11:12
389
原创 cadence SPB17.4 - allegro - 查看封装管脚坐标的简单方法
在写allegro导出后的坐标文件转换为openpnp坐标文件的转换程序。为了精确,从allegro导出的坐标文件规则为pin1的坐标。现在想知道其他引脚的坐标(e.g. 元件pin1对应的最大对角上的pin坐标), 从而算出元件针对于pins围成的几何图形的中心。用allegro打开PCB, 定位到想要的元件,测量引脚的距离。这个比较烦。从导出的坐标文件中,拷贝封装的名字,在自己的PCB库中,找到封装的.dra. 然后用allegro打开,然后测量引脚间距。也不是很方便。
2025-03-27 14:34:18
226
原创 openpnp,cadence SPB17.4,placement - 从allegro中导出坐标文件的选项会影响贴片精度
因为贴片机精度的问题,以最高标准维护了贴片机。现在能确认,贴片机硬件和openpnp合在一起,精度为5个丝.但是将坐标文件导入后,对着板子上的元件浏览,大部分还可以,但是有3个IC,明显会在X轴方向偏了0.2mm. 这还了得…这个现象和我的烂贴片机维护之前的表现是一样的。既然我能确定贴片机硬件和openpnp合在一起是没问题的,那么只能怀疑我的坐标文件不对。这个坐标文件是我用工具处理过的().难道是我的处理代码有问题?不能够啊 😛 如果转换错了,那么所有的元件坐标都应该有问题才对啊?
2025-03-26 21:23:30
842
原创 vs2019 - warning GB6292005: multi-line // comment [clang-diagnostic-comment]
如果单行注释的行尾带有斜杠,编译时会有warning GB6292005。有警告的例子和解决方法如下// 注释用''包裹起来 => 'E:\my_git_rep\rep_for_test\'// 目录默认都要带尾巴上的\\// 如果注释行尾为\\, 也有可能会有警告, 最好将行尾出现的\\也用''包裹起来 => 目录默认都要带尾巴上的'\\'
2025-03-26 15:35:09
140
原创 openpnp,pcb - 将PCB上干涸的锡膏去掉的方法
贴片机已经维护完成。想验证贴片精度。PCB焊盘上如果没有涂敷东西,太滑了,当元件放到位后,如果位置不精准,不好确定原因(是贴的不准?还是放下元件后,元件在PCB上发生了滑动,引起的位置不准?比较土的方法是用双面胶贴在PCB上,然后贴片来测试。不过做完实验,清理起来非常麻烦,基本贴完,板子就废了。比较好的方法是直接用钢网刷锡膏,测试完后,再用酒精面片将PCB擦干净, 就和新的PCB一样。以前刷了几块实验板,当时只用了一块,剩下的放在PCB转运架上。
2025-03-26 11:52:53
212
原创 openpnp - 设备调试完成后的问题总结
在市面上没有找到想要的openpnp设备(办公室环境(10A的家用电),100料位,设备声音一定要小),找到一个厂家同学说可以定制,初步聊了一下挺专业的,感觉靠谱。厂家同学花了2个月的业余时间,帮我定制了设备。23年2月入手了定制好的的openpnp设备,功能性没问题。但是贴片精度一直不行。按理说,相对于设备定制不菲的花费(最后还给了所谓的设计调试费用),精度不至于这个吊样啊。
2025-03-25 13:12:50
807
原创 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
866
原创 git,openpnp - 根据安装程序打包名称找到对应的源码版本
想在openpnp官方最新稳定版上改一改,首先就得知道官方打包的安装程序对应的源码版本。
2025-03-23 12:22:20
428
原创 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
950
原创 openpnp - 如果安装面的钣金接触面不平,可以尝试加垫片
在X轴导轨上,架上百分表,打设备的工作平面的平面度,发现工作平面不平(和理想平面最多差0.5mm,且是凹凸不平的),当时以为工作平面永久变形了, 或者加工的有问题(其实CNC的零件,很难想象会加工的凹凸不平的)。但是飞达托板装满飞达时,向下凹陷变形已经是2mm以上了,用眼睛都看的出来。我将飞达托板拆下来,发现飞达托板是平的。这说明,15mm厚的铝合金平板零件,如果只有1mm以下的变形,不足以使平板件产生永久变形。今天因为要换Y光电,必须将工作平面从机箱钣金上分离。
2025-03-19 20:02:09
659
原创 openpnp - 调整滑块注油嘴角度的方法
注油嘴的理想方向是平行于滑块的上下运动面,防止和滑块上下的东西干涉。且朝向设备外部,方便注油。但是油嘴装到滑块上的油嘴安装孔中,最后拧到位置时,油嘴大概率不在自己想要的平行位置。这时,首先想到的是垫圈,试了一下,不行,因为标准的垫圈最少也有0.5mm厚,而油嘴下面垫了东西,差不多垫0.1mm, 就能改变油嘴45度的方向。如果要去做0.1mm的不锈钢垫片,也不便宜。且还得等几天回来才能继续做实验。想了想,用啥接近0.1mm的东西来垫在油嘴螺纹上呢?
2025-03-13 12:37:17
301
原创 debug - 查找非PE(普通数据文件)文件被哪个程序占用
刚才用procexp64.exe, 知道了PE(exe, dll)文件被哪个程序占用的问题。顺便,再实验一下,如何查找非PE文件(文档类,数据类)被哪个程序占用的问题。
2025-03-12 12:36:37
248
原创 debug - 查找PE(exe, dll)文件被哪个程序占用
win10有个软件位置安装的不对(默认安装到了C盘),想重新安装到D盘。在控制面版中卸载后,原来C盘的文件夹中还有DLL, 删不掉。好像还有DLL被服务占用。不知道是哪个服务用的这个DLL. 打开服务面板,翻了一下,看不出来。查资料,procexp64.exe可以干这个事(查DLL被哪个进程使用)。
2025-03-12 11:37:11
321
原创 openpnp - 丝杠导轨安装的总结
在查自己openpnp设备的精度问题。查到X轴底板上的X轴丝电机座的安装孔被厂家同学手工打了螺纹孔,导致平行度查了0.5mm.年前做了新设计的X轴底板,今天将滑块导轨装上了。有细节, 学到点东西,记录一下。
2025-03-11 18:57:39
691
原创 IDA, tar - win10自带的tar.exe可以使用的隐藏命令行参数
再看一个开源工程的编辑脚本(bat)发现他居然用tar命令。难道我的win10里面还有tar.exe?-v Verbose有点好奇,去看了一眼。是win10自带的。但是不清楚是装什么软件装上的这个tar.先学一下这个脚本,看看怎么用tar来做一个文件压缩包。
2025-03-08 19:30:42
690
原创 截图 - 用win10自带截图和3D画图来标记截图
以前都用第三方的截图标记工具。这次尝试用win10自带的截图和3D画图工具来标记截图,也凑合用。
2025-03-08 12:19:19
278
原创 vscode - 操作整理
不同的文本文件后缀,编辑时可能有不同要求。e.g. .bat文件,就要求用ansi格式保存(否则中文乱码)e.g. 行缩进要求用空格键代表TAB键,一个TAB键为4个空格。vscode通过配置文件,是可以自动设置这些的. 针对不同文本文件类型, 设置不同的配置,方便编辑这些文件。
2025-03-08 11:46:54
925
原创 win10 - .bat - 中文显示乱码的解决方法
在win10中写了一个带中文提示的.bat, 运行后乱码。文件格式必须为ansi(可以用记事本, 另存为,编码为ansi)如果用VSCODE打开编辑时,看到的ansi中文是乱码,要改为以GB2312格式打开。
2025-03-07 12:01:23
155
原创 VS2019,VCPKG - 为VS2019添加VCPKG
开源工程用到了VCPKG管理的包。开源工程是VS2022的,用VS2019也能打开,将工具链换一下就行。现在已经为VS2019添加了VCPKG, 记录一下。
2025-03-06 13:50:43
510
原创 windbg,IDA - 通过dmp文件,准确定位函数中的汇编代码行
前几天,win10突然崩溃了。现象:本本都在正常用,用了很长时间。中间好像升级几个软件,不太确定具体是升级啥了。在用VS2019在看开源的工程,单步调试。想关掉VS2019时,怎么也关不掉。那重新启动一下计算机吧。正常关机过程中,始终在转圈(一个蓝色的关机界面,上面有个时钟在转动的圆圈),等了10分钟还那样。直接按本本右上角的关机按钮,长按关机。PA : 再启动本本,正常到达登录的界面。点击登录,输入用户名和口令,点击登录。
2025-03-04 14:22:16
965
原创 制作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
921
原创 git - study
progit 这本书是官方的,权威。以下内容都是对这本书的读书笔记和实验的体会。这本官方的书,前半部分说git命令具体怎么用,后半部分说github怎么用 + git高级和细节的操作。因为作者就是github的人。能看完前半部分对自己有用的部分,就可以熟练用git命令来进行日常的git操作了。对于危险的git操作(e.g. 删除本地分支,删除远程分支,删除tag, rebase, reset), 最好不要做。如果非要做的话,最好找个靠谱的GUI工具来弄。
2025-02-26 13:23:35
1093
原创 丝锥 - 断在螺纹孔中后的总结
一个平板零件加工回来了,上面有好多螺纹孔(M3,M4,M6).先用手将螺丝拧紧螺纹孔试试(怕在设备上装上这个零件后,再发现螺纹孔拧不进,那时可有点麻烦),看看合适不?从一端拧进去,拧不到底,露不出头到另一端。从另外一端,根本就拧不进去。没有螺纹。为了保险,准备将螺纹用丝锥都过一遍。M3, M6的螺纹都过了一遍,用手都可以轻松拧紧螺丝。M4的螺纹20多个,过到第10个的时候,发现咋拧出丝锥(左旋)的时候,突然力道一松。开始以为是扳手的卡口松动,再一看,居然丝锥断在螺纹里面了。
2025-02-26 01:18:36
802
原创 html - 手工添加上次阅读的位置, 方便下次阅读
在看一本电子书,有pdf格式的,但是比较喜欢看html格式的(复制比较方便)。但是有个缺点,如果看到一半,关掉了html文件。下次再打开时,chrome显示html内容时,还是从头开始。如何这样的话,还得自己找上次看到了哪里,很烦人。
2025-02-25 13:56:35
321
原创 git,bash - 从一个远端git库只下载一个文件的方法
github上有很多大佬上传了电子书库,如果只相中一本书,也要去迁出整个库,急死个人。试了 Git稀疏检出 的方法,不现实,因为对于一个巨大的库,那也下载好久啊(git库的元数据就很大)。只能是用git库页面的下载raw文件的方法,只是说,是用工具来下载,还是手工点击用浏览器来下载的区别。
2025-02-23 23:14:00
354
原创 nasm - BasicWindow_64
学个demo, 这个demo最主要学到了:不用在调用每个API前都准备阴影区,在API调用后栈平衡。可以在函数入口处考虑到所用的栈尺寸最大值(16字节对齐,阴影区,函数的所有局部变量,调用API时用的参数最多的栈尺寸),开栈;在函数出口进行栈平衡。其他细节地方,自己对着VS2019release版的x64反汇编就能搞。说到底,要想拿汇编代码来写东西,要知道正向怎么写,然后才能参考反汇编代码来写NASM的工程。要不谁知道对应的汇编代码怎么弄。
2025-02-21 22:11:12
232
原创 NASM - win64调用ExitProcess不用提供阴影区的原因
通常来说,win64位程序调用API时,必须提供阴影区(shadow space), 这是win64 API调用的约定。但是发现一个特例 ExitProcess().Exit:加上阴影区再调用API好一些,也没有负面影响退出的函数是API, 为什么不做栈平衡, 是ExitProcess内部不用阴影区么?ExitProcess是特例?调用ExitProcess时,原来的例子是没有阴影区的。尝试在调用ExitProcess的前后,加上阴影区,如上代码。
2025-02-21 18:52:04
267
原创 nasm - BasicWindow_64
学习网上找到的demo.x64和x86的汇编源码还差挺多的。x64的汇编代码不好写,细节整不对,程序就不运行。如果要查为啥不运行,也要看和正向生成的C工程的反汇编代码有哪些区别,才看的出来。LEA, MOV很容易弄混。MOV时,是否该加 地址数据类型的修饰(e.g. qword, dword), 这些也是细节。感觉真是有需求用反汇编实现关键函数时,也是要以正向的代码生成的反汇编代码的基础上小步快跑的改,才不至于改了一坨后跑不起来。
2025-02-20 19:03:49
307
pcasm-book-simplified-chinese.zip
2014-05-09
Advanced-Windows-Debugging-sources-awd.zip
2014-04-28
TrueCrypt 7.1a Source.zip
2013-11-01
filedisk-17-org.zip
2013-10-31
Sysinternals_Source.zip
2013-09-16
vs2010_Sample_C_plus_plus.zip
2013-08-08
DebugViewV4_81.zip
2013-03-13
srcSpyxx.zip
2012-09-30
ProcessExplorer
2011-11-05
cppunit-1.12.1.tar.gz
2011-08-30
STLport-5.2.1.tar.bz2
2011-08-20
工程目录结构模板设计_2011_0309_2054
2011-03-10
ResourceHack
2010-11-26
NTFS文件系统扇区存储探秘_电子书和随书光盘.7z
2019-03-18
Linux C程序设计王者归来_book_cd.7z.004
2018-08-22
Linux C程序设计王者归来_book_cd.7z.003
2018-08-22
Linux C程序设计王者归来_book_cd.7z.002
2018-08-21
Linux C程序设计王者归来_book_cd.7z.001
2018-08-21
eclipse-java-mars-2-win32-x86_64.zip
2017-04-21
International standard ISO/IEC C++98
2015-12-25
book code C语言名题精选百则
2015-12-16
depends22_x64.zip
2015-07-26
C++_Templates_The_Complete_Guide_book_code.zip
2015-06-14
quicktimesdk 7.3.0.70 for windows
2015-05-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人