Jarek, prostota kodu oraz gotowe funkcje to największe zalety Bascoma, szczególnie na początku nauki programowania. Jeśli do języka C dostarczymy odpowiedni zestaw funkcji w postaci dodatkowej biblioteki to program może być równie prosty.
Wadą funkcji Shiftout Bascoma jest programowa obsługa interfejsu SPI. Sprzętowa obsługa jest prostsza, szybsza i zajmuje mniej kodu. zaletą jest to, że możemy obsługiwać SPI na dowolnych pinach albo mieć kilka niezależnych interfejsów SPI.
Struktury
Bardzo silnym narzędziem dla programistów w języku C są struktury danych. Często w złożonych aplikacjach musimy operować na blokach danych składających się z wielu parametrów. Jako przykład weźmy nastawy radia na paśmie. Kiedy zmieniamy pasmo musimy zmienić również: antenę, modulację, tłumik wejściowy, wstęgę a może i nastawę automatyki, dsp, itd. Wielokrotne przepisywanie kilkunastu parametrów jest kłopotliwe, kod jest rozbudowany i nieczytelny. Tu z pomocą przychodzi możliwość zdefiniowania struktury w postaci wieloparametrowej zmiennej.
Kod:
typedef struct {
s32 freq_tx;
s32 freq_rx;
u8 step;
u8 antena;
u8 att;
u8 filtr;
u8 modulacja;
u8 agc;
} band_struc;
Dalsze operacje odbywają się już na całej strukturze (zapis, odczyt, przepisywanie) lub na jej wybranych elementach gdy pobieramy lub modyfikujemy jedno ustawienie na paśmie.