面包板上建Arduino最小系统已经不能满足我的好奇心了,网上搜了下业余条件下自制PCB的方法,决定尝试下用热转印发做个PCB,实现ATMega328p-pu芯片基于Arduino的时钟。
首先当然需要用于设计PCB的软件。有人推荐Sprint-Layout,试了下确实不错。我这样的纯业余用户第一次用稍微研究了一下基本上就能开工了。先完成了一个。只会单面板布局,电气特性完全不懂,而且飞线就飞线了吧。因为我打算用I2C的时钟模块和显示屏(DS3231+LCD1602),所以在SCL和SDA引脚上多预留了位置。
(图是半路截屏的,非完成稿)
然后打印到热转印纸上。一定要用激光打印机,并且打印在光滑面上。软件支持自动平铺,因此一次可以打印很多个。另外需要微调下打印比例,否则可能打印出来的引脚间距不是严格的2.54mm。经过几次尝试我把这个比例设置成了1.01(还是有点误差,不过能接受了)。用美工刀裁下一张备用。我的打印机太旧,有些地方打出来还是破损了。不过也没关系,转印完毕后可以用油性记号笔修补。
然后就是关键的热转印了。首先清洁单面覆铜板,用细砂皮(我没有,用了洗碗的百洁布代替)打磨掉氧化层并冲洗干净后在用纸巾吸干,保持铜面向上。电熨斗用干烫档先给覆铜板的铜面预加热,然后把打印纸光滑面向下,小心的贴在铜面上。一定要注意安全,小心烫伤。此时转印纸会自动的黏附在覆铜板上。然后小心的熨烫转印纸区域,确保每个地方都有充分加热,尤其是边缘地带。趁热揭开,完成后的效果就是这样的:
第一次弄失败概率还是蛮大的,边缘处理不好。真失败了也没关系,磨掉重来。我是试了三次才成功的。
后面就好办了,看情况用油性记号笔小修小补一下(取决于打印质量,基本上不需要)。然后就是找个塑料容器用三氯化铁或者环保蚀刻剂腐蚀了。完成后是这样的:
磨掉黑 {MOD}碳粉并打洞。打洞是个技术活。14个一排的IC插座引脚误差大的话会比较难处理。我是套了个洞洞板打的,第一个眼对准很重要。我的板子还是有洞眼打偏甚至打错地方的。
后面就是焊接活了。渣焊功就不展示了。
然后在Arduino IDE下用USBTinyISP烧入Bootloader,板卡类型选了“Arduino Mini”。由于事先已经在商品Arduino板上编程调试通过,因此最后只需要将程序烧入到芯片即可。
我用的方式是USB转TTL。但这里走了太多弯路不多啰嗦了,反正最后的解决方案是:USB转TTL模块除了常规的GND、VCC、RX、TX接自制板卡的相应引脚外(当然RX、TX要交叉接线),TTL模块的RTS也要引出(模块预留了焊盘但是没有排针),并且串联一个104的电容到自制板卡的Reset引脚。这样就解决了自动上传的问题。
最终效果就是这样的: