The modular mitmót system DPY kijelző kártya C API Dokumentációkód: -D 01.0.0.0 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Beágyazott Információs Rendszerek csoport 2005. augusztus DPY kijelző kártya API dokumentáció BME MIT 2005. -D01.0.0.0 1 Csordás Péter (csordas@mit.bme.hu),scherer Balázs (scherer@mit.bme.hu) 2005-08-23
Tartalom dpy_trm_s01 Init 3 DPY_TRM_S01 LED_n_OFF 4 DPY_TRM_S01 LED_n_ON 5 DPY_TRM_S01 LED_n_GET_STATE 6 DPY_TRM_S01 SWITCH_n_GET_STATE 7 DPY_TRM_S01 BUTTON_1_GET_STATE 8 dpy_trm_s01 Temp_Init 9 dpy_trm_s01 Temp_ReadTEMP 10 dpy_trm_s01 7seq_write_3digit 11 dpy_trm_s01 7seq_clear_dpy 12 dpy_trm_s01 7seq_write_number 13
dpy_trm_s01 Init Szintakszis: void dpy_trm_s01 Init(void); Meghívásának előfeltétele MCU API használata. Bemenő paraméterek Válasz paraméterek A függvény hatása LED-ek, gombok és kapcsolók lábainak beállítása. A hétszegmenses kijelző és a hőmérő szenzor inicializálása. A függvény működése Láb beállítások: GPIO_x_DIR_OUTPUT, GPIO_x_DIR_INPUT, GPIO_x_SET API függvényekkel. Kommunikációs portok inicializálása: I2C_init, SPI_init API függvényekkel. Hétszegmenses kijelző törlése: dpy_trm_s01 7seq_clear_dpy (lásd később). Hőmérő inicializálása: dpy_trm_s01 Temp_Init (lásd később). Megjegyzések
DPY_TRM_S01 LED_n_OFF Szintakszis DPY_TRM_S01 LED_n_OFF(); n az egyik LED sorszáma [1..4]. Az 1. sorszámú LED található a panel sarkán. Meghívásának előfeltétele dpy_trm_s01 Init meghívása. Bemenő paraméterek Válasz paraméterek A függvény hatása Az n. LED kikapcsolása A függvény működése A megfelelő GPIO_n_CLEAR API függvény hívása. Megjegyzések
DPY_TRM_S01 LED_n_ON Szintakszis DPY_TRM_S01 LED_n_ON(); n az egyik LED sorszáma [1..4]. Az 1. sorszámú LED található a panel sarkán. Meghívásának előfeltétele dpy_trm_s01 Init meghívása. Bemenő paraméterek Válasz paraméterek A függvény hatása Az n. LED bekapcsolása A függvény működése A megfelelő GPIO_n_SET API függvény hívása. Megjegyzések
DPY_TRM_S01 LED_n_GET_STATE Szintakszis DPY_TRM_S01 LED_n_GET_STATE(); n az egyik LED sorszáma [1..4]. Az 1. sorszámú LED található a panel sarkán. Meghívásának előfeltétele dpy_trm_s01 Init meghívása. Bemenő paraméterek Válasz paraméterek Az n. LED állapotát adja vissza (1 ha ég, 0 különben). A függvény hatása Az n. LED állapotának lekérdezése A függvény működése A megfelelő GPIO_n_GET_VALUE API függvény hívása. Megjegyzések
DPY_TRM_S01 SWITCH_n_GET_STATE Szintakszis DPY_TRM_S01 SWITCH_n_GET_STATE(); n egy kapcsoló sorszáma [1..4]. A számozás a modulról leolvasható. Meghívásának előfeltétele dpy_trm_s01 Init meghívása. Bemenő paraméterek Válasz paraméterek Az n. kapcsoló állapotát adja vissza (ON állásban 1, különben 0). A függvény hatása Az n. kapcsoló állapotának lekérdezése. A függvény működése A megfelelő GPIO_n_GET_VALUE API függvény hívása. Megjegyzések
DPY_TRM_S01 BUTTON_1_GET_STATE Szintakszis: DPY_TRM_S01 BUTTON_1_GET_STATE(); n egy nyomógomb sorszáma [1..3]. A számozás a modulról leolvasható. Meghívásának előfeltétele: dpy_trm_s01 Init meghívása. Bemenő paraméterek: Válasz paraméterek: Az n. nyomógomb állapotát adja vissza (ha a gomb nincs lenyomva 1, különben 0). A függvény hatása: Az n. nyomógomb állapotának lekérdezése. A függvény működése: A megfelelő GPIO_n_GET_VALUE API függvény hívása. Megjegyzések:
dpy_trm_s01 Temp_Init Szintakszis: unsigned char dpy_trm_s01 Temp_Init( unsigned char adr_jp1, unsigned char adr_jp2, unsigned char adr_jp3 ); Meghívásának előfeltétele: dpy_trm_s01 Init meghívása. Bemenő paraméterek: unsigned char adr_jp1 unsigned char adr_jp2 unsigned char adr_jp3 Az egyes címző jumperek (1. a panelen felül levő) állapota. Nem átkötött esetben az adott címbit 1, a jumper állapot TMP75_JUMPER_OFF, átkötött esetben a címbit 0, a jumper állapot TMP75_JUMPER_ON Válasz paraméterek: DPY_TRM_S01_TEMP NOERROR, azaz 0 sikeres lefutás esetén, DPY_TRM_S01_TEMP ERROR azaz 1 hiba esetén. A függvény hatása: A hőmérő szenzor inicializálása 12 bites felbontásra, és beállítása olvasásra. A függvény működése: Két I2C kommunikáció: a 12 bites felbontás beállítása, a hőmérséklet regiszter megcímzése. Megjegyzések: dpy_trm_s01 Init az összes jumpert OFF állásúnak feltételezve meghívja.
dpy_trm_s01 Temp_ReadTEMP Szintakszis: unsigned char dpy_trm_s01 Temp_ReadTEMP( float* temp, unsigned char adr_jp1, unsigned char adr_jp2, unsigned char adr_jp3 ); Meghívásának előfeltétele: dpy_trm_s01 Init meghívása. Bemenő paraméterek: unsigned char adr_jp1 unsigned char adr_jp2 unsigned char adr_jp3 Az egyes címző jumperek (1. a panelen felül levő) állapota. Nem átkötött esetben az adott címbit 1, a jumper állapot TMP75_JUMPER_OFF, átkötött esetben a címbit 0, a jumper állapot TMP75_JUMPER_ON float* temp a kiolvasott hőmérséklet tárolására szolgáló változó címe. Válasz paraméterek: DPY_TRM_S01_TEMP NOERROR, azaz 0 sikeres lefutás esetén, DPY_TRM_S01_TEMP ERROR azaz 1 hiba esetén. A függvény hatása: Kiolvassa a hőmérsékletet A függvény működése: Két I2C kommunikáció: a hőmérséklet regiszter megcímzése, a hőmérséklet kiolvasása végül konverzió lebegőpontos számmá. Megjegyzések:
dpy_trm_s01 7seq_write_3digit Szintakszis void dpy_trm_s01 7seq_write_3digit( unsigned char data1, unsigned char data2, unsigned char data3 ); Meghívásának előfeltétele dpy_trm_s01 Init meghívása. Bemenő paraméterek unsigned char data1 a bal oldali hétszegmenses kijelzőre írandó adat. unsigned char data2 a középső hétszegmenses kijelzőre írandó adat. unsigned char data3 a jobb oldali hétszegmenses kijelzőre írandó adat. Válasz paraméterek: Nincsenek A függvény hatása: Adat megjelenítése a hétszegmenses kijelzőkön. A függvény működése: Kezeli a hétszegmenses kijelzőkhöz rendelt chip select lábat, és az SPI_byte API függvény segítségével elküldi az adatot. Megjegyzések: A hétszegmenses kijelző szegmenskiosztását lásd a header fájlban.
dpy_trm_s01 7seq_clear_dpy Szintakszis: void dpy_trm_s01 7seq_clear_dpy(void); Meghívásának előfeltétele: dpy_trm_s01 Init meghívása. Bemenő paraméterek: Válasz paraméterek: Nincsenek A függvény hatása: A hétszegmenses kijelzők törlése. A függvény működése: dpy_trm_s01 7seq_write_3digit függvényt hívja a megfelelő paraméterezéssel (0xff adattal). Megjegyzések: A hétszegmenses kijelző szegmenskiosztását lásd a header fájlban. A hétszegmenses kijelzők kikapcsolásával a DPY modul fogyasztása csökkenthető.
dpy_trm_s01 7seq_write_number Szintakszis: unsigned char dpy_trm_s01 7seq_write_number( float number, unsigned char decimal_fraction ); Meghívásának előfeltétele: dpy_trm_s01 Init meghívása. Bemenő paraméterek: float number, a megjelenítendő lebegőpontos szám unsigned char decimal_fraction a tizedes jegyek száma Válasz paraméterek: Ha az adott feltételekkel a szám nem jeleníthető meg (lásd a függvény működésénél), DPY_TRM_S01_7SEG ERROR, különben DPY_TRM_S01_7SEG NOERROR a visszatérési érték. A függvény hatása: Lebegőpontos szám kiírása a hétszegmenses kijelzőre. A függvény működése: Ellenőrzi, hogy a bemenetként kapott szám a megjeleníthető tartományba esik e. Ezek nyilván: -99 999 decimal_fraction=0 mellett, -9.9 99.9 decimal_fraction=1 mellett és 0 9.99 decimal_fraction=2 esetén. Ha a bemenet nem ebbe a tartományba esik, a függvény DPY_TRM_S01_7SEG ERROR hibajelzéssel visszatér, különben pedig dpy_trm_s01 7seq_write_3digit megfelelő hívásával kiírja a számot. Megjegyzések: A hétszegmenses kijelző szegmenskiosztását lásd a header fájlban.