From 5daa359bd3c3840320fa08a6a45a26bf2ff3216a Mon Sep 17 00:00:00 2001 From: Ilya Bakulin Date: Mon, 23 Jan 2012 05:32:51 +0400 Subject: [PATCH] - Added support for Arduino Mega ADK board. --- Usb.h | 5 +++-- usbhost.h | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Usb.h b/Usb.h index 341c1368..7e9113fb 100644 --- a/Usb.h +++ b/Usb.h @@ -50,7 +50,8 @@ e-mail : support@circuitsathome.com #ifdef BOARD_BLACK_WIDDOW typedef MAX3421e MAX3421E; // Black Widow #else -typedef MAX3421e MAX3421E; // Official Arduinos (UNO, Duemilanove, Mega, 2560 +//typedef MAX3421e MAX3421E; // Official Arduinos (UNO, Duemilanove, Mega, 2560 +typedef MAX3421e MAX3421E; // Arduino Mega ADK #endif //Debug macros. In 1.0 it is possible to move strings to PROGMEM by defining USBTRACE (Serial.print(F(s))) @@ -272,4 +273,4 @@ inline uint8_t USB::setConf( uint8_t addr, uint8_t ep, uint8_t conf_value ) #endif // defined(USB_METHODS_INLINE) -#endif //_usb_h_ \ No newline at end of file +#endif //_usb_h_ diff --git a/usbhost.h b/usbhost.h index 264b317a..b86101e8 100644 --- a/usbhost.h +++ b/usbhost.h @@ -86,6 +86,10 @@ MAX3421e< SS, INTR >::MAX3421e() SS::Set(); spi::init(); INTR::SetDirRead(); + + /* For Mega ADK, which has Max3421e on-board, set MAX_RESET to Output mode, and pull Reset to HIGH */ + DDRJ |= 0x04; + PORTJ |= 0x04; /* MAX3421E - full-duplex SPI, level interrupt */ regWr( rPINCTL,( bmFDUPSPI + bmINTLEVEL ));