搜索
bottom↓
回复: 57

热烈庆祝”采用电容触摸屏的离线脱机下载器“,由 SUPER_CRJ 领队

  [复制链接]
(12499726)

出9010入3450汤圆

发表于 2020-6-6 11:38:04 | 显示全部楼层 |阅读模式

采用电容触摸屏的离线脱机下载器

说明:当前市场的离线下载器价格高,种类多,支持的芯片比较单一。最主要是一点:不够现代化,大多还使用按键,或者连按键都没有,稍微高端一点的就加个LCD,但是LCD都不是触摸的,或者说是电阻屏,显得太过时了。
所以需要设计一款现代化的离线下载器:电容屏无按键带电池多芯片的脱机下载器。
功能:
        离线下载器,可以离线下载基于SWD通信的ARM芯片,比如STM32,NXP,GD32,还有常见的:STM8和N76
主要方案:
        1:使用电容触摸屏,市场上当前都是按键+显示屏,有的连显示屏都没有。
        2:使用DAP核心,从MDK中抽取算法,几乎只要是MDK中有的芯片,这边都可以添加进去。
        3:加电池,随身携带。
        4:重新开模,市场上找的外壳都显示太工业化不够现代。
        5:开源方式,设计过程中的所有组合代码和硬件设计都开源。
        6:时间:预计从开始到结束,大约3个月之内。










本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(12499342)

出0入0汤圆

发表于 2020-6-6 11:44:28 | 显示全部楼层
这个外观不错,看着挺上档次
(12498895)

出0入4汤圆

发表于 2020-6-6 11:51:55 | 显示全部楼层
这个不错,跟进。
(12498507)

出0入0汤圆

发表于 2020-6-6 11:58:23 | 显示全部楼层
我一直也想做这件事,思路是类似Jlink的方案,也收集了很多资料。
主要是我们在用的一个系列的芯片PAC52XX,芯片的供电
电压5V,3,3V都不能烧写,需要将电压升压到5.8V左右。

建议: 芯片供电电压设置成可调的。
(12497918)

出0入0汤圆

发表于 2020-6-6 12:08:12 | 显示全部楼层
建议用个可以跑linux的,如全志之类的做人机交互,另外一个mcu负责接口协议.
(12497749)

出100入30汤圆

发表于 2020-6-6 12:11:01 来自手机 | 显示全部楼层
zhikunWang 发表于 2020-6-6 11:58
我一直也想做这件事,思路是类似Jlink的方案,也收集了很多资料。
主要是我们在用的一个系列的芯片PAC52XX ...

兄台是做无刷电机控制器的吗?这个芯片能做恒功率吗?
(12497522)

出0入0汤圆

发表于 2020-6-6 12:14:48 | 显示全部楼层
是的,这个芯片是做无刷电机用的。
做恒功率跟芯片没关系,这个是软件算法的问题。
当然,这个芯片可以做恒功率。
(12496394)

出0入0汤圆

发表于 2020-6-6 12:33:36 | 显示全部楼层
DAPLink?  no care!
(12495227)

出65入81汤圆

发表于 2020-6-6 12:53:03 | 显示全部楼层
zhikunWang 发表于 2020-6-6 11:58
我一直也想做这件事,思路是类似Jlink的方案,也收集了很多资料。
主要是我们在用的一个系列的芯片PAC52XX ...

好的,这次做就做成可以调节的电压的。不过一般做成1.8-5V的,那你的平时怎么下载的?JlinkV9之类的端口也是提供1.8-5.5V之间。
(12494265)

出0入0汤圆

发表于 2020-6-6 13:09:05 | 显示全部楼层
这个项目不错。有兴趣加入。
(12494080)

出9010入3450汤圆

 楼主| 发表于 2020-6-6 13:12:10 来自手机 | 显示全部楼层
honami520 发表于 2020-6-6 13:09
这个项目不错。有兴趣加入。

你手上有项目可以开源的吗? 给我们也搞一个啊。
(12493940)

出0入0汤圆

发表于 2020-6-6 13:14:30 | 显示全部楼层
鼎力推荐
(12492764)

出85入0汤圆

发表于 2020-6-6 13:34:06 | 显示全部楼层
期待早日上市  
(12491832)

出0入0汤圆

发表于 2020-6-6 13:49:38 | 显示全部楼层
不错不错,非常期待。 整合之后方便了
(12486994)

出90入0汤圆

发表于 2020-6-6 15:10:16 | 显示全部楼层
希望加入:能下载加密了并限制烧录次数的HEX功能。
(12482776)

出0入0汤圆

发表于 2020-6-6 16:20:34 | 显示全部楼层
SUPER_CRJ 发表于 2020-6-6 12:53
好的,这次做就做成可以调节的电压的。不过一般做成1.8-5V的,那你的平时怎么下载的?JlinkV9之类的端口 ...

另加了一个升压模块,从5V升到了5.8V左右
(12482081)

出0入0汤圆

发表于 2020-6-6 16:32:09 | 显示全部楼层
Jlink里升压模块为MT3608

PIC pickit2 编程器即可以通过上位机软件设置编程电压的,可以借鉴。


附件为pickit2的说明,原理图在P81

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(12481370)

出0入0汤圆

发表于 2020-6-6 16:44:00 | 显示全部楼层
Jlink有个脱机编程器的,但是国内很难买。
Flasher,1千多美元,图片如下:


整理来说:非常好用,但是没有显示屏,不能加载多个工程hex

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(12478389)

出0入0汤圆

发表于 2020-6-6 17:33:41 | 显示全部楼层
支持开源项目,脱机下载器。
(12477670)

出0入0汤圆

发表于 2020-6-6 17:45:40 | 显示全部楼层
建议加个通讯口,TTL串口或者RS485,可以用来选择下载什么固件和控制下载。
自动化烧录很有用,不用人去选烧录什么固件。直接发指令控制下载什么固件。
(12468326)

出65入81汤圆

发表于 2020-6-6 20:21:24 | 显示全部楼层
lingdianhao 发表于 2020-6-6 17:45
建议加个通讯口,TTL串口或者RS485,可以用来选择下载什么固件和控制下载。
自动化烧录很有用,不用人去选 ...

好的,谢谢建议。这个功能要加上。
(12465381)

出0入4汤圆

发表于 2020-6-6 21:10:29 | 显示全部楼层
这个项目不错,最近有个需要支持NXP的 MC9S08DZ60.
(12464905)

出0入8汤圆

发表于 2020-6-6 21:18:25 | 显示全部楼层
本帖最后由 iamseer 于 2020-6-6 21:20 编辑
apple_eat 发表于 2020-6-6 12:08
建议用个可以跑linux的,如全志之类的做人机交互,另外一个mcu负责接口协议.


我是用 nano pi带oled的外壳做下载器的。好处是linux配置好编程软件,写好脚本,用任何编程器都可以。烧录AVR ARM都可以。

https://github.com/DeqingSun/NanoHatOLED

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(12464835)

出0入0汤圆

发表于 2020-6-6 21:19:35 来自手机 | 显示全部楼层
这个不错,参与进来
(12463410)

出0入0汤圆

发表于 2020-6-6 21:43:20 | 显示全部楼层
关注,感兴趣!
(12457517)

出0入0汤圆

发表于 2020-6-6 23:21:33 | 显示全部楼层

这个项目不错,关注
(12457230)

出0入4汤圆

发表于 2020-6-6 23:26:20 | 显示全部楼层
iamseer 发表于 2020-6-6 21:18
我是用 nano pi带oled的外壳做下载器的。好处是linux配置好编程软件,写好脚本,用任何编程器都可以。烧 ...

gif 用什么软件做的??
(12449857)

出0入0汤圆

发表于 2020-6-7 01:29:13 | 显示全部楼层
又一个开源好项目,应接不暇呀!
(12446614)

出0入0汤圆

发表于 2020-6-7 02:23:16 | 显示全部楼层
我也要参与,弄个这个,后面增加自己用到的MCU,不错
(12437626)

出0入8汤圆

发表于 2020-6-7 04:53:04 | 显示全部楼层
rei1984 发表于 2020-6-6 23:26
gif 用什么软件做的??

https://ezgif.com/
(12416255)

出0入42汤圆

发表于 2020-6-7 10:49:15 | 显示全部楼层
zhikunWang 发表于 2020-6-6 11:58
我一直也想做这件事,思路是类似Jlink的方案,也收集了很多资料。
主要是我们在用的一个系列的芯片PAC52XX ...

active-semi 的芯片吗?
(12394905)

出0入0汤圆

发表于 2020-6-7 16:45:05 | 显示全部楼层
asj1989 发表于 2020-6-7 10:49
active-semi 的芯片吗?

是的。active-semi只有一个系列,都是针对无刷电机的。
(12368048)

出0入0汤圆

发表于 2020-6-8 00:12:42 | 显示全部楼层
这个好,期待中
(12367897)

出0入0汤圆

发表于 2020-6-8 00:15:13 | 显示全部楼层
mark
(12322413)

出65入81汤圆

发表于 2020-6-8 12:53:17 | 显示全部楼层
iamseer 发表于 2020-6-6 21:18
我是用 nano pi带oled的外壳做下载器的。好处是linux配置好编程软件,写好脚本,用任何编程器都可以。烧 ...

好的,你这也非常好。我方案征集的时候问下意见。
(12315867)

出140入8汤圆

发表于 2020-6-8 14:42:23 | 显示全部楼层
去年已经买了安富莱的H7-TOOL,楼主加油
内置电池和触摸,使用更加方便
(12195275)

出0入0汤圆

发表于 2020-6-10 00:12:15 | 显示全部楼层
SUPER_CRJ 发表于 2020-6-6 20:21
好的,谢谢建议。这个功能要加上。

串口通信要很高级的烧录机才有,建议增加开始烧录,烧录中,烧录完成,三个I/O 方式。
(12184200)

出0入34汤圆

发表于 2020-6-10 03:16:50 | 显示全部楼层
本帖最后由 dukelec 于 2020-6-10 03:27 编辑
iamseer 发表于 2020-6-6 21:18
我是用 nano pi带oled的外壳做下载器的。好处是linux配置好编程软件,写好脚本,用任何编程器都可以。烧 ...


Linux 好评。。。

我更懒,当年直接用友善的平板做烧录工具,一开始还用 html5 做界面,后来干脆用字符终端,好处是意外出错方便分析。。。(以下图片视频就是客户拍给我分析问题的。)
操作也不麻烦,可以把字体调大,成功字符串绿色提示,失败红色提示,也很显眼,如果增加外部 LED 颜色指示灯就更加没问题了。。。

此烧录工具的功能主要是,可以自动从服务器升级烧录工具和固件,固件是 aes256 加密,且每烧录一次,都会计数,服务器留存 log(包含 cpu id,烧录工具 id,烧录固件版本,时间等)。。。
用户可以从菜单选择所需固件,默认不操作键盘,倒计时结束进入最近一次使用的烧录模式。

当时没空实现的高阶功能:
预防 jtag 口录制,虽然固件是密文,但 jtag 口是明文,有能力的人可以破解。
预防方法是,先烧录一个 bootloader 到 ram 执行,它随机生成一个临时的非对称加密私匙,把配套的公匙回传到烧录工具(或服务器),这样最终一个烧录环节的固件是加密传输到芯片。
当然也有破解的方法,就是模拟一个假芯片套取固件,但门槛就高很多了。。。




(没有拍烧录成功的图。)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(12183576)

出0入8汤圆

发表于 2020-6-10 03:27:14 | 显示全部楼层
dukelec 发表于 2020-6-10 03:16
Linux 好评。。。

我更懒,当年直接用友善的平板做烧录工具,一开始还用 html5 做界面,后来干脆用字符 ...

这个赞!
我当时弄linux的初衷是烧录工具链因为莫名奇妙的驱动原因经常崩。所以索性放到一台独立的机器上。保证过几个月开机也不会有问题直接用。
另外就是给Arduino烧Bootloader再也不用每次都看手册研究指令,还担心熔丝位不正确。写到脚本里更方便。
(12183078)

出0入34汤圆

发表于 2020-6-10 03:35:32 | 显示全部楼层
本帖最后由 dukelec 于 2020-6-10 10:31 编辑
iamseer 发表于 2020-6-10 03:27
这个赞!
我当时弄linux的初衷是烧录工具链因为莫名奇妙的驱动原因经常崩。所以索性放到一台独立的机器上 ...


是的,linux 省心省事,我那个最底层的烧录工具也是拿别人 github 上的开源工具改一下只增加加密功能而已,其它直接用。
(stm8 stm32 nrf51/2 等等都有开源的 linux 烧录工具。现在想想加密工具不需要修改,用 tmpfs 可以实现一个虚拟私有分区,其它进程都访问不了,root 也访问不了,存放解密的明文固件就比较安全了。)
接目标芯片的硬件直接用现成的 st-link/v2、cc-debugger、usb-blaster、ft232h 等等,工厂不会在乎多那几十块钱。。。
整个工具,客户端和服务器全是 shell 脚本,一起几百行代码搞定。。。


而且,一台工具,即可以烧录,还可以很方便的测试板子功能(我这个是测试蓝牙连接和控制)。
(12162473)

出65入81汤圆

发表于 2020-6-10 09:18:57 | 显示全部楼层
dukelec 发表于 2020-6-10 03:16
Linux 好评。。。

我更懒,当年直接用友善的平板做烧录工具,一开始还用 html5 做界面,后来干脆用字符 ...

非常优秀。没想到有这么多的下载方法。
(12162284)

出0入0汤圆

发表于 2020-6-10 09:22:06 来自手机 | 显示全部楼层
这个方案好,opocd或者pyocd用上就行了,不过跑python 可能有点费力
(12156495)

出0入34汤圆

发表于 2020-6-10 10:58:35 | 显示全部楼层
本帖最后由 dukelec 于 2020-6-10 11:05 编辑
SUPER_CRJ 发表于 2020-6-10 09:18
非常优秀。没想到有这么多的下载方法。


給你的小建議是,不要只做離線燒錄硬件,而是要做含雲端服務在內的一個體系 / 商業模式,讓普通工程師買你的服務(你收月費或燒錄次數抽佣),就可以做到和我一樣,開發一款產品,除了收研發費之外,還可以收 license 費,而且不用自己管理生產,顛覆海內外電子行業的外包模式。。。
除了配套硬件可以二次開發(只有 linux 才能足夠靈活和方便,硬件端建議部分開源,只收服務器的費用),服務器也提供接口可以做一些定製化(最好也支持用戶自己架服務器,只收燒錄工具硬件的錢)。
再就是你可以承接芯片燒錄服務,工程師只要把成卷的芯片寄給你們,你們燒錄好再包成卷。甚至是 PCBA 的燒錄和測試。
最終成爲燒錄界的+立創,上市敲鍾不是夢。。。

順便一提:
每次燒錄只傳輸小於幾 k 字節數據到服務器,實際使用幾乎沒出現過因網絡不好拖慢燒錄速度,我的服務器在美國,國內訪問經常非常慢,也沒影響工廠燒錄,如果服務器在國內,更不用擔心。
工廠也都有網絡環境,沒有也能解決,實在不行可以開手機熱點。
(11866599)

出0入0汤圆

发表于 2020-6-13 19:30:11 | 显示全部楼层
这个很不错.以前在某宝买了个只能下STM8的,遇到其他芯片就无能为力了.
(11783385)

出0入0汤圆

发表于 2020-6-14 18:37:05 来自手机 | 显示全部楼层
本帖最后由 duxingkei 于 2020-6-14 18:38 编辑

我自己做的瑞萨RL78脱机,用的就是移植git的代码,顺便修复Bug,支持Hex,本来想做到linux板上的,无奈,C-Sky板子的Ch340驱动问题,放弃,不想用全志开发板。后来干脆移植到Stm32上外加Stm32做脱机,程序放Spi,模拟优盘,切换优盘固定的程序,就切换了烧录程序,可惜没有加密功能,自己用可以,工厂就不合适,怕泄密。
(11783123)

出0入0汤圆

发表于 2020-6-14 18:41:27 | 显示全部楼层
dukelec 发表于 2020-6-10 10:58
給你的小建議是,不要只做離線燒錄硬件,而是要做含雲端服務在內的一個體系 / 商業模式,讓普通工程師買 ...

点赞,
很多台系的芯片就是你这种模式,好赚钱。
不过台系的一般烧录通信协议不开放,麻烦。
(11764935)

出0入0汤圆

发表于 2020-6-14 23:44:35 | 显示全部楼层
期待大着
(11727183)

出0入0汤圆

发表于 2020-6-15 10:13:47 | 显示全部楼层
看起来都是高大上啊,期待开源!
(11722286)

出0入0汤圆

发表于 2020-6-15 11:35:24 | 显示全部楼层
这个好,可以跟上啊
(11296493)

出0入0汤圆

发表于 2020-6-20 09:51:57 来自手机 | 显示全部楼层
iamseer 发表于 2020-6-6 21:18
我是用 nano pi带oled的外壳做下载器的。好处是linux配置好编程软件,写好脚本,用任何编程器都可以。烧 ...

底层是调用openocd 实现的么?请教一下大神openocd默认的targets里面没有的单片机型号怎么扩充?比如华大的单片机
(11296357)

出0入0汤圆

发表于 2020-6-20 09:54:13 来自手机 | 显示全部楼层
dukelec 发表于 2020-6-10 03:35
是的,linux 省心省事,我那个最底层的烧录工具也是拿别人 github 上的开源工具改一下只增加加密功能而已 ...

底层是调用openocd 实现的么?请教一下大神openocd默认的targets里面没有的单片机型号怎么扩充?比如华大的单片机
(11293923)

出0入34汤圆

发表于 2020-6-20 10:34:47 来自手机 | 显示全部楼层
yelong98 发表于 2020-6-20 09:54
底层是调用openocd 实现的么?请教一下大神openocd默认的targets里面没有的单片机型号怎么扩充?比如华大 ...

不是,用的 cc-debugger 專用的燒錄工具,stm32 和 stm8 的 st-link v2 也都有各自的專用工具。openocd 好幾年沒有維護了,用起來感覺也麻煩。

华大的芯片看是否和 stm32 兼容可以用同一個工具,如果都不支持,又沒有現成開源的工具,就自己寫。

我目前唯一自己寫的燒錄工具是用 python 腳本 控制 ft232h 的 spi 實現 Lattice iCE40UL 的nvcm 燒錄。
(11292804)

出0入0汤圆

发表于 2020-6-20 10:53:26 | 显示全部楼层
dukelec 发表于 2020-6-20 10:34
不是,用的 cc-debugger 專用的燒錄工具,stm32 和 stm8 的 st-link v2 也都有各自的專用工具。openocd  ...

感谢热心回复!
(11204169)

出0入8汤圆

发表于 2020-6-21 11:30:41 | 显示全部楼层
yelong98 发表于 2020-6-20 09:51
底层是调用openocd 实现的么?请教一下大神openocd默认的targets里面没有的单片机型号怎么扩充?比如华大 ...

我是使用openocd烧录的。我当时用openocd烧 Atmel SAMD21,这个是直接支持,不需要添加任何配置。
OpenOCD对于不同芯片的支持是调用cfg目标文件实现的。
我大概看了一下,cfg文件里面包含芯片的不少参数,你可以参考http://openocd.org/doc/html/Config-File-Guidelines.html研究一下。
(11191584)

出0入0汤圆

发表于 2020-6-21 15:00:26 | 显示全部楼层
iamseer 发表于 2020-6-21 11:30
我是使用openocd烧录的。我当时用openocd烧 Atmel SAMD21,这个是直接支持,不需要添加任何配置。
OpenOC ...

感谢热心回复,最近在研究openocd,很多芯片,比如stm32都是默认支持的,自带target cfg文件,对于国内这种新兴cortex的芯片确实无法直接支持,cfg文件构成比较复杂,估计我能力搞不定。只能另辟他径了,谢谢指点
(11167430)

出0入0汤圆

发表于 2020-6-21 21:43:00 | 显示全部楼层
期待成功.有兴趣
(11117992)

出0入8汤圆

发表于 2020-6-22 11:26:58 | 显示全部楼层
yelong98 发表于 2020-6-21 15:00
感谢热心回复,最近在研究openocd,很多芯片,比如stm32都是默认支持的,自带target cfg文件,对于国内这 ...

我大概看了一下新唐的openocd (没有用过)
https://github.com/OpenNuvoton/OpenOCD-Nuvoton
看起来新唐的flash时序是单独写了一个numicro.c,需要重新编译。cfg文件倒是没几行。
(8696486)

出5入8汤圆

发表于 2020-7-20 12:05:24 | 显示全部楼层
很感兴趣,关注
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 ( 公安交互式论坛备案:44190002001997 粤ICP备09047143号-1 )

GMT+8, 2020-10-29 03:46

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表