5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
标题: 2801PRO重生,打造为ER9X+DEVIATION的多协议的合体,刷机教程及0.1版固件和源代码发布 [打印本页]
作者: 起子 时间: 2014-6-19 11:36
标题: 2801PRO重生,打造为ER9X+DEVIATION的多协议的合体,刷机教程及0.1版固件和源代码发布
写在前面的话:
在真正动手做ZED2801之前,我算得上是个完全小白,其实现在也是。在之前,我只玩过C51的学习板、自己做了个C51的最小系统,对AVR一无所知,对编程也限于写点小工具,还不是C的。在漫长的改造过程中一般翻书一般看代码真是苦逼,基本没人交流,完全得靠自己,中途遇到各种各样的问题,最终还是坚持下来,终于有了这个测试版,但是毕竟个人精力有限而且本人还是个新手,估计后期对这个的研究会放缓,希望有高人出马,或者大家群策群力共同完善。
作者: 起子 时间: 2014-6-19 11:37
1 前言
最初接触遥控器,就知道有DSM2和DSMJ之分,当时因为DSM2有便宜的山寨接收机而大受欢迎,为了让遥控器支持多种制式的协议,多是采用PPM输入的单独高频头解决。后来G大利用DX4E的射频模块结合飞梦高频头的底部实现了廉价版DSM2发射,其主要原理是利用飞梦底板的AVR接收PPM信号,处理后将数据发送给DX4E的射频模块。
我把我的J版的DSX7在原有的高频头之外,又内置了一个飞梦,一个DSM2和一个HISKY的高频头,实现4模式,当时觉得很高大上,直到DEVIATION出现,原来华科尔的DEVO系列遥控器可以通过刷开源固件,直接支持DSM2协议,我当时就震惊了。。。
在混迹论坛的时候,早就知道基于富斯9也有开源项目,不过没过于关注,后来偶然发现有人自制ER9X硬件DIY遥控器,这才开始关注,陆续收集了点资料。
手头有个闲置很久的2801PRO,基本拿来玩玩模拟器(其实模拟器也没怎么玩,大部分时间在折腾),对华科尔放弃WK系列推DEVO有些愤愤,于是萌生了改2801PRO的念头,但是能改到哪一步一开始心里并没有底。
经过拆解对比比较,2801的单片机是AVR的,显示屏是无字库的12864,和ER9X相同;射频系统是CYRF6936,和DEVO系列的一样。这样,主程序可以移植ER9X的,射频部分可以移植DEVIATION,理论上,可以将2801PRO打造为ER9X和DEVIATION的合体。
我为这个项目取了个名字,叫ZED2801,同ER9X的作者一样,我也自恋的将本人首字母作为第一个字母,E取自ER9X,D取自DEVIATION,既然是基于2801的,还是叫2801吧。
作者: 起子 时间: 2014-6-19 11:38
本帖最后由 起子 于 2014-6-19 12:11 编辑
2 声明
在你决定将你的2801刷入ZED2801之前,这些是你需要了解的:
1、 ZED2801能干什么
ZED2801是在2801的硬件基础上基于ER9X的主程序和DEVIATION的合体,它可以将你被迫淘汰的2801变身为功能强大的ER9X,更美的是它可以和DEVO系列的开源一样,直接支持DSM2/X,DEVO,WK2X01协议。
2、 ZED2801不能干什么
ZED2801是我个人兴趣爱好的产物,实际情况可能不像你想象的那么美好,首先ER9X和DEVIATION自身的问题我没办法解决,再者因本人也仅是初学者整合过程中也可能会有一些问题。我试着开控半天,没有发现不良情况;我用6100E和RX-2801 PRO接收机分别测试了DSM2协议和WK协议,能对码、能响应舵机,其他的暂时没时间没条件做进一步测试。
ZED2801的ER9X主程序基于ER9X_808_V2,射频部分基于GALE在DEVIATION基础上的DEVO7E开源固件GALEE7E-5f789521a7ac,主程序版本不会再更新,射频部分可能会根据DEVIATION更新。
3、 你需要刷ZED2801么
如果你指望ZED2801能达到商品级控的响应或者服务,或者你对ER9X和DEVIATION没有任何了解,建议还是不要刷ZED2801了;如果你和我一样喜欢折腾,那么恭喜你,你又找到一个玩具了。
4、 免责声明
刷入ZED2801需要对2801进行硬件改造,这应该会使控失去保修(尽管2801应该都过保修期了),硬件改造难度很小,但是不排除搞坏的可能,请自行评估硬件改造难度和风险后再动手;
刷入ZED2801后无法刷回原有2801的固件;
本系统为开放系统,仅为大家学习交流测试使用,不可作为其他用途,本系统存在已知和未知的BUG,并未经充分测试,使用本固件的所有风险请使用人自行承担,本人对使用本固件产生的任何损失不承担责任。
作者: 起子 时间: 2014-6-19 11:39
本帖最后由 起子 于 2014-6-19 12:11 编辑
3 硬件介绍
| | | |
| | | MEGA64A和128A全兼容,只是FLASH容量不一样 |
| | | |
| | | |
| | | |
| | | 电压检测占用一个通道; 2801PRO没有额外的电位器 |
| 拨杆开关和微调为单独IO按键、菜单操作键为矩阵键盘 | | |
| | | |
| | | |
| | | 射频模块和DEVO的一致,DEVIATION支持的协议2801PRO也应该支持 |
这是测量的2801PRO的单片机各针脚定义:
(, 下载次数: 66)
作者: 起子 时间: 2014-6-19 11:39
本帖最后由 起子 于 2014-6-19 12:13 编辑
4 刷机准备
刷机前需要两个硬件准备工作:引出JTAG接口和更换16M晶振:2801PRO在硬件设计上将SPI接口分配给别的功能了,而且在熔丝位里面禁用了SPI接口的,只能通过JTAG刷机;另外根据测试,用8M晶振加上射频协议后运行速度和舵机相应速度明显变慢,水平有限无法优化代码,试着换16M晶振后情况大大好转,所以还是换16M晶振吧。
主板上预留了JTAG接口,可以很方便的引出JTAG,各针脚定义见下图:
引出JTAG接口,并更换16M晶振,右边的就是JTAG ICE仿真器,某宝上几十块搞定。
连接好JTAG ICE仿真器,开控,用AVR Studio4就可以连接上控了。第一次刷机前,首先需要更改熔丝位和锁定位,按下图改熔丝位,主要是去掉看门狗,不然连上后控会反复重启:
按下图,将锁定位全部改为不锁定:
(, 下载次数: 78)
作者: 起子 时间: 2014-6-19 11:40
本帖最后由 起子 于 2014-6-19 12:14 编辑
5 正式刷机
以上只在第一次刷机前需要配置,成功刷机后可以直接刷机:
(, 下载次数: 76)
作者: 起子 时间: 2014-6-19 11:41
本帖最后由 起子 于 2014-6-19 12:22 编辑
6 固件
已知问题:
1、 各射频协议未经充分测试,尤其是DEVO协议因为没接收机根本就没测试;
2、 各协议下舵机行程还存在问题,貌似DSM2下舵机行程非常小,还没找到关键问题;
3、 加入射频协议后系统运行负荷比较大,系统走时要慢一些,不清楚加上混控等后系统运行速度是否变得更慢;
4、 因2801的MEGA64空间所限,虽然保留了模板的界面,但是实际上已经取消了模板功能,仅保留了模板界面调整通道顺序功能;
作者: 起子 时间: 2014-6-19 11:42
本帖最后由 起子 于 2014-6-20 09:37 编辑
0.1版测试固件:
(, 下载次数: 38)
0.1版代码,分卷压缩的,请全部下载后解压:
(, 下载次数: 81)
(, 下载次数: 71)
(, 下载次数: 74)
测试DSM2的6100E以及WK2X01的RX-2801 PRO接收机对码及相应的视频:
[flash]http://www.tudou.com/v/HcjOBiRYm8U/&rpid=80580321&resourceId=80580321_04_05_99==.html[/media]
作者: 念归年 时间: 2014-6-19 11:55
顶
作者: 起子 时间: 2014-6-19 12:26
晕,不知道是附件需要审核还是链接需要审核?
固件那个回复提示需要审核
(, 下载次数: 41)
作者: 起子 时间: 2014-6-19 12:29
难道是因为我写了个人博客地址http://z.kklt.net吗?
作者: 股股阳光 时间: 2014-6-19 12:47
起子好牛的说
作者: shanshuimoxing 时间: 2014-6-19 13:38
研究研究。
作者: chenkang1998 时间: 2014-6-19 13:50
强力支持
作者: tianmei89cilang 时间: 2014-6-19 14:25
好东西 顶一个 沙乐哥发
作者: tedeum 时间: 2014-6-19 15:58
牛人
作者: 大漠游民 时间: 2014-6-19 16:15
好东西呀,刚好有个2801,程序有问题好几年了,这下可以试试了
作者: 25776348 时间: 2014-6-19 16:16
强势插入…广告位招租
作者: 黄国林007 时间: 2014-6-19 17:14
华坑
作者: 黄国林007 时间: 2014-6-19 17:22
我也要学AVR。。改造去
作者: shanshuimoxing 时间: 2014-6-19 17:41
2801PRO的手感比D10好!
作者: airwolf 时间: 2014-6-19 18:46
向起子这种坚持不懈努力钻研的童鞋致敬!
作者: wdl67 时间: 2014-6-19 20:33
作者: 起子 时间: 2014-6-20 09:44
估计近期不会有大的改动了,该研究下ER9X操作了,说实话,我都还没仔细研究过ER9X的操作。
再试试外链网址看看:
z.kklt.net
作者: 8_3 时间: 2014-6-29 21:13
2801在用.暂时不打算折腾.留个记号吧
作者: hippee 时间: 2014-6-30 15:05
不错,Mark
作者: gongye5776601 时间: 2014-8-11 23:07
[quote]璧峰瓙 鍙戣〃浜
作者: gongye5776601 时间: 2014-8-11 23:08
2801有没有原厂固件或者可以备份出来吗?
作者: 起子 时间: 2014-8-11 23:38
不可以,JTAG连上看熔丝位就知道了,程序和EEPROM都设置了加密位的。
作者: gongye5776601 时间: 2014-8-12 06:35
本帖最后由 gongye5776601 于 2014-8-12 06:36 编辑
手头正有个2801,不知道楼主进展如何了?
我可以帮助楼主一起测试固件。
作者: tiizer 时间: 2014-8-13 10:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: 起子 时间: 2014-8-13 16:25
帖子的进展就是最后进展,最近事情多,又没怎么搞了。
作者: 起子 时间: 2014-8-13 16:27
想着2801闲着也是闲着,不如利用下,顺便学习下单片机
作者: gongye5776601 时间: 2014-8-13 20:47
如果把64的MCU换成256的就能刷opentx的了,那样就会好多了。支持起子。
作者: linpengfeil 时间: 2014-8-14 22:09
我的2801pro华科说是芯片坏了,不给修,我可不可以自己买芯片这样改造呢?
作者: 起子 时间: 2014-8-17 23:59
得看什么芯片坏了,说简单也简单,就一单片机,但是真要电路坏了还真不不好搞,反正我是不懂电路。
如果恢复了单片机功能,可以和我这样玩玩,别抱太大希望。
作者: 起子 时间: 2014-8-18 00:00
貌似MEGA64也能刷OPENTX吧?
另外MEGA64和MEGA256兼容么?换MCU还是算了,还不如买块板折腾
作者: caifish 时间: 2014-8-18 07:08
m64和m128兼容的
作者: linpengfeil 时间: 2014-8-18 09:54
华科说是芯片坏了,我看到单片机焊接的痕迹了
作者: linpengfeil 时间: 2014-8-18 10:31
我要是直接买er9x的主板,还用2801的射频是不是也要用deviation射频部分的程序啊,用原来的程序是不是不行啊
作者: gongye5776601 时间: 2014-8-21 09:49
jtag的仿真器在路上呢 到手就刷我的2801 以后我就可以给你测试了 我2801 dsm2 devo的接收都有 还有不知道这个mega64有没有空的io口了 是否可以像deviation那样接多个头呢
作者: 起子 时间: 2014-8-21 10:27
仔细看帖,有说明的。
折腾改造下,还有多的IO可以利用,但是2801用的MEGA64的FLASH和DATA都基本用满了,如果MEGA128还是有可能的。
基于ER9X的多高频头多射频系统不会在2801上改造了,有精力的话也会用ER9X原版来改。
作者: gongye5776601 时间: 2014-8-21 10:35
我只是建议啊 你搞opentx的 要比er9x的强大多了 个人感觉呀 期待你的更新
作者: momoyu323 时间: 2014-8-28 14:18
楼主好,向请教几个问题:
1、SOP_CODE_ADR寄存器和DATA_CODE_ADR的区别,分别是怎么用的?
2、SOP_CODE_ADR寄存器内容和Pseudo-Noise (PN) Codes是指的一个东西吗?
3、航模遥控和接收机间通信前需要进行bind对码,请问下CYRF6936的bind对码主要是做什么工作,有相关bind对码的例程吗?
先谢谢了!!!
作者: 起子 时间: 2014-8-28 16:04
抱歉,射频部分具体细节我没有研究,搞不懂。
我只是把输入数据,以及接口,模型相关数据等挂接起来了。
对码过程在开源DEVIATION里面都有的。
作者: momoyu323 时间: 2014-8-29 09:33
哦,这样啊,我看看程序吧,还有请问你的CPP后缀的源程序是用什么软件打开编译的,我只用过ICC。
谢谢!!
作者: caifish 时间: 2014-9-1 16:12
或者试试gcc avr编译器
作者: hippee 时间: 2014-9-12 11:37
mark
作者: zyren 时间: 2014-9-12 12:37
起子毅力强大,终于成功了,向你学习
作者: bao56625 时间: 2014-10-10 22:53
我的燒壞了 無法開機 救救我
作者: gongye5776601 时间: 2014-10-11 11:34
什么原因烧的?重点查电源稳压部分。
作者: gongye5776601 时间: 2014-10-11 11:35
一会把cpu换成128的试试,64的总是报警,然后就复位了,设置的模型参数又要重新来
作者: fq1219 时间: 2014-12-15 19:28
2801PRO控和2个 RX-2801 PRO接收机对码 不成功,是高频头问题还是程序问题呀,求大神解答
作者: flywat 时间: 2014-12-15 22:44
路过,赞一个
欢迎光临 5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年) (http://bbs.5imx.com/) |
Powered by Discuz! X3.3 |