打印

介绍一个多功能编程器:Versaloon,支持AVR/AVR32/ARM/PSoC/C8051F/S51

[复制链接]
8412|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
simon21ic|  楼主 | 2008-11-6 14:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
准备了很长时间,现在终于差不多(自己也下了决心)可以拿出来了。在这里也做个小广告,喜欢DIY的朋友也可以使用RC2版本,不过只支持ARM、AVR、AVR32,并且今后维护的力度肯定是放在最新版本上的,所以RC2不会在提供过多的支持。

【介绍】
Versaloon是我自己开发的一个在线编程器,对于部分MCU也支持离线编程。
使用了CM3核心的处理器,集成USB接口,速度上也比较快,最重要的是,非常灵活。
所以目前支持的MCU种类也比较多,将来还会增加更多的MCU的支持。
Versaloon的理念是做超级加法,把各种MCU的在线编程时序(很多MCU都会公开在线编程的时序),在一个硬件工具上实现。
并且,开发Versaloon用到的所有工具都是没有版权问题的,而且具有多平台支持的特性。
比如:
vsprog(上位机命令行界面程序),使用纯C语言+libusb[+libxml,用于解析xml配置文件],可以在Windows和Linux下编译,只需要修改app_cfg.h中的_PLATFORM宏,可以使用Visual C++ 2008 Express或者MinGW中的GCC编译。
vsgui(上位机图形界面程序),使用Lazarus,可以在Windows和Linux下编译,不需要做任何修改。
PCB,使用KiCAD,可以在Windows和Linux下使用,不需要做任何修改。
固件,32K以下的时候,使用IAR EWARM 5.11KS;超过的话,也可以直接使用Codesourcery G++ Lite编译,不需要做任何修改。

Versaloon Bloghttp://blog.**/SimonQian/25666/category.aspx
Versaloon讨论组:http://group.**/1065/
Versaloon-usr邮件列表:http://simonqian.com/mailman/listinfo/versaloon-usr_simonqian.com
taobao:http://shop36603123.taobao.com/
最好能够先预定。

成品图片:

Versaloon_Mini RC3版本

Versaloon_Nano RC3版本

【支持的MCU】
已经支持的(我这里针对几种型号的MCU做过一段时间的测试,没有发现问题):
1.AVR(维护阶段)
支持AVR的ISP和JTAG接口下载程序,不支持仿真(除非Atmel提供给我仿真的一些资料)。
使用JTAGICE mkII的公开的协议,上位机可以使用AVRStudio或者Avrdude。
2.S51(已经在测试,并有人维护)
是通过USB_TO_XXX实现的。
支持S51的ISP功能,上位机使用vsprog(命令行界面)或者vsgui(图形界面)。
3.AVR32(已经找到测试人员)
根据STK600公开的协议开发,移植到JTAGICE mkII上,协议基本上是一样的。
上位机可以使用AVR32Studio或者IAR EWAVR32。
4.C8051F(这个好像用的人不多,测试人员都找不到)
目前支持JTAG接口,接口上已经留出了C2接口,以后会增加C2的支持。
上位机使用vsprog(命令行界面)或者vsgui(图形界面)。
5.ARM(这个芯片的种类太多了,是在没有办法都测试)
ARM的支持是通过OpenOCD来实现的,Versaloon提供了一个驱动接口,并且公开的驱动的源代码。
目前在LPC214x,LPC213x,STM32F101C8上测试过,上位机使用可以支持OpenOCD的工具。
比如一些Eclipse配置的ARM开发环境,另外IAR EWARM也具有GDB Server的接口,也可以支持OpenOCD。
我这里的测试基本上都是在IAR EWARM上完成的,速度测试是使用telnet到OpenOCD来实现的。
并且如果发展的顺利的话,以后会和一个法国人合作,开发一个Eclipse+FreeRTOS的ARM平台,所有的接口都使用公开的已知的接口。
注:MDK不支持OpenOCD,也没有公开的接口,所以目前无法支持。
6.PSoC(寻找测试人员)
目前的硬件由于没有电源的控制,所以只能支持Reset方式的ISSP编程。
如果有人需要的话,可以再做一个全功能的PSoC支持。
PSoC的支持具有离线编程的功能。
上位机使用vsprog(命令行界面)或者vsgui(图形界面)。

准备增加的:
如果Versaloon的这种实现方式和理念能够得到认可的话,之后将会增加更多的MCU支持。
准备要支持的这些MCU,协议上已经基本都看过了,相信问题不大。
1.XMega(估计样片要等很长的时间)
2.STM8(估计样片要等很长的时间)
3.C8051F_C2(已经败了一块开发板了,正在进行中)
4.MSP430(这个的JTAG接口不是标准的,否则就已经可以支持了,开发板已经有了,一位网友提供的,这里要向他表示感谢)
5.I2C接口或者SPI接口的EEPROM/Flash

【二次开发】
Versaloon会提供一个二次开发的接口:USB_TO_XXX。
USB_TO_XXX可以实现各种单片机的资源,比如GPIO、SPI、USART、I2C、ADC等,通过USB接口由PC控制。
将会提供所有的上位机的USB_TO_XXX的驱动的源代码(C语言),并给出使用USB_TO_XXX接口实现的S51编程器的源代码(vsprog)作为示例。

【上位机程序】
部分MCU的支持,是通过我自己开发的上位机程序来实现的。
这里就给出一些编程时候的图片(包括WindowsXP下的和Ubuntu8.04下的)
vsprog:USB_TO_XXX驱动和S51的支持代码将公开

S51的支持

PSoC的支持
vsgui:只是根据GUI中的选项,生成命令,调用vsprog,所以需要和vsprog放在同一目录下。

S51的支持

当然,也可以用于更新固件(需要stm32boot),给张Ubuntu下的图吧,使用CDC模拟的串口来更新,所以选择ttyACM0

【参与到这个项目中】
如果你对Versaloon的实现方式和理念有兴趣的话,并且能够并愿意开发或者维护一些MCU的支持的话,你也可以加入到这个项目中来。
目前S51和AVR(AVR32,AVRX)的支持已经有人来维护了。
如果参与到这个项目中的话,可以得到所有的最新的源代码,当然,只是用于维护的目的,不能挪作他用。
并且,由于Versaloon也将由自己销售,所以会有一定的收入来源,否则,没有足够的收入来维护和支持Versaloon的发展,毕竟Versaloon可以支持的MCU太多,必定需要一定的维护经费的,这也就是RC3版本为什么不是公开的原因了。
对于某些MCU需要一些开发板或者需要购买一些芯片测试的话,都可以中销售收入中提取。

各部分使用到的开发工具:
PCB:KiCAD
固件:IAR EWARM 5.11 KS或者Codesourcery G++ Lite for ARM
vsprog:Visual C++ 2008 Express或者GCC(包括MinGW下的GCC)
vsgui:Lazarus 0.9.26之后的版本

【最终目的】
说实话,我自己开发的编程器基本都是GPL的,而且我向来也是支持开源的,并且对好几个开源的开发工具都做过一定的贡献。
所以Versaloon的最终目的也就是开源,这个在我的小组里已经提到过。
当Versaloon的用户和维护支持人员,可以满足Versaloon自己发展的时候,我会公开所有源代码和资料(当然,仍旧还是会提供成品的Versaloon销售)。
这个也要和所有想参与到这个项目中的朋友说明的,所有人对Versaloon做的贡献,在实际成熟的时候,都会免费公开(可能基于GPL协议,也可能自己定义一个开源协议,只针对国内用户)。
AVRminiProg应该算是简单的,但Versaloon的复杂程序就意味着这个项目必须商用,才能得以更好的维护,我也是到RC3版本由于需要找人做测试的时候才发现这个问题的。
目前,从硬件到固件到驱动到上位机程序,全部都是我一手包办,开源的RC2版本也曾经需要找一些人来一起维护,但对我公布的源代码的回复只是“研究研究”,这样发展下去的话,明年的Versaloon就会想今年的AVRminiProg一样。
AVRminiProg其实是走了一条错误的路,以至于现在几个日本人来找我说需要一些支持,我都没有办法提供(日本常用的AVR芯片和国内常用的区别很大)。

【其他图片】

Versaloon_Mini+ZLG的2148开发板

Versaloon_Nano+Mega128

Versaloon_Nano+ZLG的2148开发板

相关帖子

沙发
vr2whf| | 2008-11-6 23:11 | 只看该作者

是否支持XMEGA的PDI编程?

使用特权

评论回复
板凳
simon21ic|  楼主 | 2008-11-7 01:36 | 只看该作者

XMega?

现在好像样片都弄不到吧

使用特权

评论回复
地板
aceice| | 2008-11-7 09:45 | 只看该作者

呵呵,不错~支持一下

使用特权

评论回复
5
vr2whf| | 2008-11-7 23:20 | 只看该作者

想支持一下

不知几时有PCB套件卖

使用特权

评论回复
6
simon21ic|  楼主 | 2008-11-8 01:01 | 只看该作者

PCB套件也考虑过

但自己没有出售套件的经验。有一些问题搞不定。

比如:
1.目前我自己做的成品都经过测试,基本可以保证没有问题。但套件的话,如何保证质量?
2.下载Bootloader需要用到另一块串口电压转换板来连接电脑,并不一定大家都有这种板。而我这里又无法直接给芯片下载程序。
3.转接线的制作需要压线钳,这个也不是所有人都有的。

当然,我还是最希望能够提供套件,毕竟这样可以省去生产的麻烦了。
如果LS需要的话,我可以准备一份。但用户需要有一块串口的电压转换板来连接电脑,下载Bootloader,应用程序可以使用Bootloader下载。

使用特权

评论回复
7
xiaorunyi| | 2008-11-8 12:08 | 只看该作者

楼上问题可以解决

2:能解决:主芯片是固定的了,可以买个那种专门卡贴片的座子(很贵100以上),做个写贴片程序的板子。发散件时用这个东西写好程序。
3:解决:转接线分两种(做好的,没做的),买者自己选了。
1:很多人测试没问题了,买散件的只能自担风险了。

呵呵~~~

使用特权

评论回复
8
simon21ic|  楼主 | 2008-11-8 19:56 | 只看该作者

1:很多人测试没问题了,买散件的只能自担风险了。

做成功的话,基本不会有问题,不成功的话,可定会比较麻烦。
而且,有时候问题会比较难查的。我做的时候就碰到过一个问题:不知道谁把焊接温度调到了最高,导致芯片损坏。其他的还没有碰到过问题。

而成品的话,基本是找那些非常有经验的人焊接,质量不会有问题的。

如果以后这样做的话,可能会写一份制作的文档,把制作过程细化,每一步完成后需要做那些检测也都说明一下。这样可能会好一些。

使用特权

评论回复
9
john_light| | 2008-11-9 11:04 | 只看该作者

你淘宝上的成品板链接去掉了?

使用特权

评论回复
10
simon21ic|  楼主 | 2008-11-9 13:17 | 只看该作者

恩,等待一个芯片

据说应该下周一可以搞定

使用特权

评论回复
11
fuxiangbo| | 2010-4-24 21:43 | 只看该作者
顶,.............

使用特权

评论回复
12
Artilect| | 2014-7-11 19:05 | 只看该作者

使用特权

评论回复
13
weishiding| | 2014-11-11 13:22 | 只看该作者
淘宝店已经没什么东西了???????

使用特权

评论回复
14
weishiding| | 2014-11-11 13:22 | 只看该作者
没有地方可以买这个东西了啊

使用特权

评论回复
15
泰山特曲123| | 2014-11-11 23:39 | 只看该作者
这个维护工作很大的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

266

主题

2597

帖子

104

粉丝