市面上有几种STM32的脱机烧录器,ISP的比较少,由于本人工作原因使用的都是ISP下载,ep968又比较贵,而且生产线操作人员觉得操作复杂。于是决定自己做一个U盘式,一键ISP下载的工具。
先上源码,如有需要解释再来解释。
使用MINISTM32。使用资源:USB通讯口(模拟U盘,只可写,内部可加密或读出错误值防止被拷贝走),SPI FLASH ,LED1,LED2,KEY2,USMART,PB10,PB11(UART3),PB13,PB14.没有使用液晶。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
东西不是什么高深的东西,而且没有加入烧写次数限制,没有处理读写保护的情况,只有写没有回读校验(但是实测100次,成功率可以100%),没有加编程后读写保护,真正使用都要加上。由于本人的miniSTM32是2012年买的,上面用的是STM32F103RBT6 和 W25Q16,因此先做了这个精简版本,等不忙时再逐步添加。
研究过USB的DFU和有位大侠的HID方式烧写STM8的程序,但是由于自己使用方面的几个限制,没有采用,而是采用这种大家都会操作的U盘方式。
1,由于工厂人员素质参差不齐,如果做需要驱动的,会面临很多驱动不了等等问题,比较烦,弃用;
2,个人对使用液晶屏可以写入N个code烧写的设备感觉有点小缺陷,就是如果厂里把控不严烧写器丢失,后果有点严重,因为厂里所有的烧写代码几乎都在里面!所以这个小玩具的目的是:里面放入1个bin文件,连好电缆,设备上电,按KEY2就可以下载。对操作人员来说非常简单,对往此玩具的内部写bin文件操作也不复杂。而且这个东西丢了,损失有限。(题外话,如果是内部人员漏出hex或bin文件的问题,该设备无法解决)
3.采用6线ISP。3.3V GND RX TX BOOT0 NRST
操作方式:操作方式分两部分
1.将bin文件写入该下载器;将USB通信口插入电脑USB口,会出现新的U盘盘符,如果提示格式化请格式化FAT格式,之后会虚拟出1.9xM的U盘,之后将bin文件拷进U盘根目录(文件名尽量遵循8.3格式,长文件名支持并不好)(通过hex或axf得到bin文件的方法请参考互联网)
2.现场烧写设备;将电缆插入待烧写的线路板的ISP口,线路板上电,按KEY2按键,就会自动下载。下载时LED2闪烁,下载完毕LED2亮,如果下载未完成则LED1亮
注:对于该设备,两个操作不可同时完成,进行1操作时,取用PC的USB供电,尽量不可连接设备电源,不过连了外部5V也不会烧东西;进行操作2时,由设备供电。
一周热门 更多>