5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 5491|回复: 13
打印 上一主题 下一主题

arduino刷apm固件,无法连接mavlink

[复制链接]
跳转到指定楼层
楼主
发表于 2014-11-5 15:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
点击查看详情
昨天尝试往arduino mega 2560里刷arduplane,后来成功了。串口打开也能收到信息,但mp就是连不上mavlink,链接超时mp收不到信息,,这是硬件的问题吗



欢迎继续阅读楼主其他信息

沙发
发表于 2014-11-5 16:27 | 只看该作者
sm?
3
发表于 2014-11-5 16:43 | 只看该作者
我328还没怎么搞明白!帮顶了
4
发表于 2014-11-5 16:45 | 只看该作者
刷进去了没有什么气压计啊,罗盘这些的支持估计不能用把。
纯属瞎猜+乱说哈。
5
 楼主| 发表于 2014-11-5 19:28 | 只看该作者
6
 楼主| 发表于 2014-11-5 19:29 | 只看该作者
zlf小飞 发表于 2014-11-5 16:43
我328还没怎么搞明白!帮顶了

atmega328p,,我记得apm上这个是管ppm的

7
 楼主| 发表于 2014-11-5 19:30 | 只看该作者
scfox 发表于 2014-11-5 16:45
刷进去了没有什么气压计啊,罗盘这些的支持估计不能用把。
纯属瞎猜+乱说哈。

我也在想是不是这个的原因= =

8
发表于 2014-11-9 14:43 | 只看该作者
气压计啊、罗盘、陀螺仪、加速度计这些在阿德上面可以外置嘛!不知道这样解决可否有用?也许会涉及到跟改源代码!大工程、超专业啊!
9
发表于 2014-11-9 22:13 | 只看该作者
刷的是什么版本的固件?编译完成后二进制文件大小多少?
10
 楼主| 发表于 2014-11-10 11:50 | 只看该作者
去远方 发表于 2014-11-9 22:13
刷的是什么版本的固件?编译完成后二进制文件大小多少?

ArduPlane V2.75,二进制程序大小:213,168字节

11
发表于 2014-11-10 13:50 | 只看该作者
手上有块pro mini  微型激光雕刻机上拆的,可以刷吗?  刷不了这个可以刷个MWC? KK?  云台增稳?
12
 楼主| 发表于 2014-11-10 13:58 | 只看该作者
白色的熊 发表于 2014-11-10 13:50
手上有块pro mini  微型激光雕刻机上拆的,可以刷吗?  刷不了这个可以刷个MWC? KK?  云台增稳?

这不一定,要看硬件接口还有其他的东西。。atmega2560有50多个IO口,pro mini上的主控只有36个,这是刷不了的,除非你改固件加一些锁存器或移位寄存器之类的的扩展IO。不过可是扩展不了UART还有其他的东西

13
发表于 2014-11-11 12:26 | 只看该作者
伯努利 发表于 2014-11-10 11:50
ArduPlane V2.75,二进制程序大小:213,168字节

可以确定程序已经开始运行,初步判断是传感器初始化失败(串口输出提示气压计初始化失败,但MPU6000等肯定也是失败的),导致gcs相关函数未能运行。

// Public Methods //////////////////////////////////////////////////////////////
// SPI should be initialized externally
bool AP_Baro_MS5611::init()
{
.
.
.
.
    // wait for at least one value to be read
    uint32_t tstart = hal.scheduler->millis();
    while (!_updated) {
        hal.scheduler->delay(10);
        if (hal.scheduler->millis() - tstart > 1000) {
            hal.scheduler->panic(PSTR("PANIC: AP_Baro_MS5611 took more than "
                        "1000ms to initialize
"));
            healthy = false;
            return false;
        }
    }
    healthy = true;
    return true;
}

14
 楼主| 发表于 2014-11-11 12:37 | 只看该作者
去远方 发表于 2014-11-11 12:26
可以确定程序已经开始运行,初步判断是传感器初始化失败(串口输出提示气压计初始化失败,但MPU6000等肯 ...

初始化失败的话,我看一下能不能改一下函数,让它输出一个假的气压值,直接删了的话编译应该有错误

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

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