搜索
bottom↓
回复: 8

RTT报错时 The error code is -1 这The error code 有没有说明呀,未找到

[复制链接]

出0入0汤圆

发表于 2012-2-14 10:22:51 | 显示全部楼层 |阅读模式
RT
以此为类
To initialize device:e0 failed. The error code is -1。请问有无错误说明。此现象是错于何处?
谢谢了

出0入0汤圆

发表于 2012-2-14 10:25:08 | 显示全部楼层
RT_EOK定义处。 -1 是什么意思由你的 e0 的初始化程序决定。

出0入0汤圆

 楼主| 发表于 2012-2-14 10:29:49 | 显示全部楼层
谢谢aozima
经常在RTT版块发现你的踪影

出0入0汤圆

 楼主| 发表于 2012-2-14 15:01:56 | 显示全部楼层
谢谢
解决了

出0入0汤圆

发表于 2012-2-14 15:15:07 | 显示全部楼层
回复【3楼】notebook  
解决了
-----------------------------------------------------------------------
“解决了”对N年后搜到这个贴子的人来说基本没啥帮助。

应该把
“To initialize device:e0 failed. The error code is -1。”
的原因和解决方法解释清楚(主要是过程)。

甚至有可能看起来是解决了,但你的思路和作法可能并不是最优的。
看起来是帮助了别人,其实是帮了自己。

出0入0汤圆

发表于 2012-2-14 16:17:49 | 显示全部楼层
最鄙视的就是提问,解决了,也不说出方法的。

出0入0汤圆

 楼主| 发表于 2012-2-14 17:02:13 | 显示全部楼层
别鄙视呀
明天上午我来写个详细呀

出0入0汤圆

 楼主| 发表于 2012-2-15 09:10:49 | 显示全部楼层
#define RT_EOK              0                /* There is no error        */
#define RT_ERROR              1                /* A generic error happens        */
#define RT_ETIMEOUT     2                /* Timed out                 */
#define RT_EFULL              3                /* The resource is full        */
#define RT_EEMPTY       4                /* The resource is empty        */
#define RT_ENOMEM              5                /* No memory                */
#define RT_ENOSYS              6                 /* No system                  */
#define RT_EBUSY              7                /* Busy                         */
以上报错信息都是定义在“rtdef.h”利用串口可以查看RTT的报错信息。  

我的问题主要是     To initialize device:e0 failed. The error code is -1。

1;首先在工程里查找 “e0”所在的位置。共两处:            
           即   eth_device_init(&(dm9000_device.parent), "e0");       
                eth_device_init(&(enc28j60_dev->parent), "e0");       
        我仅定义使用DM9000,所以重点查找DM9000的情况;
2;接下来我查找是在哪里报错所在地        “The error code is”查找到两处
                                   rt_err_t rt_device_init_all()
                                   rt_err_t rt_device_open(rt_device_t dev, rt_uint16_t oflag) ;
                             判断是初始化,重点查找谁调用rt_err_t rt_device_init_all(),同时设断点查看是否报错信息来源于
                             rt_err_t rt_device_init_all();并确认。


3;找到何处调用 rt_err_t rt_device_init_all(),查看其前面初始化什么设备,发现是rt_hw_dm9000_ini();
   验证之前的e0这个信息,重点调试此段初始化过程。结合硬件发现是初始读取ID与DM9000不符合,发现是FSMC部分IO未初始化。


过程如此   非常同意四楼的说法及建议,并且经常对别人作出的问题进行耐心解答,再一次感谢你的奉献精神

【4楼】 aozima
积分:2106
派别:
等级:------
来自:张家界
回复【3楼】notebook   
解决了
-----------------------------------------------------------------------
“解决了”对N年后搜到这个贴子的人来说基本没啥帮助。

应该把
“To initialize device:e0 failed. The error code is -1。”
的原因和解决方法解释清楚(主要是过程)。

甚至有可能看起来是解决了,但你的思路和作法可能并不是最优的。
看起来是帮助了别人,其实是帮了自己。   


至于五楼的同志,你别动不动就鄙视,别人也有时间分配问题。

出0入0汤圆

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

本版积分规则

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

GMT+8, 2024-5-9 00:55

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

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