piątek, 9 grudnia 2016

Multipleksowanie i przerwania - część 3 kursu języka C dla AVR

Zestaw testowy ATB v1.05 (Atnel)
Przyszedł czas na trzecią część kursu języka C. Dzisiaj za cel obieramy multipleksowanie i przerwania

Po tej części kursu, temat multipleksowania będziesz mieć w jednym paluszku. Co więcej zapoznasz się z obsługą Timerów sprzętowych i dowiesz się co nieco na temat poruszania się po dżungli zwanej potocznie dokumentacją ;)

Zalecane jest obejrzenie poprzednich części kursu, oraz przejrzenie spisu materiałów uzupełniających.



Na pewno nie raz słyszałeś o multipleksowaniu, zagadnienie to przewija się w niemal wszystkich książkach traktujących o elektronice. Zagadnienie, które elektronik powinien mieć obcykane przed kontynuowaniem swojej kariery. Jednak początkujący (ja też na początku nie rozumiałem do końca o co chodzi) może czuć się nieco zakłopotany. 

Nie mam zamiaru pisać historii powstania tej technologii, czy rozpisywać ułańskich definicji, które do niczego Ci się nie przydadzą (no może na studiach). Mottem tego kursu jest nauka przez praktykę, dlatego od razu zabieramy się do pracy. 

Jak wygląda sprawa ze sprzętem? Ja korzystam z zestawu testowego firmy Atnel v1.05 podobnie jak w poprzedniej części kursu. Program podczas wideo poradnika będę pisać w środowisku Eclipse. Jeżeli korzystasz z własnej płytki testowej, bądź łączysz układ na płytce stykowej, to koniecznie zerknij na schemat.

Schemat
Myślę, że po przeanalizowaniu drugiej części kursu, jesteś w stanie bez problemu rozszyfrować schemat :)

Spis materiałów uzupełniających, na które warto rzucić przed przystąpieniem do oglądania.

Ponadto podczas tworzenia kursu nieocenioną pomocą okazała się książką Mikrokontrolery AVR Język C - podstawy programowania - to ta niebieska :)

Pakiet Taurus
Za cel na ten poradnik obierzemy sobie, zaświecenie całego wyświetlacza 7 segmentowego, następnie napiszemy program prostego licznika, a na sam koniec stworzymy prosty zegarek.

Zegarek stworzymy razem! Stawiam przed Tobą wyzwanie jakim będzie napisanie programu w oparciu o ten kurs. Programu dzięki, któremu na wyświetlaczu 7 segmentowym, dwa wyświetlacze po lewej stronie będą wskazywać godzinę, a dwa po lewej minutę. Dodatkowo po wciśnięciu dowolnego microswitcha, wyświetlacz przełączy się z trybu godziny - minuty, na tryb minuty - sekundy. Powodzenia! :)
Wyzwanie!
Część programu osoby, która jako pierwsza podeśle mi kod (oczywiście działający) będzie zamieszczony na stronie jako przykład. Sposobów jest w końcu tyle co programistów :)

Tymczasem zapraszam do obejrzenia materiału "wideło" ;)



Jeżeli masz jakieś pytania lub uwagi, to zachęcam do dyskusji w komentarzach.

Kod napisany podczas kursu - zostanie opublikowany już wkrótce.

12 komentarzy:

  1. Trochę za szybko jak dla mnie...
    i troche za mało szczegółów...

    Ale podoba mi się. To taka wizualizacja rozdziału o Multipleksowaniu z BB.

    Czekamy na następne!

    OdpowiedzUsuń
    Odpowiedzi
    1. Miło słyszeć, że się podoba :)

      Ot taki poradniczek na szybko. Fakt, nie zagłębiam się w szczegóły, tylko ogólnie przedstawiam wizję programu (jak zrobić, żeby działało).

      Jeżeli ktoś jest faktycznie zainteresowany tematem, to po obejrzeniu tego wideo będzie mieć jakiekolwiek pojęcie z czym się je dany temat, a w celu zagłębienia wiedzy odsyłam do książek, szczególnie do pierwszej części "Atnlowskiego" Bluebooka ;)

      Usuń
  2. Bardzo fajne tłumaczenie ..... ale jak dla mnie za szybko chcesz przekazać wiedzę i powstaje zamieszanie :)

    OdpowiedzUsuń
    Odpowiedzi
    1. Część moich znajomych podczas oglądania godzinnych lub dłuższych poradników korzysta z opcji przyspieszenia na youtube (nie ukrywam mi też się to zdarza :D). Chciałem uniknąć takiego efektu przy moich "szortach" (short - wideo) i przede wszystkim nie zabierać czasu widza na niepotrzebne przerywniki, czy dłuższe wstawki.

      Jeżeli chodzi o wprowadzenie zamieszania... dopiero zaczynam i muszę nad tym popracować! Dzięki za konstruktywną uwagę :)

      Usuń
  3. W zadaniu aby wyświetliła się sekwencja minuty - sekundy to mamy trzymać przycisk czy tylko kliknąć, a ponowne klikniecie wraca nam do godziny minuty?

    OdpowiedzUsuń
    Odpowiedzi
    1. Po jednym kliknięciu wyświetlacz powinien wskazywać minuty - sekundy, po ponownym godziny - minuty. Ot takie zwykłe przełączenie ;)

      Usuń
  4. A mógłbym obsłużyć 20 takich wyświetlaczy na raz

    OdpowiedzUsuń
    Odpowiedzi
    1. Teoretyczne tak musiałbyś Odwiedzać cyfry z.częstotliwością około 1khz. Łatwiej jest to zrobić na rejestrach przesównych i SPI

      Usuń
  5. Cześć jak dodać kropkę do licznika? Żeby w czasie liczenia była ciągle aktywna kropka?

    OdpowiedzUsuń