Odpowiedz 
 
Ocena wątku:
  • 3 Głosów - 3.33 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Programowanie w języku C w środowisku AVR Studio4
SP5FCS Offline
Adam
*****

Liczba postów: 1,072
Dołączył: 02-02-2009
Post: #146
RE: Programowanie w języku C w środowisku AVR Studio4
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.

73 Adam
21-04-2012 9:31
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
RE: Programowanie w języku C w środowisku AVR Studio4 - SP5FCS - 21-04-2012 9:31

Skocz do:


Użytkownicy przeglądający ten wątek: 21 gości