Koledzy, jeden wątek a dyskusja na trzy tematy, starajmy się o utrzymanie pewnej dyscypliny tematycznej.
Nie da się jednoznacznie odpowiedzieć na pytanie który język jest lepszy Bascom czy maszynowy, wszystko zależy od umiejętności i doświadczenia programisty, złożoności projektu oraz wymagań czasowych. Większość projektów dla radioamatorów możemy skutecznie wykonać w dowolnym języku, są jednak i takie które przynajmniej w połowie muszą być napisane w assemblerze nawet jak go nie lubimy i zajmuje to dużo czasu.
Nie można również porównywać języków na podstawie wielkości kodu dla prostej aplikacji. Proste elementy sterowanie wyjdą bardzo podobnie w każdym języku. Proponuję uruchomić tak ze 4 przerwania (Timer co 1ms, 6* ADC co 10ms, zapis po SPI do pamięci) plus obsługę LCD i klawiatury i wszystko będzie jasne.
Aby potwierdzić, że Bascom jest taki łatwy, prosty i szybki do robienia projektów proponuję napisanie własnego oprogramowania skrzynki
easyATU, moja wersja jest napisana w assemblerze. Projekt jest prosty i łatwo porównać.
Straszenie assemblerem, że trudny, że wymaga dużo czasu na pisanie prostych aplikacji, tak jest tylko na początku. Po wykonanie kilkunastu projektów budujemy własne macra, które są tak samo czytelne i wygodne jak instrukcje wysokopoziomowa ale są zdecydowanie szybsze.
Przykład obliczeń z macrami, czy to przypomina assembkler ?
Cytat: ;-----------------------------------------------------
;Oblicz O_SPW=X*X/4096 - 64
;-----------------------------------------------------
_a32_to_b32 ;kopia A do B
_mul_32
_ld_b32_i16 $1000
_div_32u
_ld_b32_i16 64
_sub_32 ;wynik w A
Wniosek końcowy:
- na początek do nauki i prostych projektów jak najbardziej polecam Bascoma (szybki start i wygoda),
- dla ambitnych z perspektywą pracy na innych procesorach AVR32, ARM zdecydowanie C;
-dla tych, którzy wyciskają z procesora ostatnie soki, walczą o każdy bajt pamięci i uS jego czasu tylko assembler.