Ugrás a fő tartalomra

Kiterjesztési interfész

Egyedi eszközök építhetők és használhatók a CanSat-tal együtt. Ezekkel érdekes projekteket lehet készíteni, amelyekhez ötleteket találhatsz a Blogunkban.

A CanSat kiterjesztési interfésze egy szabad UART vonalat, két ADC lábat és 5 szabad digitális I/O lábat tartalmaz. Ezenkívül SPI és I2C vonalak is elérhetők a kiterjesztési interfészhez, bár ezek megosztottak az SD kártyával és az érzékelő csomaggal.

A felhasználó választhatja azt is, hogy a UART2 és az ADC lábakat digitális I/O-ként használja, ha soros kommunikációra vagy analóg-digitális átalakításra nincs szükség a megoldásában.

Pin számPin névHasználatMegjegyzések
12GPIO12Digitális I/OSzabad
15GPIO15Digitális I/OSzabad
16GPIO16UART2 RXSzabad
17GPIO17UART2 TXSzabad
18SPI_CLKSPI CLKMegosztott az SD kártyával
19SPI_MISOSPI MISOMegosztott az SD kártyával
21I2C_SDAI2C SDAMegosztott az érzékelő csomaggal
22I2C_SCLI2C SCLMegosztott az érzékelő csomaggal
23SPI_MOSISPI MOSIMegosztott az SD kártyával
25GPIO25Digitális I/OSzabad
26GPIO26Digitális I/OSzabad
27GPIO27Digitális I/OSzabad
32GPIO32ADCSzabad
33GPIO33ADCSzabad

Táblázat: Kiterjesztési interfész pin keresőtábla. A pin név a könyvtári pin nevet jelöli.

Kommunikációs lehetőségek

A CanSat könyvtár nem tartalmaz kommunikációs csomagolókat az egyedi eszközökhöz. Az UART, I2C és SPI kommunikációhoz a CanSat NeXT és az egyedi payload eszköz között, kérjük, tekintse meg az Arduino alapértelmezett UART, Wire, és SPI könyvtárait.

UART

Az UART2 vonal jó alternatíva, mivel szabadon felhasználható kommunikációs interfészként szolgál a kiterjesztett payloadok számára.

Az adatok UART vonalon történő küldéséhez kérjük, tekintse meg az Arduino

       CanSat NeXT
ESP32 Felhasználói eszköz
+----------------+ +----------------+
| | TX (Küldés) | |
| TX o----|---------------->| RX (Fogadás) |
| | | |
| RX o<---|<----------------| TX |
| | GND (Föld) | |
| GND o---|-----------------| GND |
+----------------+ +----------------+

Kép: UART protokoll ASCII-ban

I2C

Az I2C használata támogatott, de a felhasználónak figyelembe kell vennie, hogy egy másik alrendszer is létezik a vonalon.

Több I2C slave esetén a felhasználói kódnak meg kell határoznia, melyik I2C slave-t használja a CanSat adott időpontban. Ezt egy slave cím különbözteti meg, amely minden eszközhöz egyedi hexadecimális kód, és megtalálható az alrendszer eszköz adatlapján.

SPI

Az SPI használata szintén támogatott, de a felhasználónak figyelembe kell vennie, hogy egy másik alrendszer is létezik a vonalon.

Az SPI esetében a slave megkülönböztetése egy chip select pin megadásával történik. A felhasználónak az egyik szabad GPIO lábat kell chip selectként dedikálnia az egyedi kiterjesztett payload eszközéhez. Az SD kártya chip select pinje a CanSatPins.h könyvtári fájlban van definiálva SD_CS-ként.

CanSat NeXT I2C busz.

Kép: a CanSat NeXT I2C busz, amely több másodlagos vagy "slave" alrendszert tartalmaz. Ebben a kontextusban az Érzékelő csomag az egyik slave alrendszer.

CanSat NeXT SPI busz.

Kép: a CanSat NeXT SPI busz konfigurációja, amikor két másodlagos vagy "slave" alrendszer van jelen. Ebben a kontextusban az SD kártya az egyik slave alrendszer.