搜索
bottom↓
回复: 26

调试LGT终于可以把下载器放一边了!LGT的Bootloader(HID)出来啦~!

[复制链接]

出0入0汤圆

发表于 2013-1-30 01:12:48 | 显示全部楼层 |阅读模式
最近期末考试,然后就没多少心情弄这个。这个玩意几乎是我用今天的时间赶工出来的。代码有点粗糙。不过能用。
这个bootloader实现颇为复杂。因为LGT木有BOOT区的设计。于是这个东西占用了LGT的一些资源,包括:
1、在0-128地址,重新映射了中断向量表。所以说LGT保留的2个中断无法使用。bootloader会切除它们。并且INT0和RESET中断永远指向Bootloader。
2、使用了一个通用寄存器来切换中断。因为在App里面也会用到INT0中断。所以说r10就作为INT0的控制器。若R10=1的话,INT0归bootloader接管。如果r10=0的话。INT0归APP接管。在APP里,你需要声明一个变量。千万别让编译器使用R10。否则程序会跑飞。当然你也可以控制R10达到下载的目的。
3、占用了LGT高端2560B的Flash。所以可用空间实际上只有5632B.对于8K的LGT来说。压力很大。
4、在复位后,bootloader会自动关掉看门狗。如果升级跳线跳上了的话,还会自动关掉分频并切换到外部晶振。所以建议板子外部接晶振。内部RC做VUSB我从来都没成功过。
5、以后我可能会开发兼容STC下载软件的串口bootloader(懒得自己重做上位机了)

已知Bug:上位机无法解析BIN文件(楼主:困死了,以后再说)。
这个玩意完全开源。顺带说一下,这些代码是我睡觉前敲出来的。所以看上去乱七八糟。运行效率也不行。如果有人愿意帮忙优化就跟贴吧。
另外希望阿莫给个酷吧。大冷天的……还有这个东西是正式版本的LGT用的。SOP28的要稍微改动一下时钟那一部分。否则无法运行。
顺带说下。这个东西最好别用SOP28的。因为外部时钟有问题。只要启动外部时钟了。按下复位,于是就死机了……
默认配置的IO口:D- PD6 D+ PD2 JUMP PD1(在bootconfig.h改)
代码下载:
运行效果:

编译的话在win上用mingw吧。顺带说一下,这个玩意的应用可以做成换固件版本的USBasp编程器啊,USB开发板啊等等。不过如果需要这个Bootloader真的跑得顺畅的话。我想对LGT说,希望他们加入boot区的原生支持。如果不行的话,那么希望有更大flash的芯片出现!

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2013-1-30 08:31:32 来自手机 | 显示全部楼层
这个usb是模拟的?从avr的汇编移值过来的?

出0入0汤圆

 楼主| 发表于 2013-1-30 08:32:41 | 显示全部楼层
本帖最后由 xwkm 于 2013-1-30 08:38 编辑
inkfish321 发表于 2013-1-30 08:31
这个usb是模拟的?从avr的汇编移值过来的?


对。LGT官方的V-USB。稳定性还不错。
有很多人说V-USB的稳定性不行。但是我现在测试的结果还好。现在我的USB线是插在Hub上的。也没出现无法识别的状况:

那个JTAGICE和我的LGT板子都挂在Bus 001 Device 010这个集线器上。一点问题也没有。
就是调试的时候要小心。如果LGT死循环不停的打开/关闭USB链接的话。极其容易导致集线器死机。所以我在调试的时候反复插拔集线器NN次

本帖子中包含更多资源

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

x

出0入0汤圆

 楼主| 发表于 2013-1-30 08:34:51 | 显示全部楼层
这个bootloader不会占死INT0。不过一定要注意r10别给编译器用了。如果r10给编译器用了顺带还插了USB线。你懂的。
用IDE的样子

1.8K的程序1.2S下完。

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2013-1-30 08:48:04 来自手机 | 显示全部楼层
其实可以在内存的开头保留一些空间留给boot,这样就不需要占用寄存器了。应用程序设置一下编译器,不要用这些空间。

出0入0汤圆

 楼主| 发表于 2013-1-30 08:51:43 | 显示全部楼层
本帖最后由 xwkm 于 2013-1-30 08:55 编辑
inkfish321 发表于 2013-1-30 08:48
其实可以在内存的开头保留一些空间留给boot,这样就不需要占用寄存器了。应用程序设置一下编译器,不要用这 ...


最大的问题是AVR需要用IN指令读入。然后再用寄存器去处理。所以说还不如直接用寄存器算了。毕竟IN 1个周期,sbrs 2个周期。jmp 1个周期,进中断速度会慢不少。现在已经慢了。不过V-USB还能用。因为USB的前导是一堆10.
而且第二个问题就是我貌似找不到avr gcc怎么样定义全局变量的地址的……

出0入0汤圆

发表于 2013-1-30 09:45:12 | 显示全部楼层
有没有用模拟的USB HID量产过?

出0入0汤圆

发表于 2013-1-30 10:12:34 | 显示全部楼层
楼主用的什么编辑器呀?

出0入0汤圆

发表于 2013-1-30 10:44:42 | 显示全部楼层
LZ好厉害。我连mega8的VUSB自己再编译下都不会.Orz。

出0入0汤圆

发表于 2013-1-30 11:40:18 | 显示全部楼层
学习一下, int0的转向确实挺麻烦.啥时候支持boot区就简单了


出0入8汤圆

发表于 2013-1-30 12:33:29 | 显示全部楼层
果断记号下。。。最近正在折腾LGT

出0入0汤圆

 楼主| 发表于 2013-1-30 18:30:24 | 显示全部楼层
goodcode 发表于 2013-1-30 11:40
学习一下, int0的转向确实挺麻烦.啥时候支持boot区就简单了

期待你的东西完全开源哦~

出0入0汤圆

 楼主| 发表于 2013-1-30 18:30:51 | 显示全部楼层
cqfeiyuxmj 发表于 2013-1-30 10:12
楼主用的什么编辑器呀?

我用的是geany.

出0入0汤圆

 楼主| 发表于 2013-1-30 18:33:33 | 显示全部楼层
inkfish321 发表于 2013-1-30 09:45
有没有用模拟的USB HID量产过?

同志我还是高中生啊。量产给谁用啊~?
反正现在我的bootloader还是比较稳定的~只要APP别操作flash就行

出0入0汤圆

 楼主| 发表于 2013-1-30 20:32:49 | 显示全部楼层
本帖最后由 xwkm 于 2013-1-30 21:09 编辑

新版本:解决该死的下载错误问题。优化UI界面。
不过Bin文件仍然暂时无法解决……

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2013-4-6 11:27:38 | 显示全部楼层
强悍

出0入0汤圆

发表于 2013-4-6 13:19:49 来自手机 | 显示全部楼层
高中生这么牛啊

出0入0汤圆

发表于 2013-4-10 19:54:47 | 显示全部楼层
orz                                                              

出0入0汤圆

发表于 2013-4-12 23:43:37 来自手机 | 显示全部楼层
Mark
来自:amoBBS 阿莫电子论坛 Windows Phone 7 客户端

出105入79汤圆

发表于 2013-4-12 23:58:38 | 显示全部楼层
哎 我要是有楼主这个高中生一半牛就好了

出0入0汤圆

发表于 2013-4-13 15:13:17 | 显示全部楼层
又见牛人,帮顶支持。

出0入0汤圆

发表于 2013-4-13 15:48:58 | 显示全部楼层
多谢楼主分享

出0入0汤圆

发表于 2013-5-9 17:10:18 | 显示全部楼层
楼主是在linux下玩的?

出0入0汤圆

 楼主| 发表于 2013-5-9 18:27:40 | 显示全部楼层
worldsing 发表于 2013-5-9 17:10
楼主是在linux下玩的?

对,是linux。

出0入0汤圆

发表于 2013-5-9 18:41:55 | 显示全部楼层

出0入0汤圆

发表于 2013-5-9 19:16:37 | 显示全部楼层
好东西,收藏学习,谢谢楼主

出0入0汤圆

发表于 2013-5-9 22:40:59 | 显示全部楼层
高中生,太牛B了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 19:06

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

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