Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Pierwsze kroki z AVR w C - pisać proste programy na procesory czy na PC?

MieszkoI 16 Lut 2013 21:43 2118 6
  • #1 16 Lut 2013 21:43
    MieszkoI
    Poziom 8  

    W znajomości języka C jestem zielony, można powiedzieć że mam "biały pas", tzn. trochę tam umiem wiem jak działają pętle for, while i if piszę jakieś proste programy jak w zadaniach z książki Ansii C Kernighana z mniejszym lub większym powodzeniem i się zastanawiam czy ma sens już teraz próbować swoich sił z pisaniem prostych programów na procesory czy jeszcze powinienem popisać na PC? Proszę o odpowiedzi osoby które zaczynały podobnie jak ja.

    0 6
  • #2 16 Lut 2013 21:45
    BlueDraco
    Specjalista - Mikrokontrolery

    Proponuję jednak zacząć od programowaia komputera, na którym masz większe możliwości oglądania działania programu i debugowania go. Zdecydowanie PC jest tu lepszym środowiskiem niż mikrokontroler.

    0
  • #3 16 Lut 2013 21:52
    dondu
    Moderator Mikrokontrolery Projektowanie

    Warto zrobić tak jak radzi kolega wyżej, bo de facto szybciej osiągniesz właściwy poziom.
    Później dojdzie specyfika mikrokontrolerów i wtedy na niej się skupisz, a nie na samym C, który będziesz już znał.

    Możesz także poćwiczyć online na przykładach w kompilatorze CManiak: http://mikrokontrolery.blogspot.com/2011/02/kurs-jezyka-c-spis-tresci.html

    Ale jeżeli będzie Ciebie korcić, by jak najszybciej zacząć z mikrokontrolerami, to możesz, ale nauka będzie szła wolniej.

    0
  • #4 17 Lut 2013 08:41
    tmf
    Moderator Mikrokontrolery Projektowanie

    Trening na PC jest jak najbardziej dobrym pomysłem. Ale można też popróbować na PC z mikrokontrolerami - Atmel Studio ma symulator, w którym można fajnie się pobawić i potestować swój kod, można też zainwestować w procka z JTAG i kupić sobie AVR Dragon - koszt znaczny (ponad 200zł), ale i tak się przyda w przyszłości, a jednak debugowanie sprzętowe daje dużo radości. Człowiek sobie przestawia jakiś układ peryferyjny JTAGiem i od razu widzi efekty swojej działalności.

    0
  • #5 17 Lut 2013 10:42
    MieszkoI
    Poziom 8  

    Dziękuję za odpowiedzi i widzę że jeszcze dużo będę musiał poćwiczyć na PC. Ale tak jak kolega wyżej napisał lepiej poznać C że przy pisaniu programu na µC nie zastanawiać się nad składnią czy innymi rzeczami związanymi z językiem. O ile dobrze rozumiem to co czytam w necie to język programowania w tym przypadku ma się tak tak tabliczka mnożenia do obliczania potęg.

    0
  • #6 17 Lut 2013 12:14
    SeerKaza
    Poziom 20  

    Powiem tak nie musisz dokładnie całego C przerabiać najważniejsze są podstawy deklarowanie zmiennych, tablic operatory pętle i instrukcje warunkowe plus wskaźniki może by się przydały i z tym myślę możesz siadać do uC. Działy takie jak łańcuchy znakowe możesz sobie odpuścić bo w książkach do C są opisane tylko funkcje na PC których na uC nie przeniesiesz bo na uC zupełnie inaczej operuje się łańcuchami.

    0
  • #7 17 Lut 2013 12:25
    tmf
    Moderator Mikrokontrolery Projektowanie

    SeerKaza napisał:
    Działy takie jak łańcuchy znakowe możesz sobie odpuścić bo w książkach do C są opisane tylko funkcje na PC których na uC nie przeniesiesz bo na uC zupełnie inaczej operuje się łańcuchami.


    Nie jest to prawdą, biblioteki standardowe są identyczne na PC i na mikrokontrolery, a że operacje na łańcuchach są wykonywane głównie przez funkcje z nagłówka string.h, więc ich obsługa jest prawie identyczna (prawie, bo na AVR ze względu na architekturę istnieją pewne rozszerzenia).
    Z drugiej strony warto poznać bardzo dobrze podstawy c, bo bez tego tworzy się takie babole, że aż strach. Mniej więcej tak jakby pisać wiersze w obcym języku znając zarys gramatyki i podstawowe słówka. Kwestia dyskusji, czy lepiej zdobywać te podstawy na PC, co może być wygodniejsze, czy lepiej na symulowanym mikrokontrolerze, co może być praktyczniejsze.

    0