We're no longer updating This wiki!!

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
en:u3_shield_tinkering [2015/02/02 12:08]
john1117
en:u3_shield_tinkering [2015/02/02 12:09] (current)
john1117
Line 1: Line 1:
 +====== Use to U3 Shield Tinkering Kit ======
 +This page introduces how you can use a Tinkering Kit compatible U3 IO Shield.
  
 +{{:​en:​u3:​u3io_tinkering.jpg?​300|}}
 +
 +**Using a dual color LED and push button switch.**
 +
 +1. Hardware settings.
 +
 +{{:​en:​u3:​u3_tinkering_example1.png?​300|}}
 +
 +2. **ODROID-U3** settings.\\
 +You will use GPIO-I2C to comunication with U3 IO Shield.
 +  sudo modprobe i2c_dev
 +  sudo modprobe i2c-gpio-custom bus0=4,​200,​199
 +
 +To use externel IO port of U3 IO Shield you will attach tca6416 gpio driver to i2c-gpio.4 bus.
 +  echo tca6416 0x20 > /​sys/​devices/​platform/​i2c-gpio.4/​i2c-4/​new_device
 +
 +Now, you can use GPIO #301 ~ #304 in the Tinkering Kit.
 +  echo 302 > /​sys/​class/​gpio/​export
 +  echo out > /​sys/​class/​gpio/​gpio302/​direction
 +  echo 1 > /​sys/​class/​gpio/​gpio302/​value
 +
 +3. **Bash shell script example**
 +<code bash>
 +#​!/​bin/​bash ​                                                                    
 +                                                                                ​
 +GPIOPATH="/​sys/​class/​gpio" ​                                                     ​
 +                                                                                ​
 +echo 301 > $GPIOPATH/​unexport ​                                                  
 +echo 302 > $GPIOPATH/​unexport ​                                                  
 +echo 303 > $GPIOPATH/​unexport ​                                                  
 +                                                                                ​
 +echo 301 > $GPIOPATH/​export ​                                                    
 +echo 302 > $GPIOPATH/​export ​                                                    
 +echo 303 > $GPIOPATH/​export ​                                                    
 +                                                                                ​
 +echo in > $GPIOPATH/​gpio302/​direction ​                                          
 +echo out > $GPIOPATH/​gpio302/​direction ​                                         ​
 +echo out > $GPIOPATH/​gpio303/​direction ​                                         ​
 +                                                                                ​
 +while true :                                                                    ​
 +do                                                                              ​
 +        cat=($(cat $GPIOPATH/​gpio301/​value)) ​                                   ​
 +        if [ $cat -eq 0 ]; then                                                 
 +                pushed=1 ​                                                       ​
 +        fi                                                                      ​
 +        if [[ ($cat -eq 1) && ($pushed -eq 1) ]]; then                          ​
 +                pushed=0 ​                                                       ​
 +                cnt=$((($cnt + 1)%4)) ​                                          
 +        fi                                                                      ​
 +                                                                                ​
 +        case $cnt in                                                            ​
 +                0) echo 0 > $GPIOPATH/​gpio302/​value ​                            
 +                   echo 0 > $GPIOPATH/​gpio303/​value ;;                          ​
 +                1) echo 1 > $GPIOPATH/​gpio302/​value ​                            
 +                   echo 0 > $GPIOPATH/​gpio303/​value ;;                          ​
 +                2) echo 0 > $GPIOPATH/​gpio302/​value ​                            
 +                   echo 1 > $GPIOPATH/​gpio303/​value ;;                          ​
 +                3) echo 1 > $GPIOPATH/​gpio302/​value ​                            
 +                   echo 1 > $GPIOPATH/​gpio303/​value ;;                          ​
 +        esac                                                                    ​
 +                                                                                ​
 +        sleep 0.1                                                               
 +done
 +</​code>​
en/u3_shield_tinkering.txt ยท Last modified: 2015/02/02 12:09 by john1117
CC Attribution-Share Alike 3.0 Unported
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0