Ads_700x200

sobota, 12 kwietnia 2014

Łączyć MASY urządzeń cyfrowych czy nie łączyć ?

Witam,

Tym króciutkim poradnikiem (takim troszkę "na luzie" i z lekkim przymrużeniem oka) chciałbym raz na zawsze uciąć dywagacje i łamigłówki początkujących osób, które nie mają jeszcze doświadczenia w elektronice ale zaczynają stawiać swoje pierwsze kroki w programowaniu mikrokontrolerów. O ile programowanie zaczyna wychodzić, to jednak zdobywanie wiedzy elektronicznej idzie czasem wolniej i okupione bywa w swoich początkach dość przykrymi niespodziankami w postaci np przysłowiowego "SPALENIA" czy to układów scalonych, czy to tranzystorów lub innych części elektronicznych albo wręcz całych urządzeń jak np programator a niejednokrotnie nawet komputer do którego początkujący podłącza swoje pierwsze wynalazki. Jednym z największych grzechów początkujących bywa właśnie zagadnienie z ŁĄCZENIEM WSPÓLNYCH MAS dwóch urządzeń. Średnio kilka razy na miesiąc pojawia się pytanie, czy np jeśli robię komunikację za pomocą linii RX i TX (RS232) to czy muszę połączyć także masy tych urządzeń ? Albo jeśli podłączam programator do płytki z mikrokontrolerem, która ma własne zasilanie to czy muszę połączyć masy obu tych urządzeń ? .... no i zaczynają się cyrki gdy ....

czwartek, 10 kwietnia 2014

Pułapki programowe - debuger na jednej diodzie LED

Witam,

w związku z dość sporym niezrozumieniem tematu dotyczącego własnych pułapek programowych czy też użycia nawet pojedynczej diody LED do celów debugowania swoich programów, postanowiłem przygotować ten krótki poradnik. Przy okazji zasygnalizuję również jak korzystać z RS232 żeby sobie coś tam debugować w najprostszy z możliwych sposobów przy udziale terminala. Wystarczy nam do tego jedno ale za to (jak się chyba każdy domyśla) podstawowe narzędzie elektronika cyfrowego - czyli przejściówka USB/RS232 albo zwykły RS232. Od dawien dawna był to najstarszy i bodajże najtańszy sposób na debugowanie programu. Dzisiaj chyba wszyscy już prawie młodzi programiści o tym zapomnieli, i jedyne co widzą to gotowe debugery programowe wbudowane np w niektóre środowiska programistyczne, co okupione jest także zwykle koniecznością zakupu sporo droższego programatora sprzętowego. Tymczasem pokażę hmmm przypomnę jak sobie z tym radzić mając tylko dwie własne ręce i kilka prostych pomysłów ;)

niedziela, 6 kwietnia 2014

Wstawki ASM w AVR GCC - część 01

Witam,

Dzisiaj po dość długiej przerwie w kręceniu poradników, chciałbym wam przedstawić dwu- , może trzy- częściowy poradnik na temat tworzenia wstawek asemblerowych w języku C (AVR GCC). Co mnie do tego skłoniło ? W sumie prosta rzecz. Tym razem miałem nakręcić kolejną część poradnika na temat Magic LED'ów. Ale jak się okazało, po wielu próbach - wykładałem się wciąż na wyjaśnieniach dotyczących właśnie wspomnianych w tytule wstawek asemblerowych. Okazywało się bowiem, że muszę przejść przez nie dość szczegółowo aby wyjaśnić istotę działania najniższych procedur służących do sterowania tymi diodami, ale wciąż czegoś mi brakowało. Tym czymś - okazały się przynajmniej jakieś podstawy dotyczące zagadnienia tworzenia takich wstawek. Koniec końców - okazało się, że najpierw nakręcę poradnik niejako oddzielny tematycznie - bo o wstawkach ASM ale jednak ściśle łączący się z Magic LED'ami ;) .... Dzisiaj prezentuję pierwszą taką dość luźną (i troszkę przegadaną na początku) część tego poradnika. Dlaczego przegadaną ? ano dlatego że miałem dłuższą przerwę no i też nie ukrywam że z okazji "piko ZLOTU - LINK" forumowiczów ATNEL, jaki odbył się w Bydgoszczy! ;) Przy okazji dziękuję wszystkim obecnym, że byliście ze mną. ... Mam nadzieję, że za te kilka nadmiarowych minut mnie nie zlinczujecie i spokojnie dotrwacie do początku poradnika. Oczywiście - zaczynam hmmm jakby od zupełnych podstaw w sensie opisania konkretnego przykładu, który najpierw zostanie przygotowany w czystym C a dopiero później w asemblerze jako wstawka. Wszystko to po to aby mieć dobre porównanie jak mają się wstawki asm do C oraz co? jak? i z czym się "zajada" ;)

piątek, 14 marca 2014

Liczby BCD - konwersje - koniec kłopotów ;)

Witam,

Tym poradnikiem chciałbym odciąć się GRUUUBĄ kreską od problemów nie tyle ze sprawą zrozumienia istoty kodowania BCD ale od problemów związanych ze zrozumieniem - jak konwertować sobie takie liczby w KAŻDĄ ze stron. Wielu ludzi żegluje po bezkresnym oceanie internetu w poszukiwaniu tajemniczych funkcji w języku C, które pozwoliłyby im konwertować te liczby BCD na dziesiętne i odwrotnie, szczególnie gdy akurat - niechcący zajmują się budową jakiegoś zegarka opartego o układ RTC ;) ... po co żeglować ? ;) wystarczy zrozumieć BCD ... i samemu UWAGA! w jednej linijce napisać kod do konwersji w każdą ze stron .... Mam nadzieję, że po tym poradniku wiele osób odetchnie z ulgą - wracając z długich wypraw po bezkresie internetu.

czwartek, 13 marca 2014

Maskowanie bajtów - z przymrużeniem oka ;)

Witam,

Chciałbym dzisiaj zaprezentować wam krótki film, ale Uwaga! dozwolony od lat 19,5 ! (tylko dla widzów o mocnych nerwach). Proszę także o wyrozumiałość dla mnie. Ale dobrze - nie uprzedzajmy faktów. Ten mini poradnik będzie dotyczył kwestii maskowania bajtów, tzw masek bitowych. Podejmuję się w taki dość hmm niekonwencjonalny sposób wyjaśnienia - jak można spojrzeć na to zagadnienie chłodnym okiem. No właśnie, w zasadzie wszystko w tym poradniku kręci się wokół oka ;) .... Kłopot jednak, wśród wielu początkujących polega na tym, że czasem dość długo nie mogą zrozumieć pojęcia maskowania, co to znaczy to maskowanie? jaka to operacja i co ona ma na celu ? - pomimo iż niejednokrotnie widzą przykłady programowe. Mimo to ciężko im czasem przejść dalej .... dokąd nie zrozumieją raz na dobre w czym rzecz. Dlatego mam nadzieję, że tym poradnikiem, którego proszę traktować również z przymrużeniem oka, uda mi się ostatecznie rzecz wyjaśnić a maskowanie na zawsze stanie się przejrzyste i zrozumiałe ;)

niedziela, 9 marca 2014

Liczby szesnastkowe - hexadecymalne - PODSTAWY

Witam,

Tym razem już krótko i bez owijania w bawełnę, przechodzimy do omówienia liczb szesnastkowych inaczej mówiąc hexadecymalnych. Naturalnie tematem poradnika będzie także konwersja tych liczb na postać binarną oraz dziesiętną a także odwrotnie z dziesiętnej na szesnastkową. Nie chciałem już dzielić tego poradnika na dwie części i niestety znowu słowo "króciuki" poradnik rozkompresowało mi się do jednej godziny. Mam nadzieję, że wytrzymacie ze mną i że uda mi się przekazać mój punkt widzenia i postrzegania tych liczb a także jak się nimi posługiwać w różnych sytuacjach życiowych. ;) Zapraszam więc do mojej tablicy elektronicznej.

środa, 5 marca 2014

Liczby BINARNE - PODSTAWY

Witam,

to kolejna mała seria hmm cykl mini poradników ale dla totalnie początkujących a może nawet dla osób, które w ogóle nigdy nie mają zamiaru programować czy też zajmować się elektroniką itp. Za to w szkole mają zajęcia na temat liczb binarnych i muszą zrozumieć o co chodzi, muszą nauczyć się ich konwersji na liczby dziesiętne a także w drugą stronę. Tego tematu nie poruszałem w mojej niebieskiej książce (Bluebooku) ponieważ wydawał mi się zbyt oczywisty, no i myślałem że KAŻDY zna tak prosty sposób na posługiwanie się konwersją liczb binarnych. Tymczasem w wyniku wielu próśb od czytelników i początkujących a także w wyniku sprawdzenia chociażby kilku pierwszych lepszych poradników w internecie czy też podręczników do gimnazjum, okazuje się - że temat ten można podać albo w strasznie (jak dla mnie i dla wielu pewnie) trudny sposób - czyli tylko czysta teoretyczna matematyka z mnóstwem działań, potęgowaniem, mnożeniem, dzieleniem, dodawaniem i odejmowaniem - podczas gdy można to (tak mi się wydaje) pokazać prościej a przede wszystkim PRAKTYCZNIE. W praktycznym zastosowaniu ... na ciekawych przykładach a nie tylko teorii - co może spowodować że sposób obliczeń matematycznych trafi o wiele lepiej i łatwiej do każdego, podkreślam każdego ucznia ;) i nie tylko ucznia. Bo z tego co mi wiadomo z maili na naukę informatyki i programowania NIGDY nie jest za późno i wielu moich czytelników rozpoczyna tą przygodę w bardzo zaawansowanym wieku z czego się bardzo cieszę i jest mi nawet bardzo miło - że to odbywa się również dzięki mojej niebieskiej książce, że udaje mi się zarażać tą tematyką osoby bez żadnego podziału na kategorie wiekowe ....

poniedziałek, 17 lutego 2014

AVR ADC - uśrednianie czyli cyfrowy filtr dolnoprzepustowy

Witam,

To już ostatni odcinek cyklu poradników na temat przetworników ADC w mikrokontrolerach AVR, a jednocześnie można śmiało powiedzieć - trzeci odcinek na temat AVR dla początkujących. Jest to jakby nie patrzeć trzecie podejście do sposobów uśredniania wyników ADC podczas pomiarów. Myślę, że omawiany tutaj sposób może się przydać każdemu a przy okazji, cały cykl, wskaże drogę do odkrywania nowych własnych jeszcze inny i pewnie jeszcze lepszych metod w tym zakresie. Omawiane przeze mnie sposoby mają być po prostu inspiracją ale ten odcinek jest o tyle szczególny, że może być potraktowany jakby całkowicie niezależnie poza serią i przysłużyć się początkującym, którzy chcieliby szybko okiełznać pomiary napięć w prockach AVR. Gorąco polecam ;)

wtorek, 11 lutego 2014

Czym się różni ... ? ( atmega8 od atmega8A itp)

Witam,

Zdaję sobie sprawę że to bardzo błahy temat niby ;) .... że każdy powinien to wiedzieć, ale jednak czasem w nawale i natłoku informacji ciężko początkującemu szybko jak BŁYSKAWICA dotrzeć do tego o czym mówię w swoim krótkim i BŁYSKAWICZNYM jak na mnie rekordowo krótkim poradniku. Proszę go wręcz potraktować z przymrużeniem oka ;) .... ale z drugiej strony cieszę się, że teraz zamiast dużo pisać na maila - po prostu będę mógł wkleić link do tego poradnika i nawet nikt mi nie powie, że za długi hahaha ;) Więc proszę się skupić i uważnie obejrzeć o co chodzi ...

sobota, 8 lutego 2014

WS2812 - MAGIC RGB LED - PART 05

Witam,

W takim razie - zabieramy się moi drodzy za kolejny - piąty już odcinek na temat Magic LED. Tym razem będzie rozprawka na temat buforowania, czyli omówimy sobie jeden z bodajże najważniejszych i najbardziej optymalnych chyba sposobów jeśli chodzi o obsługę takich taśm LED. Tu już wkraczamy w takie dziedziny można śmiało powiedzieć - jak byśmy zaczynali tworzyć własny sterownik graficzny do jakiegoś kolorowego wyświetlacza LED TFT ;) .... Mam nadzieję, że również ten, krótki chociaż troszkę rozgadany poradnik wam się na coś przyda, choć nadal z mojej strony tzn wg mnie jest to jedno z najważniejszych zagadnień i niestety bardzo często spotyka się z dużym niezrozumieniem ze strony początkujących. Dlatego właśnie postanowiłem poświęcić tej sprawie hmmm "trochę" miejsca na antenie ;)

niedziela, 2 lutego 2014

ECLIPSE - pierwszy program od A do Z

Witam,

Z uwagi na napływającą do mnie, na prawdę, ogromną ilość zapytań i to nie tylko w postaci maili, pytań na skype ale także telefonów, postanowiłem po raz już bodajże OSTATNI rozprawić się nie tylko z tematem instalacji Eclipse od początku ale także tym jak napisać w nim i skompilować pierwszy program, tak aby dało radę wgrać go do najbardziej popularnego procka jakim jest ATmega8. Większość z was motywowała swoją prośbę tym, że o ile komuś udawało się już nawet odpalić Eclipse to z kolei były ponoć rzekomo ;) wielkie problemy z tym aby skompilować najprostszy program do migania diodą LED, z wygenerowaniem pliku HEX czy w końcu z wgraniem tego do mikrokontrolera AVR. Ja dodałem jeszcze jak to zwykle jest w moim stylu, omówienie wielu błędów jakie jednak popełniacie przy instalacji Eclipse, pomimo to że w poradnikach poprzednich praktycznie wszystko omawiałem. Czasem zdarzało się jednak że pomijałem jakieś drobne i oczywiste dla mnie sprawy a tymczasem dla was stanowiło to poważny problem. Pomimo to że znowu kosztowało mnie to nieco pracy to postanowiłem jeszcze raz i ostatni raz podejść do tego zagadnienia. Myślę, że dzięki temu już nie będę musiał odpisywać na setki maili z pytaniami w tej dziedzinie bo ten poradnik rozwiąże wszystkie wasze zagadki ;)