Go Down

Topic: Using PIN's of MAX3421e USB HOST SHIELD (Read 1 time) previous topic - next topic


Hi i wanted to utilise the GPIN GPOUT pins on the SparkFun's USB HOST SHIELD , is there any code snippet to access the same given im using the USB HOST 2.0 library?

"Real Men can Accomplish  Anything"

- skype : nishants5  

ਫ਼ਤੇਹ ਕਰੁਂ!

Nick Gammon

You want to use those 16 pins for some purpose, is that it?

This snippet from board_qc.pde might illustrate the general idea:

Code: [Select]
  /* GPIO test */
  /* in order to simplify board layout, GPIN pins on text fixture are connected to GPOUT */
  /* in reverse order, i.e, GPIN0 is connected to GPOUT7, GPIN1 to GPOUT6, etc. */
    uint8_t tmpbyte;
    Notify(PSTR("\r\nGPIO test. Connect GPIN0 to GPOUT7, GPIN1 to GPOUT6, and so on"));
    for( uint8_t sample_gpio = 0; sample_gpio < 255; sample_gpio++ ) {
      Usb.gpioWr( sample_gpio );
      tmpbyte = Usb.gpioRd();
      /* bit reversing code copied vetbatim from http://graphics.stanford.edu/~seander/bithacks.html#BitReverseObvious */
      tmpbyte  = ((tmpbyte * 0x0802LU & 0x22110LU) | (tmpbyte * 0x8020LU & 0x88440LU)) * 0x10101LU >> 16;
      if( sample_gpio != tmpbyte ) {
        Notify(PSTR("\r\nTest failed. Value written: "));
        print_hex( sample_gpio, 8 );
        Notify(PSTR(" Value read: "));
        print_hex( tmpbyte , 8 );
        Notify(PSTR(" "));
      }//if( sample_gpio != tmpbyte...
    }//for( uint8_t sample_gpio...
    Notify(PSTR("\r\nGPIO test passed."));           
  }//GPIO test

Judging by that you want Usb.gpioWr(x)  to write and x = Usb.gpioRd() to read.
Please post technical questions on the forum, not by personal message. Thanks!

More info:


You want to use those 16 pins for some purpose, is that it?

Yes sir and i got it, Thanks!
"Real Men can Accomplish  Anything"

- skype : nishants5  

ਫ਼ਤੇਹ ਕਰੁਂ!


Dear Sirs
what is the use of Notify() syntax, and where does it output the data?

also i want to ask how does the program Board_qc output the test result?

than you for help

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131