前言
由于本人从事的是马达驱动行业,需要用电脑调试各种与 DC 311V 共地和 AC220V 供
电的板子;设计本隔离板的原因有两个:
1、一般设备存在接地和计算机
电源也有些有接地,USB 是 5V 输出,在线调试 MCU 的时
候容易造成灌入电压/电流到 USB 口,容易造成 USB 口损坏,或者烧毁整台计算机;
2、我们调试板子的时候功率器件在调试阶段都存在炸板、炸机的情况,容易将 AC220V 引
到计算机上来,尽管我们调试的时候有些时候会断开
仿真器(来回插拔麻烦,也容易把仿真
接头给接反了) ,但也难免会有忘记的时候(连续工作时间久了就会脑袋晕乎) ;
以上其实都还是一个原因——为了计算机的安全和调试工程师的人身安全, 不想因为调
试机子造成人身、财务的损失(之前调试电机的时候一手在没隔离的(隔离也有感应电压过
来)市电 220VAC 的总开关上面,摸到背面一块接地的金属;另外一只手去按矩阵开关控制
系统起停,由于 3.3V MCU GND 与 310VDC 电源 GND 是共在一起的,按按键的瞬间就被
电到了,电流直接从左手过心脏到右手,完全麻痹,这是被电的次数里面最厉害一次,心脏
整个感觉不好了,休息了一个上午,感觉心脏跳动的没力、胸闷) ;
以上是经历,为了解决每天都危颤颤的工作和减少失误,可靠的保护,想了个办法,把
Jlink 隔离了,于是在网上找了 N 多的 Jlink 时序的文章,发现 Segger 其实也是有官方的隔
离板的,就是有两个问题:一,不知道上哪去买,二,价格要几百欧元,死贵死贵,消耗不
起;于是想着一定要自己解决这个问题;一开始用光耦,请教老硬件工程师,他给出了一个
比较不错的方法,用高速光耦隔离 Jlink,效果是可以,但是存在一个问题,尽管用了高速
光耦,下载/仿真的速度较慢,非常容易掉线,时间久了光耦还存在衰减,100k 的下载速度
都成问题,只有 SWDIO 和 SWCLK 信号,没有更多的信号过去(比如:RESET 和 SWO 信
号等) ;
第一代产品就这么坑坑洼洼的用着,忍受着偶尔还连接不上,下载速度慢的问题,其实
除了看 IAR 动态变量的时候很有用,还真不如直接不用隔离板下载完程序拔掉仿真口得了,
速度更快;这个板子部分解决了隔离下载的问题,从无到有的过程,但是体验不好,速度慢,
也经不起折腾;
第二代产品:为了解决更快、更可靠的调试体验,我打算选择更快的隔离方法,光耦是
不能再用了,直接用个磁偶得了,速度够快,而且稳定几乎没衰减,据称磁耦一天工作 24
小时,可以连续工作 30 年以上,想想都兴奋;立马做板,打样,直接 ADI 的芯片走起(后
面发现 Silabs 的隔离器件也很不错,也可以搞定,而且还是 pin to pin 兼容的) ,板子回来以
后调试下载,一切都 ok,稳定、速度也不慢;本来所有事情到这里了也就告一段落了,完
美解决了隔离线上调试的问题,直到有一天我调试一块陌生板子的时候,老是连接不上,我
也不知道哪里有问题,后面才发现,我把隔离板的电源跟地接到目标板的时候接反了,于是
隔离芯片发热,吼吼,烧坏了;唉,只能怪我粗心大意,也怪我设计不周到,明明在电源线
上加个二极管就直接解决的事情,还是导致板子烧毁;
就这样我的隔离板又升级到了第三代,与第二代差别是电源线上增加了一个二极管,以防像我之前的那次那样接反造成隔离板烧坏;没有重大升级,仅仅是修改了 Debug 口的 Pin
脚位和增加电源线上的二极管;其实这个板子还有一个 bug,于是升级到了版本 0.4;
经历了这么多折磨,我终于可以将这个板子推荐给各位
电子同仁,让大家调试更舒心;
功能介绍
1、隔离板分成了 Jlink 端和 Target 端;
Jlink 端表示接到 Jlink 的输出;
Ta
rget端表示接到目标
PCB上的
单片机 SWD口/JTAG口 (这个隔离板可以兼容 JTAG/SWD) ;
接口定义及其 Pin1 脚位置
Jlink 排线
2、隔离电压:
1000V 隔离电压不在话下,除非你说要在打雷击实验和打静电实验的时候调试机子,我感觉这个概率几乎没有吧?要是真的有这个需求,还是可以有解决方案,只是磁偶估计不能再用
了(最大 5kV 隔离) ;
3、脚位名称缩写:
由于板子空间,正面的时候不太好写全标号,简写如下:
GD —— GND
SC —— SWCLK
SD —— SWDIO
SO —— SWO
VC —— VCC
RT —— RESET
大家有可能会疑惑了,一般我们都是这么排列仿真口的:
VCC
SWDIO
SWCLK
SWO
RESET
GND
为啥要改成我那个不规则的呢?原因还是怕接反,尽管我们隔离板电源线上加了二极管,但
是万一有一天你说老子懒得给目标 PCB 上电了,要直接从隔离板这边给目标 PCB 上供电 (我
们隔离板两边都留了电源针脚) ,假如按照上面的针位一旦把 Debug 口倒过来接了,那么你
死了,哦不是你死了,是你 PCB 上的 MCU 要死了,电源地反了;不说了,说了都是泪,
经过这次“死”之后,我在第三代把 Debug 口换成了:
GND
SWCLK
SWDIO
SWO
VCC
RESET
假如接反了会怎样呢?其实不会怎样,最多你默默的把它拔下来反过来重新接一下就好了;
4、板子图片/界面介绍(版本 3 和版本 4 差不多,懒得改图,借用版本 3 的图了) :
先上正反两幅图片,一切都一幕了然了:
正面:背面的符号都很简单,都是全称,没啥介绍的了;
5、应用场景
1) 、一般工业、白色家电马达/电机驱动调试
2) 、数字电源调试
3) 、太阳能逆变器调试
4) 、电动汽车调试
5) 、其他非隔离电源供电场合调试
6) 、3.3V/5V 或者 5V/3.3V 电平不一样系统调试
感觉上面列的多此一举。 总之一句话就是非隔离电源供电和你觉得需要隔离调试单片机才安全的场合适用该板子。
6、IAR 等其他 IDE 和工具的设置
由于受隔离器件的影响, 理论不能超过 1M 时钟仿真, 否则会掉线, 这里截图说明了一下 IAR
和 Jflash 的设置,其他环境类似不一一列举了。
7、结束语
大家都是同行业的同仁,希望小小隔离板更能帮助大家更好的工作,生活;要是有更高调试需求,其实还有很多更快更优的解决方案,不想再折腾了,反正就那样,没啥难度;做这个
板子纯属兴趣,周末的时候搞得,没啥技术含量,只是把这个过程留下来了,之前我们部门
老大还说,这个隔离板原厂都不一定可以设计的出来,哎~也许是工程师的固执,为了咽下
这口气罢了;
`