dio.h

Go to the documentation of this file.
00001 
00038 #ifndef _DIO_H
00039 #define _DIO_H
00040 
00041 /*
00042 these are ALL the pins
00043 don't use unless you know what you're doing
00044 */
00045 
00046 /*
00047 DIO pins on new dragonfly boards are shown below:
00048 -----------------------------------------------
00049 | _PIN_E6 | _PIN_E7 | _PIN_D2 | _PIN_D3 | VCC |
00050 -----------------------------------------------
00051 | _PIN_E2 | _PIN_E3 | _PIN_E4 | _PIN_E5 | GND |
00052 -----------------------------------------------
00053 */
00054 
00056 #define _PORT_A 1
00057 
00058 #define _PORT_B 2
00059 
00060 #define _PORT_C 3
00061 
00062 #define _PORT_D 4
00063 
00064 #define _PORT_E 5
00065 
00066 #define _PORT_F 6
00067 
00068 #define _PORT_G 7
00069 
00071 #define _PIN_A0 8
00072 
00073 #define _PIN_A1 9
00074 
00075 #define _PIN_A2 10
00076 
00077 #define _PIN_A3 11
00078 
00079 #define _PIN_A4 12
00080 
00081 #define _PIN_A5 13
00082 
00083 #define _PIN_A6 14 
00084 
00085 #define _PIN_A7 15
00086 
00088 #define _PIN_B0 16
00089 
00090 #define _PIN_B1 17
00091 
00092 #define _PIN_B2 18
00093 
00094 #define _PIN_B3 19
00095 
00096 #define _PIN_B4 20
00097 
00098 #define _PIN_B5 21
00099 
00100 #define _PIN_B6 22
00101 
00102 #define _PIN_B7 23
00103 
00105 #define _PIN_C0 24
00106 
00107 #define _PIN_C1 25
00108 
00109 #define _PIN_C2 26
00110 
00111 #define _PIN_C3 27
00112 
00113 #define _PIN_C4 28
00114 
00115 #define _PIN_C5 29
00116 
00117 #define _PIN_C6 30
00118 
00119 #define _PIN_C7 31
00120 
00122 #define _PIN_D0 32  // pin DIO6 on new dragonfly boards
00123 
00124 #define _PIN_D1 33  // pin DIO7
00125 
00126 #define _PIN_D2 34
00127 
00128 #define _PIN_D3 35
00129 
00130 #define _PIN_D4 36
00131 
00132 #define _PIN_D5 37
00133 
00134 #define _PIN_D6 38
00135 
00136 #define _PIN_D7 39
00137 
00139 #define _PIN_E0 40
00140 
00141 #define _PIN_E1 41
00142 
00143 #define _PIN_E2 42  // pin DIO0
00144 
00145 #define _PIN_E3 43  // pin DIO1
00146 
00147 #define _PIN_E4 44  // pin DIO2
00148 
00149 #define _PIN_E5 45  // pin DIO3
00150 
00151 #define _PIN_E6 46  // pin DIO4
00152 
00153 #define _PIN_E7 47  // pin DIO5
00154 
00156 #define _PIN_F0 48
00157 
00158 #define _PIN_F1 49
00159 
00160 #define _PIN_F2 50
00161 
00162 #define _PIN_F3 51
00163 
00164 #define _PIN_F4 52
00165 
00166 #define _PIN_F5 53
00167 
00168 #define _PIN_F6 54
00169 
00170 #define _PIN_F7 55
00171 
00173 #define _PIN_G0 56
00174 
00175 #define _PIN_WR 56
00176 
00177 #define _PIN_G1 57
00178 
00179 #define _PIN_RD 57
00180 
00181 #define _PIN_G2 58
00182 
00183 #define _PIN_ALE 58
00184 
00185 #define _PIN_G3 59
00186 
00187 #define _PIN_TOSC2 59
00188 
00189 #define _PIN_G4 60
00190 
00191 #define _PIN_TOSC1 60
00192 //#define _PIN_G5 61
00193 //#define _PIN_G6 62
00194 //#define _PIN_G7 63
00195 
00196 /*
00197 These are the header pins (the ones you can connect things to)
00198 Feel free to use these
00199 */
00200 
00206 #define PIN_A0 8
00207 
00208 #define PIN_A1 9
00209 
00210 #define PIN_A2 10
00211 
00212 #define PIN_A3 11
00213 
00214 #define PIN_A4 12
00215 
00216 #define PIN_A5 13
00217 
00218 #define PIN_A6 14 
00219 
00220 #define PIN_A7 15
00221 
00223 #define PIN_SS 16
00224 
00225 #define PIN_SCK 17
00226 
00227 #define PIN_MOSI 18
00228 
00229 #define PIN_MISO 19
00230 
00231 #define PIN_LCD_COMMAND 20
00232 
00234 #define PIN_C0 24
00235 
00236 #define PIN_C1 25
00237 
00238 #define PIN_C2 26
00239 
00240 #define PIN_C3 27
00241 
00242 #define PIN_C4 28
00243 
00244 #define PIN_C5 29
00245 
00246 #define PIN_C6 30
00247 
00248 #define PIN_C7 31
00249 
00251 #define PIN_SCL 32
00252 
00253 #define PIN_SDA 33
00254 
00256 #define PIN_RX0 40
00257 
00258 #define PIN_TX0 41
00259 
00260 #define PIN_LCD_RESET 42
00261 
00262 #define PIN_E6 46
00263 
00264 #define PIN_EXT_DIO1 46
00265 
00266 #define PIN_E7 47
00267 
00268 #define PIN_EXT_DIO2 48
00269 
00271 #define PIN_AN0 48
00272 
00273 #define PIN_ADC0 48
00274 
00275 #define PIN_AN1 49
00276 
00277 #define PIN_ADC1 49
00278 
00279 #define PIN_AN2 50
00280 
00281 #define PIN_ADC2 50
00282 
00283 #define PIN_AN3 51
00284 
00285 #define PIN_ADC3 51
00286 
00287 #define PIN_AN4 52
00288 
00289 #define PIN_ADC4 52
00290 
00291 #define PIN_AN5 53
00292 
00293 #define PIN_ADC5 53
00294 
00295 #define PIN_AN6 54
00296 
00297 #define PIN_ADC6 54
00298 
00299 #define PIN_AN7 55
00300 
00301 #define PIN_ADC7 55
00302 
00304 #define PIN_WHEEL 54
00305 
00306 #define PIN_BATT 55
00307 
00309 #define PIN_BTN1 56
00310 
00311 #define PIN_BTN2 57
00312 
00314 #define PIN_LED1 58
00315 
00316 /* Buttons */
00318 #define PIN_BTN PING
00319 
00320 #define BTN2 PING1
00321 
00322 #define BTN1 PING0
00323 
00325 int digital_input(int);
00327 void digital_output(int bit, int val);
00329 void digital_pull_up(int);
00330 
00332 int button1_read( void );
00334 int button1_click( void );
00336 void button1_wait( void );
00337 
00339 int button2_read( void );
00341 int button2_click( void );
00343 void button2_wait( void );
00344  // end addtogroup
00346 
00347 #endif
00348 

Generated on Thu Nov 8 23:15:40 2007 for libdragonfly by  doxygen 1.5.3