极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9924|回复: 4

UNO 编译带USB host库文件错

[复制链接]
发表于 2013-4-23 15:46:19 | 显示全部楼层 |阅读模式
本帖最后由 伯德 于 2013-7-10 13:00 编辑

本人搭建了一个UNO+USB host的模块。
Google官方下载了USB host的库代码。
目前出现如下错误:

C:\Users\wangteng\Documents\Arduino\libraries\USB_Host_Shield\Max3421e.cpp: In static member function 'static void MAX3421E::setRST(uint8_t)':
C:\Users\wangteng\Documents\Arduino\libraries\USB_Host_Shield\Max3421e.cpp:58: error: 'PORTJ' was not declared in this scope
C:\Users\wangteng\Documents\Arduino\libraries\USB_Host_Shield\Max3421e.cpp:58: error: 'PJ2' was not declared in this scope
C:\Users\wangteng\Documents\Arduino\libraries\USB_Host_Shield\Max3421e.cpp:60: error: 'PORTJ' was not declared in this scope
C:\Users\wangteng\Documents\Arduino\libraries\USB_Host_Shield\Max3421e.cpp:60: error: 'PJ2' was not declared in this scope
....

但是把board设置成Mega2560,编译顺利通过。

完整代码下载地址:https://github.com/awong1900/Test
大家帮我看看。


解决方案:
Max3421e.cpp文件修改,见三楼。
回复

使用道具 举报

发表于 2013-4-23 17:37:59 | 显示全部楼层
应该得用第三方修改后的host库,官方的本身做的是2560上。。。应该是不支持uno的,因为寄存器还是有很大差距的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-4-23 19:28:38 | 显示全部楼层
修改了board,像PORTJ的宏定义就可以通过。
知道不同的board调用的代码在哪吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-4-23 22:09:13 | 显示全部楼层
搜索了一下,发现有这样的改法。是在Google代码的基础上修改。
  1. //#define INT                PB1
  2. #define INT                        PORTB1
  3. #define INT_PORT        PORTB
  4. #define INT_DDR                DDRB
  5. #define INT_PIN                PINB

  6. //#define RST                PD7
  7. #define RST                  PORTD7
  8. #define RST_PORT        PORTD
  9. #define RST_DDR                DDRD
  10. #define RST_PIN                PIND
复制代码
-----------
不懂为什么这么改。  这里的宏定义是针对那些的硬件口的?有没有相关资料可以查到。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-10 12:58:45 | 显示全部楼层
伯德 发表于 2013-4-23 22:09
搜索了一下,发现有这样的改法。是在Google代码的基础上修改。-----------
不懂为什么这么改。  这里的宏定 ...

自己搞过一次都忘了。 上面的修改是在Max3421e.cpp 文件。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-6-4 01:44 , Processed in 0.091516 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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