1config RT_USING_I2C 2 bool "Using I2C device drivers" 3 default n 4 5if RT_USING_I2C 6 config RT_I2C_DEBUG 7 bool "Use I2C debug message" 8 default n 9 10 config RT_USING_I2C_BITOPS 11 bool "Use GPIO to simulate I2C" 12 default y 13 14 if RT_USING_I2C_BITOPS 15 config RT_I2C_BITOPS_DEBUG 16 bool "Use simulate I2C debug message" 17 default n 18 endif 19 20 menuconfig RT_USING_SOFT_I2C 21 bool "Use GPIO to soft simulate I2C" 22 default n 23 select RT_USING_PIN 24 select RT_USING_I2C_BITOPS 25 if RT_USING_SOFT_I2C 26 menuconfig RT_USING_SOFT_I2C0 27 bool "Enable I2C0 Bus (software simulation)" 28 default y 29 if RT_USING_SOFT_I2C0 30 config RT_SOFT_I2C0_SCL_PIN 31 int "SCL pin number" 32 range 0 32767 33 default 1 34 config RT_SOFT_I2C0_SDA_PIN 35 int "SDA pin number" 36 range 0 32767 37 default 2 38 config RT_SOFT_I2C0_BUS_NAME 39 string "Bus name" 40 default "i2c0" 41 config RT_SOFT_I2C0_TIMING_DELAY 42 int "Timing delay (us)" 43 range 0 32767 44 default 10 45 config RT_SOFT_I2C0_TIMING_TIMEOUT 46 int "Timing timeout (tick)" 47 range 0 32767 48 default 10 49 endif 50 menuconfig RT_USING_SOFT_I2C1 51 bool "Enable I2C1 Bus (software simulation)" 52 default y 53 if RT_USING_SOFT_I2C1 54 config RT_SOFT_I2C1_SCL_PIN 55 int "SCL pin number" 56 range 0 32767 57 default 3 58 config RT_SOFT_I2C1_SDA_PIN 59 int "SDA pin number" 60 range 0 32767 61 default 4 62 config RT_SOFT_I2C1_BUS_NAME 63 string "Bus name" 64 default "i2c1" 65 config RT_SOFT_I2C1_TIMING_DELAY 66 int "Timing delay (us)" 67 range 0 32767 68 default 10 69 config RT_SOFT_I2C1_TIMING_TIMEOUT 70 int "Timing timeout (tick)" 71 range 0 32767 72 default 10 73 endif 74 menuconfig RT_USING_SOFT_I2C2 75 bool "Enable I2C2 Bus (software simulation)" 76 default n 77 if RT_USING_SOFT_I2C2 78 config RT_SOFT_I2C2_SCL_PIN 79 int "SCL pin number" 80 range 0 32767 81 default 5 82 config RT_SOFT_I2C2_SDA_PIN 83 int "SDA pin number" 84 range 0 32767 85 default 6 86 config RT_SOFT_I2C2_BUS_NAME 87 string "Bus name" 88 default "i2c2" 89 config RT_SOFT_I2C2_TIMING_DELAY 90 int "Timing delay (us)" 91 range 0 32767 92 default 10 93 config RT_SOFT_I2C2_TIMING_TIMEOUT 94 int "Timing timeout (tick)" 95 range 0 32767 96 default 10 97 endif 98 menuconfig RT_USING_SOFT_I2C3 99 bool "Enable I2C3 Bus (software simulation)" 100 default n 101 if RT_USING_SOFT_I2C3 102 config RT_SOFT_I2C3_SCL_PIN 103 int "SCL pin number" 104 range 0 32767 105 default 7 106 config RT_SOFT_I2C3_SDA_PIN 107 int "SDA pin number" 108 range 0 32767 109 default 8 110 config RT_SOFT_I2C3_BUS_NAME 111 string "Bus name" 112 default "i2c3" 113 config RT_SOFT_I2C3_TIMING_DELAY 114 int "Timing delay (us)" 115 range 0 32767 116 default 10 117 config RT_SOFT_I2C3_TIMING_TIMEOUT 118 int "Timing timeout (tick)" 119 range 0 32767 120 default 10 121 endif 122 menuconfig RT_USING_SOFT_I2C4 123 bool "Enable I2C4 Bus (software simulation)" 124 default n 125 if RT_USING_SOFT_I2C4 126 config RT_SOFT_I2C4_SCL_PIN 127 int "SCL pin number" 128 range 0 32767 129 default 9 130 config RT_SOFT_I2C4_SDA_PIN 131 int "SDA pin number" 132 range 0 32767 133 default 10 134 config RT_SOFT_I2C4_BUS_NAME 135 string "Bus name" 136 default "i2c4" 137 config RT_SOFT_I2C4_TIMING_DELAY 138 int "Timing delay (us)" 139 range 0 32767 140 default 10 141 config RT_SOFT_I2C4_TIMING_TIMEOUT 142 int "Timing timeout (tick)" 143 range 0 32767 144 default 10 145 endif 146 menuconfig RT_USING_SOFT_I2C5 147 bool "Enable I2C5 Bus (software simulation)" 148 default n 149 if RT_USING_SOFT_I2C5 150 config RT_SOFT_I2C5_SCL_PIN 151 int "SCL pin number" 152 range 0 32767 153 default 11 154 config RT_SOFT_I2C5_SDA_PIN 155 int "SDA pin number" 156 range 0 32767 157 default 12 158 config RT_SOFT_I2C5_BUS_NAME 159 string "Bus name" 160 default "i2c5" 161 config RT_SOFT_I2C5_TIMING_DELAY 162 int "Timing delay (us)" 163 range 0 32767 164 default 10 165 config RT_SOFT_I2C5_TIMING_TIMEOUT 166 int "Timing timeout (tick)" 167 range 0 32767 168 default 10 169 endif 170 menuconfig RT_USING_SOFT_I2C6 171 bool "Enable I2C6 Bus (software simulation)" 172 default n 173 if RT_USING_SOFT_I2C6 174 config RT_SOFT_I2C6_SCL_PIN 175 int "SCL pin number" 176 range 0 32767 177 default 13 178 config RT_SOFT_I2C6_SDA_PIN 179 int "SDA pin number" 180 range 0 32767 181 default 14 182 config RT_SOFT_I2C6_BUS_NAME 183 string "Bus name" 184 default "i2c6" 185 config RT_SOFT_I2C6_TIMING_DELAY 186 int "Timing delay (us)" 187 range 0 32767 188 default 10 189 config RT_SOFT_I2C6_TIMING_TIMEOUT 190 int "Timing timeout (tick)" 191 range 0 32767 192 default 10 193 endif 194 menuconfig RT_USING_SOFT_I2C7 195 bool "Enable I2C7 Bus (software simulation)" 196 default n 197 if RT_USING_SOFT_I2C7 198 config RT_SOFT_I2C7_SCL_PIN 199 int "SCL pin number" 200 range 0 32767 201 default 15 202 config RT_SOFT_I2C7_SDA_PIN 203 int "SDA pin number" 204 range 0 32767 205 default 16 206 config RT_SOFT_I2C7_BUS_NAME 207 string "Bus name" 208 default "i2c7" 209 config RT_SOFT_I2C7_TIMING_DELAY 210 int "Timing delay (us)" 211 range 0 32767 212 default 10 213 config RT_SOFT_I2C7_TIMING_TIMEOUT 214 int "Timing timeout (tick)" 215 range 0 32767 216 default 10 217 endif 218 menuconfig RT_USING_SOFT_I2C8 219 bool "Enable I2C8 Bus (software simulation)" 220 default n 221 if RT_USING_SOFT_I2C8 222 config RT_SOFT_I2C8_SCL_PIN 223 int "SCL pin number" 224 range 0 32767 225 default 17 226 config RT_SOFT_I2C8_SDA_PIN 227 int "SDA pin number" 228 range 0 32767 229 default 18 230 config RT_SOFT_I2C8_BUS_NAME 231 string "Bus name" 232 default "i2c8" 233 config RT_SOFT_I2C8_TIMING_DELAY 234 int "Timing delay (us)" 235 range 0 32767 236 default 10 237 config RT_SOFT_I2C8_TIMING_TIMEOUT 238 int "Timing timeout (tick)" 239 range 0 32767 240 default 10 241 endif 242 endif 243endif 244