STM32Butterfly2: obsługa cyfrowego termometru MCP9801

Poniżej przedstawiono listing programu głównego.

 

W pierwszym kroku działania programu głównego wywoływana jest funkcja time_init(), która odpowiada za konfigurację licznika SysTick. Sprowadza się ona do skonfigurowania priorytetu wywoływanego przerwania przez licznik, ustawienia częstotliwości występowania przerwania oraz włączenia licznika.

Następnym działaniem jest wywołanie funkcji nlcd_init(), odpowiedzialnej za inicjalizację wyświetlacza modułu KAmodLCD1. Funkcja ta odpowiada za włączenie zegarów używanych portów i kontrolera SPI, skonfigurowanie linii używanych w transmisji z wyświetlaczem oraz konfiguracje kontrolera SPI używanego w transmisji z wyświetlaczem pochodzącym z telefonu Nokia 3310. Funkcja nlcd_init() inicjalizuje także wyświetlacz poprzez ustawienie odpowiedniego stanu poszczególnych linii oraz wysłanie komend i danych konfiguracyjnych wyświetlacz.

Kolejnym działaniem jest konfiguracja kontrolera I2C, odpowiada za to funkcja i2cm_init. Jako parametr przyjmuje ona prędkość z jaką transmitowane są dane, w naszym przypadku jest to 100kHz. Listing funkcji został przedstawiony poniżej.

 

Do pobrania

O autorze