24-02-2012, 0:32
(22-02-2012, 9:53)SQ4AVS napisał(a): Bardzo pozytywnie byłem zaskoczony Twoją opinią na temat Bascoma w dziale Marcina o C ;-).
Pisanie programów na procesory wymaga znajomości języka, dokładnego poznania wewnętrznej struktury procesora oraz poznania technik programowania. W hobby najważniejsze jest jak najszybsze osiągnięcie zamierzonego celu przy minimalnych nakładach czasowych. W oparciu o taką filozofię został opracowany Bascom, język o prostej i czytelnej składni z maksymalnym wsparciem obsługi zasobów procesora. Gotowe funkcje języka do obsługi zasobów procesora zwalniają nas z konieczności studiowania setek stron jego wewnętrznej budowy. Dobra dokumentacja, help po polsku, dostępność setek różnych przykładów, wiele gotowych aplikacji ułatwia naukę i pisanie własnych programów. Jeśli możliwości Bascoma zaspakajają nasze potrzeby to wszystko jest OK i możemy skupić się na doskonaleniu technik programowania i zdobywaniu doświadczenia. Z powyższych powodów uważam, że Bascom jest dobrym wyborem na wstępnym etapie nauki programowania.
(22-02-2012, 9:53)SP4EJT napisał(a): Proszę o wyjaśnienie - na chłopski rozum, sprzętowe, np. I2C powinno chodzić szybciej.
Różnica pomiędzy sprzętową a programową obsługą różnych interfejsów procesora wiąże się z różną wielkością generowanego kodu programu oraz pochłanianym czasem pracy procesora.
Podczas obsługi programowej np. transmisji szeregowej procesor cyklicznie w pętli wystawia na pin pojedyncze bity, oblicza opóźnienie, sprawdza zakończenie nadania całego bajtu. Taki algorytm generuje spory kod programu oraz pochłania dużo czasu procesora.
Sprzętowa obsługa komunikacji wymaga bardzo mało kodu i minimalnie absorbuje procesor ponieważ to zadanie wykonuje sprzętowo określony fragment procesowa. W trakcie sprzętowego nadawania bajtu CPU jest wolne i może realizować inny fragment algorytmu. Sprzętowa obsługa zasobów procesora na przerwaniach jest najbardziej efektywną metodą wykorzystania czasu procesora oraz pozwala na równoległe obsługiwanie wielu wątków algorytmu.
Dlatego w wielu przypadkach jakość programu bardziej zależy od wiedzy i doświadczenia programisty niż od języka programowania
.
73 Adam

