The Functions Available From The impC001’s Pins
In addition to LTE cellular connectivity, the impC001 provides the most extensive array of GPIO and standard buses of any imp module yet, including seven UARTs, five SPI buses and four I²C buses, plus a single USB host port.
Pin | uart DCAB |
uart EVMT |
uart NU |
uart HJKL |
uart PQSR |
spi DCAB |
spi PQRS |
spi EVMT |
i2c JH |
i2c KL |
usb AB |
ADC | DAC | PWM | Wake From Sleep |
State Change Callback |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | RTS | SCK | DATA+ | Yes | ||||||||||||
B | CTS | NCS | DATA- | |||||||||||||
C | RX | CIPO | Yes | |||||||||||||
D | TX | COPI | Yes | Yes | ||||||||||||
E | TX | COPI | Yes | |||||||||||||
F | Yes | |||||||||||||||
G | ||||||||||||||||
H | TX | SDA | Yes | Yes | ||||||||||||
J | RX | SCL | Yes | Yes | ||||||||||||
K | RTS | SCL | ||||||||||||||
L | CTS | SDA | Yes | |||||||||||||
M | RTS | SCK | Yes | Yes | ||||||||||||
N | TX | |||||||||||||||
P | TX | COPI | Yes | |||||||||||||
Q | RX | CIPO | ||||||||||||||
R | CTS | SCK | ||||||||||||||
S | RTS | NCS | Yes | Yes | ||||||||||||
T | CTS | NCS | Yes | Yes | ||||||||||||
U | RX | Yes | Yes | |||||||||||||
V | RX | CIPO | Yes | Yes | ||||||||||||
W | Yes | Yes |
Pin | uart XBADC |
i2c XBA |
i2c XDC |
PWM |
---|---|---|---|---|
XA | RX | SDA | ||
XB | TX | SCL | ||
XC | CTS | SDA | ||
XD | RTS | SCL | Yes |
Pin | uart YABCD |
spi YJTHU |
spi YRFES |
ADC | DAC | PWM | Wake From Sleep |
State Change Callback |
PHY | SDIO |
---|---|---|---|---|---|---|---|---|---|---|
YA | TX | CLK | ||||||||
YB | RX | CMD | ||||||||
YC | RTS | DATA0 | ||||||||
YD | CTS | DATA1 | ||||||||
YE | SCK | DATA2 | ||||||||
YF | CIPO | DATA3 | ||||||||
YG | CLK | |||||||||
YH | SCK | TXEN | ||||||||
YJ | COPI | Yes | Yes | CRSDV | ||||||
YK | Yes | Yes | Yes | MDIO | ||||||
YL | Yes | Yes | Yes | MDC | ||||||
YM | TXD0 | |||||||||
YN | TXD1 | |||||||||
YP | Yes | RXD0 | ||||||||
YQ | Yes | RXD1 | ||||||||
YR | COPI | Yes | ||||||||
YS | NCS | Yes | Yes | |||||||
YT | CIPO | Yes | Yes | |||||||
YU | NCS | Yes |
Call imp.info() — this returns a meta object with the property type, which is is a string containing the imp module name:
if (imp.info().type == "impC001") {
// Code running on impC001...
}
Bus names prefixed with X or Y should be read with that prefix being applied to all of the subsequent pins included in the bus name, not just the first. For example, uartXBADC indicates that this UART uses pins XB, XA, XD and XC, not pins XB, A, D and C or pins X, B, A, D and C.
Currently, only pinW is supported for wake-from-sleep. The additional wake pins will be supported in impOS 42.
Whilst DAC functionality is available on the impC001 pins named in the table above, they are not currently accessible via hardware.fixedfrequencydac APIs.
The UARTs provided by the impC001 initially have a minimum speed of 1526 baud and a theoretical maximum of 12.5Mbaud. If your application requires lower rates, please contact us.
The impC001 has a single USB bus accessed via pins A and B and controlled in Squirrel using hardware.usbAB.