iopins.h
  1  #ifndef IOPINS_H
  2  #define IOPINS_H
  3  
  4  #include "platform_config.h"
  5  
  6  #ifdef TEECOMPUTER
  7  
  8  // Teecomputer layout
  9  
 10  // VGA
 11  // R                    3  2K
 12  // R                    4  1K
 13  // R                    33 500
 14  // G                    11 2K
 15  // G                    13 1K
 16  // G                    2  500
 17  // B                    10 820
 18  // B                    12 390
 19  // HSYNC                15 82
 20  // VSYNC                8  82
 21  
 22  // Display
 23  #define TFT_SCLK        27
 24  #define TFT_MOSI        26
 25  #define TFT_MISO        255
 26  #define TFT_TOUCH_CS    255
 27  #define TFT_TOUCH_INT   255
 28  #define TFT_DC          23
 29  #define TFT_CS          22 // 255 for LORES ST7789 (NO CS)
 30  #define TFT_RST         255 // 255 for ILI/ST if connected to 3.3V or 24 if really needed
 31  
 32  
 33  // SD
 34  #define SD_CS           BUILTIN_SDCARD
 35  
 36  // Audio
 37  #define AUDIO_I2S_DIN   7
 38  #define AUDIO_I2S_BCK   21
 39  #define AUDIO_I2S_LCK   20
 40  
 41  // Keyboard matrix
 42  #define KLED            14
 43  //Cols (out)
 44  //pico 1,2,3,4,5,14
 45  //teen 16,6,24,25,28,31
 46  #define KCOLOUT1        16
 47  #define KCOLOUT2        6
 48  #define KCOLOUT3        24
 49  #define KCOLOUT4        25
 50  #define KCOLOUT5        28
 51  #define KCOLOUT6        31
 52  //Rows (in)
 53  //pico 9,8,6,15,7,22
 54  //teen 19,18,17,5,29,30,32 //5,6,16,17,18,19
 55  #define KROWIN1         19
 56  #define KROWIN2         18
 57  #define KROWIN3         17
 58  #define KROWIN4         5
 59  #define KROWIN5         29
 60  #define KROWIN6         30
 61  #define KROWIN7         32
 62  
 63  #define PIN_KEY_USER1   41
 64  #define PIN_KEY_USER2   40
 65  
 66  // Second joystick (external)
 67  #define PIN_JOY1_BTN     34
 68  #define PIN_JOY1_1       35 // UP
 69  #define PIN_JOY1_2       36 // DOWN
 70  #define PIN_JOY1_3       38 // RIGHT
 71  #define PIN_JOY1_4       37 // LEFT
 72  
 73  #else
 74  
 75  // Original Layout
 76  #define TFT_SCLK        13
 77  #define TFT_MOSI        11
 78  #define TFT_MISO        12
 79  #define TFT_TOUCH_CS    255
 80  #define TFT_TOUCH_INT   255
 81  #define TFT_DC          9
 82  #define TFT_CS          22 // 255 for LORES ST7789 (NO CS)
 83  #define TFT_RST         23 // 255 for ILI/ST if connected to 3.3V
 84  
 85  // SD
 86  #define SD_CS          BUILTIN_SDCARD
 87  
 88  // I2C keyboard
 89  #define I2C_SCL_IO     19
 90  #define I2C_SDA_IO     18
 91  
 92  // Analog joystick (primary) for JOY2 and 5 extra buttons
 93  #ifdef HAS_T4_VGA
 94  #define PIN_JOY2_A1X    A3
 95  #define PIN_JOY2_A2Y    A2
 96  #define PIN_JOY2_BTN    14
 97  #define PIN_KEY_USER1   22
 98  #define PIN_KEY_USER2   23
 99  
100  // Second joystick
101  #define PIN_JOY1_BTN     34
102  #define PIN_JOY1_1       35 // UP
103  #define PIN_JOY1_2       36 // DOWN
104  #define PIN_JOY1_3       38 // RIGHT
105  #define PIN_JOY1_4       37 // LEFT
106  
107  #else
108  #define PIN_JOY2_A1X    A1
109  #define PIN_JOY2_A2Y    A2
110  #define PIN_JOY2_BTN    17
111  #define PIN_KEY_USER1   3 //34
112  #define PIN_KEY_USER2   4 //35
113  
114  // Second joystick
115  #define PIN_JOY1_BTN     2
116  #define PIN_JOY1_1       14 // UP
117  #define PIN_JOY1_2       7  // DOWN
118  #define PIN_JOY1_3       6  // RIGHT
119  #define PIN_JOY1_4       5  // LEFT
120  #endif
121  
122  #endif
123  
124  #endif