打印
[AVR单片机]

咨询一下离线编程器的操作方式

[复制链接]
1776|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
simon21ic|  楼主 | 2008-2-29 22:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
自己做的一个编程器(使用Mega16模拟AVR Dragon)已经可以支持AVR的所有编程接口了,现在准备在这个上面实现一个离线编程器,想咨询一下离线编程器的操作方式。硬件上多余的IO口除了编程按键外,还有最后一个。

目前我自己设想如下(希望能多提写意见和建议):

实现方式:
通过扩展AVRP(AVRISP mkII,JTAGICE mkII,AVR Dragon都支持)来支持离线编程。AVRP的第0页为通用命令,第1页为ISP命令,第2页为HVPP命令,第3页为HVSP命令,第10页扩展为离线编程相关的命令。
上位机使用Lazaurs完成(使用自己熟悉的Pascal语言,可以在多平台上使用(Win,Linux,Mac)),并且同时也是avrdude的图形界面前端(avrdude提供了各个编程接口所需要的参数)。

操作方式:
1.Bootloader:上电时,如果检测编程按钮按下,则进入Bootlaoder。
2.Atmel工具:上电后,正常的USB接口上的操作都是模拟的Atmel工具。并且通过扩展AVRP来支持上位机下载数据到离线编程器。
3.离线编程器:上电后,按下编程按钮,如果这时USB接口已经分配了地址,则还没有想好干什么;如果USB没有分配地址(USB接口只是供电)并且Dataflash里有有效的离线编程数据,则等待按钮释放,然后以默认编程方式编程(2个LED提示编程方式,如果都不亮则为"设置编程方式"模式)。如果要设置编程方式的话,则长按编程按钮(进入设置模式后,LED都灭),然后短按编程按钮来选择编程方式(对应的LED会亮),设置完后再一次长按结束操作。

这种操作方式的好处就是可以只使用一个IO来支持所有操作,但不确实是否会方便使用?

相关帖子

沙发
dai_weis| | 2008-3-2 16:00 | 只看该作者

操作太麻烦

最好是键盘多一些,要不然记住那么多的指令有些费力

使用特权

评论回复
板凳
simon21ic|  楼主 | 2008-3-2 21:17 | 只看该作者

谢谢,简化一下

操作方式:
1.Bootloader:上电时,如果检测编程按钮按下,则进入Bootlaoder,可以更新固件。
2.Atmel工具:上电后,正常的USB接口上的操作都是模拟的Atmel工具。并且通过扩展AVRP来支持上位机下载数据到离线编程器。
3.离线编程器:上电后,当过一定时间后仍旧没有分配到USB地址,则进入离线编程模式,并以默认编程方式编程(2个LED提示编程方式,如果都不亮则为"设置编程方式"模式)。如果要设置编程方式的话,则长按编程按钮(进入设置模式后,LED都灭),然后短按编程按钮来选择编程方式(对应的LED会亮),设置完后再一次长按结束操作。

使用特权

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

本版积分规则

266

主题

2597

帖子

104

粉丝