Protokół MQTT #2: Paho Client

paho client

Jak wiadomo z poprzedniej części w modelu publish/subscribe występują dwa podstawowe elementy, pomiędzy którymi przesyłane są wiadomości. Są nimi klienci i broker. W naszym przypadku broker będzie zawsze gotowym rozwiązaniem, zainstalowanym gdzieś na komputerze albo udostępnionym w chmurze (np. Microsoft Azure, AWS), z którym będziemy się po prostu łączyli. Nie ma potrzeby i sensu stawiania go na niewielkim mikrokontrolerze. Z naszego punktu widzenia najbardziej interesujący jest klient i nim zajmiemy się w tym oraz następnych wpisach.… Czytaj dalej

Protokół MQTT #1: zasada działania

zasada działania MQTT

Tym wpisem rozpoczynamy serię na temat bardzo popularnego w IoT i M2M protokołu o nazwie MQTT. Jeśli interesujesz się koncepcją Internetu Rzeczy to pewnie już ta nazwa obiła Ci się kiedyś o uszy. Jeśli nie, to na pewno warto się z tym terminem zapoznać i teraz masz ku temu idealną okazję 🙂 Na początku przedstawię trochę teorii, a następnie wykorzystamy protokół w praktyce.… Czytaj dalej

Menu na LCD #4: implementacja (rozszerzenie)

Rozszerzona implementacja menu na LCD

W tej części zajmiemy się delikatnym rozbudowaniem implementacji z poprzedniego artykułu. Zobaczysz jak za pomocą jednego przycisku lub enkodera zrealizować wiele funkcji w zależności od sytuacji, np. przechodzenie w górę menu i rozjaśnianie LCD. Ponadto, dodamy wyświetlanie nagłówków przy każdym poziomie menu tak jak było to pokazane na filmie demonstracyjnym we wprowadzeniu.… Czytaj dalej

Wskaźniki funkcyjne

wskaźniki do funkcji

Programując w języku C nie sposób obejść się bez użycia wskaźników. W kursach, książkach dla początkujących to zagadnienie jest niemal zawsze opisywane, bo jest naprawdę ważne. Na początku nauki programowania wskaźniki same w sobie sprawiają problem w zrozumieniu, przez co takie narzędzie jak wskaźniki funkcyjne (ang. function pointer) jest bardzo często pomijane. Ma to swoje uzasadnienie – autorzy nie chcą tego jeszcze bardziej komplikować. Niestety potem początkujący programista nawet nie wie o ich istnieniu. A szkoda, bo dają ogromne możliwości.… Czytaj dalej