Ads_700x200

sobota, 28 grudnia 2013

Przerwania dla początkujących - część 03 + GRA

Witam,

Tym razem zapraszam was nie tylko do pisania kodu ale również do świata mojej wybujałej fantazji ;) dzięki czemu zobaczycie jak można zrobić przy pomocy pięciu diod LED, pięciu klawiszy, jednego buzzera, procka AVR i stykówki - fascynującą grę, która będzie mogła konkurować na najlepszymi produkcjami na Xboxa ;) Będzie to prawie gra FPS (Fisrt Person Shotter) ... ale ok nie ujawniam dalej informacji, zobaczycie sami o co tu chodzi. Na poważnie jednak, początek poradnika, myślę że będzie ważnym krokiem potrzebnym do całkowitego obeznania się (że tak powiem) z przerwaniami zewnętrznymi a szczególnie z tymi oznaczonymi jako PCINTx. Przy okazji zobaczycie, znowu jak piszę po kolei program, jak go testuję (każdy fragment) ... jak wyszukuję błędy ;) .... ciekawe czy ktoś z was wypatrzy błąd którego szukam w pewnym miejscu zanim ja wpadnę co źle zrobiłem ?

środa, 25 grudnia 2013

Przerwania dla początkujących - część 02

Tym razem od razu kolejny odcinek ... jeszcze troszkę teorii i zabieramy się w kolejnym do pisania kodu:


;)

sobota, 21 grudnia 2013

Przerwania okiem początkującego - mikołajkowy poradnik

Witam,

Z okazji zbliżających się świąt chciałbym zaprezentować wam, krótki mikołajkowy poradnik. Oczywiście taki dla całkowicie początkujących, na temat przerwań. Istoty działania przerwań, co się dzieje z mikrokontrolerem, gdy zaczyna być obsługiwane przerwanie, na co należy zwrócić szczególną uwagę, itp. Będzie to oczywiście taka jakby część teoretyczna, może nawet troszeczkę z przymrużeniem oka (za co przepraszam, jeśli się komuś nie spodoba moje poczucie humoru). Nie mniej jednak, atmosfera świąteczna, ostatni nawał pracy, obowiązków, nadgodzin, doprowadziły do przemęczenia a w rezultacie także gwałtownego rozluźnienia i sporej dawki uśmiechu ... z którym staram się nauczyć żyć, tak na co dzień ;) .... Przy okazji życzę wszystkim spokojnych, zdrowych i wesołych świąt.

sobota, 14 grudnia 2013

Przetwornik ADC - część 06

Witam,

Króciutko ;) tym razem ostatnia już część poradnika o ADC. Okazało się niestety, że będzie ona w postaci dwóch odcinków ... znowu się rozgadałem, a zatem od razu uwaga dla tych co to nie mogą zdzierżyć mojego, jak to powiadają na niektórych forach słowotoku. Tym panom już dziękujemy i niech od razu wyłączą swoje telewizory. My tymczasem zajmiemy się na początek takim praktycznym spojrzeniem na wykorzystanie ADC w jakimś konkretnym projekcie, gdzie na dodatek wystąpiły jakieś problemy w działaniu procka ATmega48. Naszym celem będzie więc podjęcie próby naprawy i rozprawienia się z tymi problemami ale wykorzystująć TYLKO i wyłącznie tą wiedzę, jakiej nabyliśmy w trakcie trwania tego cyklu poradników. Nic innego - zapewniam. A ponieważ będziemy że tak powiem naprawiać wspólnie klawiaturkę analogową to uznałem, że czemu by na koniec nie spróbować stworzyć od podstaw takiej własnej klawiatury, podejrzeć także jak ona może działać, plus inne smaczki technik programowania ;) Zapraszam więc gorąco ...

środa, 4 grudnia 2013

ECLIPSE vs Atmel Studio - porównanie

Witam,

W końcu udało mi się zrealizować długo obiecywany poradnik w którym będę mógł zająć się takim rzeczowym porównaniem dwóch sporych środowisk programistycznych wykorzystywanych podczas programowania mikrokontrolerów AVR. Chodzi oczywiście o ECLIPSE a także najnowszą wersję Atmel Studio 6.x. Uwaga! tym razem skupiam się na bardzo istotnych szczegółach, które są bodajże najistotniejsze z punktu widzenia programisty, z punktu oszczędności czasu, wspomagania działań programisty itp itd. Wyjaśnię także i rozwieję mity jakobym to ja był jakimś wrogiem z klapkami na oczach środowiska Atmel Studio. Wyjaśnię mój punkt widzenia i mam nadzieję, że ostatecznie się z tym rozprawię dzięki czemu być może wiele osób przestanie wmawiać mi dziwne rzeczy ;) ... chociaż ? ... chociaż jak znam życie to i tak znajdą się zatwardziali malkontenci, którzy znajdą kosmiczne kontrargumenty. Dobra mniejsza z tym, zapraszam serdecznie do obejrzenia i poznania nie tylko mojego punktu widzenia ale także wyjaśnienia wielu kwestii takich praktycznych. Np dlaczego nie wolno używać #define F_CPU w kodzie źródłowym programu....

niedziela, 1 grudnia 2013

AVR - ISP vc SPI co wolno a czego nie wolno ?

Witam,

Ten poradnik ma za zadanie przekazanie wam, tego co mi udało się dowiedzieć na temat ISP. Chciałbym tu nieco omówić ale tak od czysto praktycznej strony co to jest ISP (In System Programing) i czym różni się od SPI (Serial Peripherial Interface). Zwrócę uwagę jak się ma także ISP w niektórych procesorach do wyprowadzeń SPI a także na fakt, że nawet jeśli procesor posiada ISP to nie jest jednoznaczne z tym, że ma moduł SPI. Ale nie to jest najważniejsze. Wielu osobom sprawia bowiem kłopot i spędza sen z powiek, zagadnienie związane z możliwością wykorzystania pinów ISP jak MOSI, MISO i SCK do innych celów niż tylko do programowania. To tu jest bodajże najwięcej nieporozumień. Przykładowo jedną z największych porażek jakie przeżywa początkujący bywa np podłączenie pinów wyświetlacza LCD (tych D4..D7) do linii ISP. Gdy nagle występuje kłopot z programowaniem mikrokontrolera to prędzej pomyśli on o tym, że właśnie się zepsuł mikrokontroler niejednokrotnie (w pierwszym momencie) niż to, że być może coś źle podłączył. Później gdy już wie, że tak nie można to stara się znaleźć jakiekolwiek poradniki, które na podstawie wyliczanki, mówią że np tego nie można podłączać, tego również a tamto to już można. Ja bym chciał przedstawić inne podejście. Wyjaśnić co od czego zależy tak abyś mógł zrozumieć jak to działa i gdzie mogą być problemy a także jak ich nieraz unikać - abyś mógł sam oszacować zawsze z góry kiedy problem może wystąpić a kiedy nie. 

środa, 20 listopada 2013

Tablica wskaźników we flash ( PROGMEM ) Atmel toolchain

Witam,

Taka mała krótka porada dla wszystkich zjadaczy nowych właściwości atmel toolchain (w tym także przypomnienie dla mnie) ;) w porównaniu do starego AVR GCC. Jest to porada z cyklu jak płynnie i bezboleśnie przejść ze starego toolchaina WinAVR na najnowszy Atmel toolchain. Jak wiecie jeśli w starym GCC chcieliśmy zdefiniować w pamięci Flash jakieś napisy (stringi, cokolwiek także stałe liczbowe) np na potrzeby MENU, czy też jakieś fonty np dla wyświetlaczy różnej maści ;), a następnie utworzyć tablicę wskaźników do tychże napisów/fontów w pamięci Flash, to wystarczyło zrobić to tak (podam przykład w oparciu o stringi ok?) ...


PRAWIDŁOWA instalacja driverów dla układów FT232R

W związku z bardzo często zadawanym pytaniem postanowiłem przygotować króciutki artykuł pozwalający każdemu przebrnąć właściwie przez instalację driverów dla układów FT232R używanych w produktach Atnel. W zasadzie w artykule jest mowa o tym skąd należy je pobrać, jaką wersję wybrać ponieważ są dwie i co najgorsze gdy drivery są instalowane domyślnie przez niektóre wersje Windows, to wybierana jest ta niezalecana wersja. Podpowiadam także jak sobie poradzić gdy już mamy poważny kłopot i żadna instalacja driverów nie pozwala na prawidłowe działanie programów Atnel takich jak MkAvrCalculator czy też MkBootloader. Link poniżej:



poniedziałek, 18 listopada 2013

MkBootloader - mała rewolucja, generator BLS dla ATmega

Witam,

W kolejnym i tym razem bardzo krótkim poradniku chciałbym wam pokazać nowe narzędzie jakie oddaję wszystkim użytkownikom programu MkBootloader. Do tej pory każdy kto chciał wygenerować sobie BLS (wsad do mikrokontrolera) ATmega z bootloaderem, narażony był że tak powiem na obcowanie z konsolą DOS'a oraz koniecznością ręcznej kompilacji, że nie wspomnę o konieczności edycji parametrów pliku sterującego kompilacją makefile czy też samego pliku *.c który zawierał kod ... To powodowało, że osoby niezbyt obeznane z językiem C czyli użytkownicy Bascoma czy też czystego asemblera, nie do końca i nie zawsze potrafili sobie poradzić z przygotowaniem i właściwą kompilacją wsadu dla swoich potrzeb. Koniec ;) od dzisiaj jest inaczej ... dokładnie omawiam nowe narzędzie w programie a także integrację z programem MkAvrCalculator. Na zakończenie, jeśli ktoś zechce posłuchać fajnej muzyki i wytrzyma do końca to zobaczy fragmenty z planu - podczas gdy przeprowadzałem kiedyś pierwsze swoje próby z technologią związaną z tzw "GREEN SCREEN" ... no ale to dla wytrwałych ;) to oczywiście już nie ma nic wspólnego z poradnikiem - ot taka ciekawostka.

sobota, 2 listopada 2013

RTC DS3231 - najdokładniejszy zegarek na świecie?

Witam,

Tym razem chciałbym przedstawić wam pewien drobny scalaczek, który mnie ostatnio zafascynował. Pewnie nie jest on pierwszym i ostatnim, który tego "dokonał", że się tak wyrażę ale pomimo to uznałem, że warto powiedzieć o nim kilka słów. Tym bardziej, że przy tej okazji rozprawimy się jednocześnie z kilkoma ważnymi zagadnieniami elektronicznymi a także napiszemy sobie bibliotekę do jego obsługi. Bardzo często zdarza się, że początkująca osoba w zakresie mikrokontrolerów gdy robi swój pierwszy zegarek, wybiera do tego celu pierwszy lepszy i dostępny układ RTC. Być może czasem przegląda fora internetowe w poszukiwaniu porad, ale tam też często nie znajduje satsyfakcjonujących odpowiedzi, które pozwoliłyby właściwie i świadomie wybrać taki układ. Zwykle opieramy się na opinii innej osoby, która gdzieś tam akurat powiedziała, że np "u mnie ten RTC działał bardzo dokładnie". Ja w tym poradniku, chciałbym natomiast omówić temat niejako od podstaw. Zwrócić twoją uwagę na pewne szczegóły jeśli chodzi o parametry nie tylko układów scalonych ale także rezonatorów kwarcowych wykorzystywanych do budowy układów RTC. Przy okazji wiedza ta przyda się także w zakresie mikrokontrolerów z którymi będziesz miał do czynienia. Ale nie uprzedzajmy faktów, polecam obejrzeć - hmm może nie krótki bo ponad godzinny poradnik, jednak mam nadzieję, że pozwoli on poznać temat na tyle dogłębnie aby od tej pory każdy mógł już sam w pełni świadomie dobierać sobie układy RTC do swoich zastosowań czy też rezonatory kwarcowe. 

wtorek, 29 października 2013

ATB-USB-RS232 - w końcu JEST! ;)

Witam,

Tym razem chciałbym przedstawić wam najnowszy produkt z firmy Atnel. Powstawał dosyć długo i w bólach można powiedzieć. Niby prosta przejściówka USB/RS232 a jednak w trakcie prototypowania było sporo najrozmaitszych kłopotów ;) Na szczęście w końcu się udało i może ona ujrzeć światło dzienne. Dokładniejszy opis znajdziecie oczywiście na stronie ATNEL - LINK, tutaj jednak chciałbym przedstawić krótki filmik - poradnik pokazujący jej podstawowe możliwości. Te najbardziej podstawowe są oczywiście od razu wprost do wykorzystania. Mam tu na myśli takie funkcjonalności jak USB/RS232 .... ale uwaga w standardzie napięciowym RS232! co oznacza, że na wyjściu mamy napięcia jak w starych portach COM w komputerach od -12V do +12V. To nie wszystko, tym co najczęściej poszukują początkujący jak świętego grala niemalże, to funkcjonalność USB/RS232-TTL! Tyle że nie zawsze początkujący wiedzą nawet, że to właśnie tego poszukują, że to jest właśnie im potrzebne, dlatego często muszą się "poparzyć" potocznie mówiąc, poprzez kupowanie różnych dziwnych przejściówek USB/RS232, które później jak się okazują w ogóle nie chcą działać a to z mikrokontrolerem, a to z modułem Bluetooth ATB-BTM-222, a to jeszcze z czymś innym. Pominę na tym etapie inne możliwości bo o tym będzie w filmie poniżej. Dlatego zapraszam do jego obejrzenia:

czwartek, 17 października 2013

REWOLUCJA w MkAvrCalculatorze ;)

Witam,

Z uwagi na fakt iż niedługo w życie wejdą nowe przejściówki ATB-USB-RS232, które będą pełnić także rolę pełnoprawnych programatorów AVR co może spowodować iż niektórzy użytkownicy będą mieli podłączone do komputera dwa urządzenia np: przejściówkę oraz zestaw ATB, albo nawet trzy atnelańskie urządzenia czyli np: przejściówkę oraz dwa zestawy ATB pojawiłby się totalny mętlik w programie MkAvrCalculator w starszych wersjach od "build 59" w dół aby sprawnie obsłużyć takie konfiguracje. To pociągnęło za sobą konieczność totalnych zmian w programie pod tym względem. Oczywiście jest jeszcze kilka innych powodów takiej aktualizacji jaka będzie miała miejsce w wersji "build 60" ale o tym już dowiecie się wszystkiego w szczegółach z krótkiego bo tym razem tylko pół godzinnego filmiku. Zapraszam do obejrzenia ale także uwag szczególnie przy testowaniu najnowszej wersji programu gdy się ukaże. Ja starałem się wprawdzie sprawdzić jego działanie na takich systemach jak. Win XP, Win7, Win Vista oraz Win8 i wszystko wygląda że działa poprawnie, nie mniej jednak życie szybko to zweryfikuje, więc za wszystkie uwagi będę bardzo wdzięczny. Na zakończenie dodam, że w końcu udało mi się zrobić po prostu fajne i przydatne (kolejne mini narzędzie w MkAvrCalculator) czyli informację na bieżąco pod jakim numerkiem portu COM zgłasza nam się podpinana do USB przejściówka oparta o FT232 ;) i podobne scalaki. Mam nadzieję, że także wam przypadnie to do gustu - no ale czekam na opinie ;)

czwartek, 10 października 2013

Dzisiaj II urodziny FORUM ATNEL

Także i tą drogą chciałbym dać znać, że właśnie dzisiaj obchodzimy drugie urodziny naszego forum: www.forum.atnel.pl

Z tej okazji przygotowana jest także ciekawa promocja, która trwać będzie jeszcze dzisiaj przez cały dzień - zapraszam do linku poniżej ;)

środa, 2 października 2013

ATB-SHIELD-IO co można z nim zrobić ? ;)

Witam,

Niedawno pojawił w ofercie firmy Atnel nowy moduł przeznaczony do zestawów ATB o nazwie ATB-SHIELD-IO. Wspominałem już o nim na blogu przekazując niejako jego zapowiedź. Dzisiaj jednak chciałbym bliżej przedstawić w formie krótkiego poradnika wideo, co można z tym modułem robić ;) ... jak go wykorzystywać. Myślę, że kilka przykładów pokazanych tak na żywo, pozwoli każdemu ocenic czy ew docenić możliwości tego niewielkiego ale bardzo przydatnego modułu. Dlatego też w poradniku znajdziecie uzupełnienie ćwiczenia które pominąłem w poradniku na temat rejestrów przesuwnych: Rejestr przesuwny 74595 - podstawy. Wtedy nie miałem przylutowanych 8 goldpinów przy rejestrze przesuwnym i nie mogłem pokazać jak wykorzystać go do sterowania wyświetlaczem multipleksowanym LED, na bazie ćwiczenia z książki. Tym razem jest to ładnie zaprezentowane. Poza tym poruszam także tematykę podstawowego sterowania jasnością diod LED a w tym przypadku diody LED RGB, jaką posiadamy na omawianym module. Przy okazji poruszam tutaj temat korekcji GAMMA czyli widać przykład jak z niej korzystać w taki podstawowy najprostszy sposób. Jest to zatem uzupełnienie z kolei do tego poradnika: GAMMA correction - nowe narzędzie w MkAvrCalculator. Jako ostatni omawiam układ expandera I2C jakim jest PCF8574 oraz fajną mam nadzieję możliwość jego wykorzystania przy sterowaniu wyświetlaczy LCD. Tutaj również wspomagam się wprost kodem z drugiego oficjalnego wydania (w twardej oprawie) mojej pierwszej niebieskiej książki: "Mikrokontrolery AVR Język C - podstawy programowania". Myślę, że warto poświęcić około pół godzinki ... no może z "małym haczykiem" ;) ..... na obejrzenie materiału wideo, który prezentuję poniżej:

niedziela, 29 września 2013

GAMMA correction - nowe narzędzie w MkAvrCalculator

Witam,

Dzisiaj chciałbym przedstawić wam kolejne już nowe narzędzie w programie MkAvrCalculator. Tym razem zajmiemy się korekcją GAMMA. Co kryje się pod tym tajemniczym terminem. Pewnie każdy z was, kto zajmował się sterowaniem jasności diod LED za pomocą PWM zauważył, że zjawisko to jest bardzo nieliniowe, w związku z czym, próba rozjaśniania i ściemniania diody LED np w 256 krokach przy użyciu PWM'a o rozdzielczości 256, powoduje zwykle dosyć brzydkie zjawisko polegające na tym, że dioda przy niskich wartościach PWM bardzo szybko się rozjaśnia prawie do maksymalnej wartości (a przynajmniej nam tak się wydaje, tak postrzegają to nasze oczy). Po czym gdy zwiększamy PWM od wartości już ok 50 do 255 to w zasadzie nasze oko nie dostrzega zmian w zwiększającym się natężeniu światła. Wziąwszy do tego pod uwagę fakt, że różne diody LED (różne kolory) mają różne własne charakterystyki zależności prądu od napięcia (nieliniowe oczywiście) to dostajemy obraz, w którym ciężko jest niejednokrotnie uzyskać ciekawe i w pełni interesujące nas efekty świetlne, gdy budujemy własne urządzenie. Na początek zapraszam na krótki, tym razem naprawdę krótki film:

środa, 25 września 2013

Rejestr przesuwny 74595 - podstawy

Witam,

Oto króciutki, kolejny poradnik dotyczący tym razem rejestrów przesuwnych. Jest to oczywiście praktyczne uzupełnienie do książki "Mikrokontrolery AVR Język C - podstawy programowania". Tyle że tutaj w sposób taki troszkę obrazowy przedstawiam podstawy działania rejestrów, jak się do tego zabierać, jak można łączyć je kaskadowo po kilka sztuk a także jak to oprogramować w podstawowy sposób. Mam nadzieję, że ten poradnik wraz z wiedzą przekazaną we wspomnianej książce przybliży i rozświetli do końca wszystkim początkującym osobom te zagadnienia. Sądzę, że po zrozumieniu od podstaw zasad działania rejestrów przesuwnych, zrodzą się w waszych głowach setki jak nie tysiące ;) pomysłów na ich zastosowania. Wziąwszy oczywiście pod uwagę, że w dzisiejszych czasach mamy cały ogrom przeróżnych rejestrów tego typu, w tym także specjalizowanych np do obsługi diod LED ... a to już daje często ciekawe pole do popisu naszej wyobraźni ;) Zapraszam zatem na filmik a także do obejrzenia przykładowego schematu w eaglu oraz kodu programu omawianego w poradniku:

piątek, 20 września 2013

"Back in time" ...

Witam,

W związku z tym, że ostatnio przeszedłem wulkanizację opon mózgowych ;) dzięki zaleceniom naszego forumowego doktora "SunRivera" .... udało mi się znaleźć, przy pomocy oczywiście jednego z szanownych czytelników .... informację z przeszłości, z września 1988 roku. O matko! jak teraz widzę tę datę to wydaje mi się to tak odległe w czasie, prawie jak bitwa pod Grunwaldem ;) .... (no może troszkę przesadziłem bo ta bitwa to 1410r no ale ...) W każdym bądź razie, w owym czasie jako młokos zacząłem się interesować dosyć mocno programowaniem również w asemblerze procesorów Z80 oraz 8051. Akurat z tymi Z80 było mi o tyle po drodze, że siedziały sobie one w komputerkach ZX Spectrum. Wprawdzie początki to był Basic, ale szybko okazało się, że to garnitur troszkę za ciasny dla mnie i stąd próba wejścia w matrix czyli w asemblera okazała się bardzo pasjonującą przygodą. Niektóre z tych programów, czasem bardzo krótkich aczkolwiek przydatnych udało mi się opublikować na łamach ówczesnych pierwszych czasopism poruszających taką tematykę. Wprawdzie, przed wulkanizacją opon mózgowych, byłem święcie przekonany, że moje drobne publikacje ukazały się w czasopiśmie Bajtek, to jednak teraz okazało się, że na pewno było to czasopismo KOMPUTER. Dzięki uprzejmości jednego z czytelników, dostałem skany i przyznam, że aż troszkę mi się łezka w oku zakręciła jak zobaczyłem swój mini  "Back in time" ;) .... dobrze, że nie nastąpiło zakrzywienie czasoprzestrzeni - bo pewnie bym zniknął. Dobrze już nie marudzę, poniżej skany:

środa, 18 września 2013

7-segment display - generator - MkAvrCalculator

Witam,

To już kolejne narzędzie dodane do programu MkAvrCalculator. Przy okazji jakie wygodne. Wprawdzie w książce "Mikrokontrolery AVR Język C - podstawy programowania" opisuję metodę generowania sobie znaków w kodzie w języku C, to jednak niesie to za sobą i tak sporo pracy, klepania w klawiaturę itp itd. A po co się męczyć? pomyślałem sobie ;) .... i traaach ! ... przygotowałem małe narzędzie. Od teraz już mi się nie chce w kodzie źródłowym majstrować gdy mam coś wyświetlać na takich 7-segmentowych wyświetlaczach ;) . Odpalam MkAvrCalculator, wybieram z palety odpowiednie narzędzie i w zasadzie większość roboty ono samo za mnie robi. Program pozwala na definicję znaków przy założeniu, że cały port mikrokontrolera przeznaczamy na katody bądź anody wyświetlacza. Ewentualnie można pominąć kropkę jeśli ktoś nie używa. Co ciekawe, możemy sobie dowolnie podłączać piny w ramach portu, możemy też wybierać sobie aktywny stan czy to ma być 1 czy 0 w zależności od sprzętu użytego do sterowania wyświetlaczem. Narzędzie generuje nam od razu gotową tablicę jako kod źródłowy dla języka AVR GCC, ale nie stoi nic na przeszkodzie aby przerobić sobie wygenerowane kody pod dowolny język nawet Bascom ;)


sobota, 14 września 2013

BTM-222 tester w MkAvrCalculator

Witam,

To już kolejne, wprawdzie niewielkie ale użyteczne narzędzie jakie pojawiło się w programie MkAvrCalculator ;) Występuje w zakładce "Narzędzia" pod nazwą "ATB-BTM-222 test & settings". Po uruchomieniu okna ujrzymy dwa bardzo uproszczone terminale. Jeden po lewej, który służy do połączenia z modułem od strony sprzętowej przez jego fizyczne nóżki RS232. Oczywiście z poziomu komputera użyć w tym celu musimy jakiejś przejściówki albo USB/RS232(TTL) albo jeśli korzystamy ze starego portu COM, to z przejściówki MAX232. Po prawej stronie jest natomiast terminal pozwalający łączyć się z modułem od strony Bluetooth. Dzięki temu, że mamy "All in One" (wszystko w jednym) procedura testowania czy też konfiguracji naszego modułu BTM staje się banalnie prosta. Wkrótce też ukaże się mini poradnik wideo odnośnie tego narzędzia oraz możliwości jakie ono daje w praktyce, wraz z przypomnieniem sobie niektórych komend kofiguracyjnych dla modułu. Tymczasem zapraszam do obejrzenia kilku zrzutów ekranu z okna narzędziowego:

środa, 11 września 2013

Dioda LED 3W - z bliska ;)

Witam, gdyby ktoś chciał podejrzeć z bliska jak wygląda mniej więcej struktura diody LED RGB 3W ... to bardzo proszę ;) Tutaj widać fotkę z takim wstępnym przybliżeniem:

Akurat ta dioda LED jest jeszcze dostępna normalnie w sklepie Atnel: www.sklep.atnel.pl . Natomiast poniżej zbliżamy oko wielkiego brata ;)

wtorek, 3 września 2013

WS2812 RGB LED

Witam,

Tym razem bardzo nietypowy post, przepraszam, że nic nie mogę powiedzieć więcej, nawet nie mogę powiedzieć czy będzie nagroda za rozwiązanie tej zagadki (ale może będzie)... wszystko wyjaśni się wkrótce, choć w bardzo nieokreślonym czasie (tego też nie podpowiem). Ale jeśli ktoś zechce to może próbować zgadywać ;) ... zapraszam do zabawy. Nadmienię, że oczekuję na końcu konkretnego symbolu tego (nie da się ukryć) elementu elektronicznego. Wszystko to dziwnie wygląda ale po prostu mam pewien plan ;) ... na końcu tej drogi okaże się o co tu chodzi. No chyba że zdarzy się, że nieoczekiwanie ktoś rozszyfruje mój tajemniczy plan i zgadnie co to jest dokładnie na zdjęciu. Poniżej pierwsza fotka, a na pewno pojawią się jeszcze kolejne:

(diody WS2812 można kupić tutaj: http://www.sklep.atnel.pl/pl/p/Dioda-RGB-WS2812/80)

sobota, 24 sierpnia 2013

Nowa instrukcja MkAvrCalculator

Witam,

Nadszedł taki czas, że za napisanie instrukcji z prawdziwego zdarzenia, do programu "MkAvrCalculator" zabrała się osoba nie związana z firmą Atnel. Jest to wersja jeszcze rozwojowa jak twierdzi autor instrukcji, Ejrene. Można powiedzieć, że powstała ona na drugim końcu Polski bo w Rzeszowie ;) Oczywiście instrukcja uzyskała akceptację firmy Atnel i z tego miejsca przy okazji dziękuję jej autorowi, za spory wkład pracy. Myślę, że będzie ona wspaniałym uzupełnieniem informacji na temat tego programu, jego instalacji, obsługi i funkcjonalności w stosunku do wszystkich informacji jakich ja udzielam w poradnikach wideo czy też na stronach firmowych. Mogę ją zatem śmiało polecić wszystkim początkującym w tym zakresie ale pewnie i osoby, które już w jakiejś mierze korzystają z tego programu od dłuższego czasu dostrzegą pewne nowości, które czasem umykają z uwagi na rutynę podczas korzystania z oprogramowania. Poniżej znajduje się link z którego można pobrać instrukcję stworzoną całkowicie poza firmą Atnel:

czwartek, 22 sierpnia 2013

ATB SHIELD IO - zapowiedź

Witam,

Chciałbym wam przedstawić króciutko najnowszy moduł jaki już niedługo ukaże się w sprzedaży w sklepie www.sklep.atnel.pl. Nazywa się ATB SHIELD IO. Czyli dodatkowe rozszerzenia w postaci nie tylko wyjść IO ale także wejść. Moduł powstał z okazji premiery drugiego i oficjalnego wydania drugiej części książki "Mikrokontrolery AVR Język C - podstawy programowania". Nazwa może wydawać się zapożyczona z rodziny Arduino, nie miałem jednak innego pomysłu na tego typu rozszerzenia zestawu ATB a tym bardziej, że i kolorystyka jest również niebieska ;) Szerszy opis modułu można znaleźć na stronie producenta www.atnel.pl. W dużym skrócie - podam kilka informacji. Przede wszystkim moduł jest naprawdę kompaktowy, niewielki gabarytowo jak na zdjęciu poniżej...

wtorek, 20 sierpnia 2013

Oficjalny spis treści - II wydania pierwszej niebieskiej książki

Witam,

tym razem króciutka informacja i po raz pierwszy przed-premierowo oficjalna publikacja spisu treści drugiego, poprawionego i uzupełnionego wydania książki "Mikrokontrolery AVR Język C - podstawy programowania" Jakość pliku jest tylko do podglądu ale wystarczająca aby zapoznać się dokładnie z samym spisem treści. Zapraszam niżej do pobrania pliku:

sobota, 10 sierpnia 2013

Zapowiedź - II oficjalne wydanie niebieskiej książki.

Witam,

Tym razem chciałbym zapowiedzieć, że na przełomie sierpnia i września 2013 r ukaże się oficjalne ale także poprawione i uzupełnione II-gie wydanie niebieskiej książki pt: "Mikrokontrolery AVR Język C - podstawy programowania" Wydanie to będzie sobie liczyło 519 stron. Najważniejsza nowość to jednak twarda oprawa. Książka szyta a nie klejona. Mam nadzieję, że to wpłynie korzystniej na trwałość publikacji podczas jej częstego użytkowania we własnym warsztacie elektronicznym. Tym razem za redakcję książki odpowiedzialny jest nowy zespół redakcyjny a także nowy zespół zajmujący się składem komputerowym książki. W efekcie uzyskamy od strony technicznej, drukarskiej, i redakcyjnej wysoki poziom, znany już wielu czytelnikom z drugiej części tej książki, czyli: "Język C Pasja programowania mikrokontrolerów 8-bitowych". Nadmienię także, że absolutnie wszystkie kody źródłowe na DVD zostały poprawione w taki sposób aby możliwe było ich kompilowanie w najnowszym Atmel Toolchain, którego sposób użycia w Eclipse opisywałem i omawiałem już niejednokrotnie na blogu oraz w poradnikach wideo na moim kanale www.youtube.com/mirekk36. Zarówno w książce jak i w kodach na DVD czytelnik znajdzie także nowości, które pojawiły się jako uzupełnienie do tego wydania. Dodatkowo na płycie DVD udało się zmieścić także cały cykl kursu projektowania obwodów drukowanych w programie Cadsoft Eagle. Będzie to swoisty dodatkowy bonus a cała zawartość DVD okaże się przydatna i praktyczna, warto do niej koniecznie zajrzeć. W kodach źródłowych ukaże się także nowa zaktualizowana biblioteka do LCD, która zapewni teraz także wsparcie do obsługi wyświetlaczy alfanumerycznych za pomocą dwóch przewodów/pinów z mikrokontrolera. Chodzi tu mianowicie o magistralę I2C. Reszty nie będę zdradzał w tym momencie, mając nadzieję, że będzie to dla was, szanowni czytelnicy miłym zaskoczeniem.

czwartek, 8 sierpnia 2013

ŁAMIGŁÓWKA w C ale pouczająca ;)

Witam,

Dawno już na blogu nie było żadnego konkursu. I tak nagle sobie siedzę ... myślę i wpadło mi coś do głowy. Uwaga! może być trudne więc na wszelki wypadek polecam założyć solidny kask do tej ŁAMI-GŁÓWKI ;) .... ale znając życie i was drodzy czytelnicy ... to i tak podejrzewam, że "chwila moment" i zagadka będzie rozłupana na kawałki. Nic się nie da przed wami ukryć ;) Nie mniej jednak spróbuję. Nadmienię, że sam się nagłowiłem wcześniej o co tu chodzi? jak to działa? co to w ogóle za składnia? Jednym słowem dla mnie także była to spora zagadka. Wypadałoby także zaproponować jakąś ciekawą nagrodę. Nie ma sprawy, proponuję wręcz małą pulę nagród w związku z tym, że może być ciężko. Dlatego dla osoby która spełni wszystkie warunki opisane niżej, proponuję co następuje: komplet książek wydawnictwa Atnel: "Mikrokontrolery AVR Język C Podstawy programowania" oraz "Język C Pasja programowania - mikrokontrolerów 8-bitowych". Ale to nie koniec, do tego pełen komplet programów: MkAvrCalculator, MkBootloader i "Pixel Factory wersja pełna do zastosowań komercyjnych". Pytania będą dwa....

niedziela, 28 lipca 2013

KONKURS LATO 2013 - START

Witam,

Niniejszym chciałbym wszystkich poinformować o tym, że właśnie rozpoczęła się najnowsza edycja konkursu LATO 2013 na www.forum.atnel.pl Ciekawe nagrody, dobra zabawa gwarantowane. Przy okazji można podciągnąć się w programowaniu mikroklocków ;) ZAPRASZAM wszystkich serdecznie!

piątek, 26 lipca 2013

USART Calculator - w MkAvrCalculator

Witam,

Dzisiaj króciutko chciałbym tylko zasygnalizować wam powstanie nowego i wydaje mi się pożytecznego narzędzia w programie MkAvrCalculator (najnowszy "build 53"). Jak widać na obrazku mamy możliwość na szybko przejrzenia i sprawdzenia procentu błędów dla wybranej prędkości taktowania przy zadanej częstotliwości taktowania procesora. Można obejrzeć bez zaglądania do PDF'a tabele z ostatniej strony rozdziału USART, sprawdzić sobie wartości do rejestrów UBRR. Co ważne program sygnalizuje na czerwono błędy przekraczające ok 2-3 % co może oznaczać czasem a szczególnie w komunikacji opartej o wewn. oscylator RC, potencjalnie większe kłopoty z transmisją poprawnych i błędnych ramek. Ale to nie wszystkie możliwości, można bowiem na dole pod tabelką podać dowolną pożądaną przez siebie i nawet nietypową prędkość baudrate, weźmy na przykład domyślnie tam wstawioną 1600 i także otrzymamy od razu pięknie wartości UBRR oraz procenty błędów jak dla....

poniedziałek, 22 lipca 2013

Tykające serwa czyli ServoClock

Witam,

Nie mogłem się oprzeć aby nie przedstawić wam kolejnego już ale jakże ciekawego pomysłu naszego kolegi z forum ariek44. Pomysł totalnie pozytywnie zakręcony. Jest to mianowicie zegarek, niby prosty zegarek, a tak na prawdę kolejne wcielenie sposobu na nietypowy zegarek. Ja przyznam, że do tej pory takiego nie dostrzegłem w internecie - może i słabo szukałem ale nie ważne - tu widać krok po kroku ogromny wkład pracy w obróbkę PLEXI, staranność wykonania, że nie wspomnę o niesamowitej prezentacji i dokumentacji zdjęciowej. Oglądając same zdjęcia można bez słów zobaczyć o co w tym chodzi. Jestem pełen podziwu za każdy element tego projektu począwszy od pomysłu po realizację aż do efektu końcowego. Zapraszam was koniecznie do obejrzenia.

czwartek, 18 lipca 2013

AVR do kontroli komputerów w SIECI

Witam,

Chciałbym przedstawić wam mój kolejny projekt, nad którym prace rozpocząłem wprawdzie już dosyć dawno temu, i szczerze powiedziawszy, do dzisiaj nie ukończyłem na tip-top, ale działa i to świetnie a wkrótce mam nadzieję go rewitalizować. Jako, że korzystam z oprogramowania Teamviewer do zdalnej kontroli komputerów w zarówno w swojej firmowej sieci jak i w sieciach klientów to pojawiła się ostatnio potrzeba, której nie oferuje żadne tego typu oprogramowanie. Chodzi o to aby np w nocy gdy nikogo już nie ma w firmie można było zdalnie przez internet po prostu włączyć wybrane komputery albo je powyłączać. O ile z wyłączaniem nie ma wielkiego problemu gdy jest aplikacja typu Teamviewer czy VNC to jednak nie zawsze jest taka sytuacja - za to można zainstalować mały własny programik, pracujący w tray'u czy jako usługa - który będzie umożliwiał zdalne wyłączenie komputera. 

środa, 17 lipca 2013

CRC - od PODSTAW - warto poczytać

Witam,

Tym razem zapraszam was do NIESAMOWITEGO poradnika na temat działania sum CRC od podstaw, który stworzył jeden z forumowiczów www.forum.atnel.pl, o nicku mg101. Ja przyznam, że jak zobaczyłem to oniemiałem w wrażenia. Kolega ten długo zapowiadał stworzenie tego poradnika. Myślałem już nawet, że zrezygnował albo że się nie udało. A jednak! ... A jednak się udało i warto było czekać. Mamy dwie obszerne części ale przepięknie wyczerpujące całe zagadnienie a co ważne, no w takiej formie nie uda wam się tego nigdzie przeczytać. Mam tu na myśli oczywiście niesamowicie przyjazną i przystępną formę. Czytanie tego to sama przyjemność. Zapraszam...

wtorek, 16 lipca 2013

Przetwornik ADC w AVR - część 05

Witam,

No to zapinamy pasy bezpieczeństwa i jedziemy dalej Panie i Panowie z przetwornikami ADC. Dzisiaj szef kuchni poleca dwa dania dnia: "Free Running Mode - Soute", oraz lekko grilowany zewnętrzny przetwornik 18-bitowy (czyli potwór rozmiarów pikusia) MCP3421 ;) ale za to bardzo smaczny ;) Będzie się działo. Niestety poradnik to godzina i 40 minut ... więc tylko dla widzów o mocnych nerwach. Ale myślę, że śmiało mogę polecić. To będzie już przedostatnia część. I mam nadzieję, że sporo nowych rzeczy się wyjaśni. Nie obędzie się bez drobniejszych gaf z mojej strony - boć to wszystko na żywca leci, a nawet jednej dużej gafy - no ale jakoś udało mi się z niej wybrnąć na koniec i mam nadzieję bez uszczerbku dla widza. Nie przedłużam już, jak zwykle zapraszam na materiał HD, na moim kanale www.youtube.com/mirekk36 

poniedziałek, 15 lipca 2013

PC pomiar temperatury DS18B20 - FT232R + Delphi

Witam, 

Uwaga! Kolejny projekt z serii ARCHEO X ;) Zacząłem ostatnio usilnie pracować nad podłączeniem dowolnej ilości czujników temperatury DS18x20 bezpośrednio do komputera PC pod Windowsem. Oczywiście sposobów jest sporo - jako pierwszy rzucił się w oczy najprostszy schemacik: 



Jest OK - no ale kto dzisiaj posiada zwykły port COM? Ja nie posiadam, więc oczywiście potrzebowałem w jakiś sposób podłączyć się do swojej ulubionej przejścióweczki na znanym układzie FTDI o symbolu FT232R. 

Jednak do niej nie można się tak podłączyć jak na schemacie powyżej, trzeba zrobić sobie mały buforek na 2 tranzystorkach - w sumie proste jak drut

niedziela, 14 lipca 2013

Nietypowy zegarek/budzik z pilotem (z archeo X)

Witam, 

Chciałbym tym razem przedstawić wam mój bardzo stary projekt, ale do dzisiaj stanowi on inspirację dla wielu osób ;) Otóż kiedyś mojemu synowi zepsuł się taki mały chiński zegarek budzik, a jak wiadomo chińszczyzna jak się zepsuje, pęknie itp - to ciężko naprawić, więc postanowiłem zrobić mu pod choinkę nieco inny i nietypowy zegarek - taki troszkę z bajerami i wodotryskami. Jako mózgu w zegarku użyłem ATmega8, natomiast serce to popularny PCF8583, który jest podtrzymywany bateryjnie w czasie śpiączki bez napięcia... Zegarek pełni w zasadzie tylko rolę zegarka i budzika z możliwością prowadzenia nastawień z własnej klawiaturki, z pilota podczerwieni SONY, JVC lub RC5 a także można go połączyć przez RS232 z PCtem. To połączenie poza tym, że można z programu na PC poustawiać zegarek i alarmy, to co najważniejsze można synchronizować sobie czas z wzorcem czasu w necie .... tak więc nie ma problemów z jego dokładnością (szczególnie jeśli chodzi o dokładne dobieranie kondensatorka przy PCFie). 

sobota, 13 lipca 2013

Ethernet Gate - Bluetooth, przekaźniki itp

Witam, 

Postanowiłem zbudować prosty modulik działający w oparciu o Ethernet i Bluetooth. Na pokładzie posiada dwa przekaźniki. Do gniazdka ISP można podłączać sobie także czujniki temperatury 1wire np DS18B20, DS1820 czy DS18S20 (dowolny). Tego typu moduł używam sobie na co dzień do wielu zastosowań, od zdalnego włączania/wyłączania komputera, do pomiarów temperatury czy też do sterowania w dowolną stronę przy pomocy Bluetooth'a. Mogę np z domciu przez internet dostać się do firmy do takiego modułu i za pomocą własnej aplikacyjki na PC wysterować jakieś urządzenia, które posiadają akurat interfejst Bluetooth. Przykład poniżej - urządzonko do reklamy i informacji o tym co dzieje się u mojej małżonki w firmie, np że "dzisiaj będzie czynne od późniejszej godziny" Po prostu - samą reklamę można ustawiać przez BT ale wkurzało mnie, że jeśli byłem jeszcze w domu a zmieniały się plany to nie było jak wyświetlić nowej informacji dla klienta - teraz jest to możliwe. 

piątek, 12 lipca 2013

uC/PC Time Sync - Bluetooth/RS232 - synchronizuj swój czas

Witam, 

Postanowiłem zaprezentować jeszcze jedno narzędzie, które często wykorzystuję w swoich projektach z mikrokontrolerami jeśli potrzebuję synchronizować czas w uC tak żeby zegarek "chodził" ;) bardzo bardzo dokładnie. Zamiast bawić się w SUPER KWARC'e, zamiast bawić się w super dostrajanie czy dobieranie mega dokładnych układów zegarkowych RTC, wystarczy, że zastosujemy prostą synchronizację z komputera przez: 

1. RS232 - zwykły kabel 
2. RS232 - przejściówka USB/RS232 
3. RS232 - Bluetooth - np za pomocą BTM-222 / BTM-112 

Program sam ładnie wykrywa bez najmniejszego problemu wszystkie dostępne w systemie porty COM, w tym także te związane z przejściówkami USB/Bluetooth. W tym celu napisałem mały zgrabniutki programik na PC, który może się uruchamiać razem z Windows i chować się do TRAY'a systemowego. Nadmienię oczywiście, że projekt powstał już dawno temu ale często go wykorzystuję w praktyce a może i wam się przyda ? Ten programik to w pełni darmowe narzędzie zarówno do celów komercyjnych jak i niekomercyjnych ;) 

czwartek, 11 lipca 2013

STRUKTURY w C - wyjaśnijmy sobie dokładnie podstawy

Witam,

Jest sobie środek nocy, 1:48 a mnie naszło na napisanie mini poradnika na temat struktur w języku C, jak zwykle w aspekcie programowania mikrokontrolerów. Co było natchnieniem do tego poradnika? Szczególnie jeden z ostatnich maili jaki otrzymałem w tej sprawie, a tak na prawdę wyrażał on w skrócie wiele innych podobnych pytań docierających do mnie drogą mailową, przez Skype czy forum. Te wszystkie pytania wiążą się właśnie z niezrozumieniem podstaw definiowania i deklarowania struktur, dlatego mam nadzieję, że po tym co napiszę, opiszę - sporo się wyjaśni.

środa, 10 lipca 2013

LCD SCROLLowanie - pisanie kodu źródłowego na żywo ;)

Witam,

Tym razem chciałbym wam przedstawić takie nieco inne podejście do zagadnienia związanego ze scrolowanie, czyli przesuwaniem treści na popularnych wyświetlaczach alfanumerycznych LCD. Wiem, że temat warstw może być za trudny dla całkowicie początkującej osoby, dlatego myślę, że taka wprawka będzie miała jakiś sens a tym bardziej, że na żywo piszę przed kamerą kod do tego rozwiązania. Skoro na żywo to oznacza, że popełniam pomyłki, i czasem muszę mocno się nagłówkować jak rozwiązywać bieżące problemy, jakie się ujawniają w trakcie programowania. Myślę, że to będzie dobra lekcja dla WSZYSTKICH POCZĄTKUJĄCYCH, żeby zobaczyli że pisanie nawet prostego kodu na mikrokontroler to nie to samo co pisanie kodu na PC. Tu jeszcze mamy elektronikę, która musi działać poprawnie a tymczasem, płata ona nam figle, albo i nasze roztargnienie czy zmęczenie, powoduje, że pomijamy pewne kwestie sprzętowe i gdy coś nie wychodzi w programie - to szukamy błędu w kodzie, gdy tymczasem często wina leży po stronie sprzętu ... eeeeh zakręcona jest praca programisty, ale za to ile daje radości, gdy już coś wyjdzie ;) ... Nie doświadczacie tego samego ? ... ale zapraszam ...

sobota, 6 lipca 2013

ATtiny10 TPI USBASP - MkAvrCalculator update

Witam,

Tym razem, przy okazji kolejnej aktualizacji programu 
...MkAvrCalculator "build 49"...
, chciałbym się bliżej zająć kwestią możliwości programowania najmniejszych mikrokontrolerów AVR z serii ATtiny, jak ATtiny4/5/9/10. Troszkę to trwało zanim znalazłem na to czas i zanim wpadł mi w łapki ten maluszek ATtiny10. Okazało się jednak, że trzeba było wprowadzić kilka poprawek i to aż do trzech narzędzi aby móc korzystać nadal z mojego ulubionego i szybkiego programatora USBASP. Trzeba było zatem zmodyfikować wsad do programatora, trzeba było wprowadzić poprawki do AVRDUDE a na końcu przygotować stosowne zmiany w programie MkAvrCalculator. Niektórzy się dziwią dlaczego z takim uporem wciąż korzystam z USBASP zamiast, jak to doradzają kupić sobie raz a dobrze, porządny programator Atmela np AVR ISP MK II, albo AVR Dragon. Powód jest dosyć prosty choć tak trudno go wielu osobom zrozumieć ;) ... Po pierwsze USBASP jest tańszy, po drugie i chyba najważniejsze przyzwyczaiłem się do niego a co za tym idzie znam go od podszewki, dzięki czemu udaje się go z powodzeniem wykorzystywać do najróżniejszych mikrokontrolerów AVR. Przy czym należy zaznaczyć, że WCALE nie ustępuje prędkością programowania tym oryginalnym i drogim programatorm Atmela, wbrew pozorom wielu malkontentom, którzy tu i ówdzie tłumaczą początkującym aby jak najszybciej zapomnieli o USBASP w zamian za to kupili AVR Dragona bo to "najlepsze". Tacy ludzie wykorzystują też często argument na niekorzyść USBASP, jakoby nie dało rady go wykorzystywać bezpośrednio np w Atmel Studio, i znowu okazuje się, że niewiele wiedzą bo można. Tylko proszę mi zaraz nie próbować zarzucać , że ja chcę przez to powiedzieć, że USBASP jest lepszy od tych programatorów a tamte gorsze, bo to jakieś nieporozumienie! Zwykle malkontenci nie czytając do końca tego co piszę, wysnuwają takie wnioski z palca ;)  ale po kolei ...

niedziela, 30 czerwca 2013

Przetwornik ADC w AVR - część 04

Witam,

Nadeszła kolejna część poradnika. Teraz będziemy się bawili w terminatora, którego zadaniem będzie bezwzględna walka z tzw. skaczącymi napięciami i wartościami ADC ;) . Zaprzęgniemy do tego celu różne metody. O niektórych już tak na prawdę rozmawialiśmy w poprzednich częściach poradnika, czyli np o prawidłowej filtracji zasilania bo złe podejście do tematu w tym zakresie, to właśnie podstawowa pożywka dla tych sprężynujących wartości, że tak powiem. Ale spokojnie są jeszcze inne metody, które należy stosować wraz z filtracją. Powalczymy więc ze średnimi arytmetycznymi ale także wytoczymy grubsze działa (przynajmniej z nazwy) ;) ... czyli np zastosujemy tzw cyfrowy filtr dolnoprzepustowy (ale nie obawiajcie) się to nie jest trudne - zobaczycie. A także inne metody. Mam nadzieję, że takie praktyczne podejście być może wam się kiedyś przyda w waszych projektach i rozważaniach. Należy mieć jednak na uwadze, że ja tu mówię o podstawach, które trzeba koniecznie zrozumieć raz a dobrze, dopiero wtedy można myśleć o bardziej zaawansowanych projektach, z którymi już dalej sami dacie sobie radę. Jeśli czegoś nie poruszę w tym cyklu poradników to mam nadzieję, że dalej już sami doczytacie i nie będzie to sprawiało już takich kłopotów jak na samym początku, gdzie nie wiadomo było w co w ogóle ręce włożyć ;)

sobota, 29 czerwca 2013

AVR GCC - SINUS TABLE - TRICK

Witam,

Dzisiaj chciałbym wam przedstawić odkrycie jakiego dokonał nasz niesamowity kolega z forum (www.forum.atnel.pl) o nicku Krauser. Myślę, że warto dołączyć taką informację tu na bloga bo rzeczywiście TRICK jest niesamowity a można go oczywiście stosować tak na prawdę nie tylko w AVR GCC ale praktycznie chyba w każdym kompilatorze języka C dla różnych procków. Więc myślę, że tym bardziej przydatne jest to odkrycie no i fakt podzielenia się z nami tym trickiem. Kolega Krauser napisał nawet przykładowy kod źródłowy, który służy lepszemu zrozumieniu i zaskoczeniu o co tu chodzi. Polecam więc ten wątek na naszym forum. Myślę że przydatny może się okazać bardzo często gdy będziemy chcieli skorzystać ze stablicowanych wartości sinusa ;) .... a ciężko bawić się w jakieś przygotowywanie takich tablic a to w Excelu a to w innym zewnętrznym programie i wstawianie ich do naszego kodu. Tu wszystko czyli całą tzw czarną robotę wykona za nas preprocesor, któremu niejako niechcący podrzuci się hahaha jakby kukułcze jajko ;) a on je wysiedzi i wykluje się z tego ładna tabliczka wartości sinusa w pamięci np FLASH. No Super sprawa.

czwartek, 27 czerwca 2013

Przetwornik ADC w AVR - część 03

Witam,

Tym razem króciutko, zapraszam na kolejną czyli trzecią już część poradnika do ADC. Zgodnie z zapowiedzią tym razem zajmiemy się już kodami źródłowymi, nie mniej jednak jak to zwykle bywa zanim powiem o ADC poruszymy temat np najprostszej komunikacji (i to tylko wysyłanie) przez RS232. Związane jest to z tym, że chciałem uprościć sobie konstrukcję układu testowego na płytce stykowej i mam nadzieję, że przy tej okazji przekonam ciebie także do tego aby coraz częściej korzystać z terminala przy wszelkich pracach z mikrokontrolerami. Natomiast poprzez to, że zastosuję prostą bibliotekę do terminala jako LCD, którą przedstawiłem na moim blogu, chciałbym zwrócić uwagę - że może być wam jednak ciężko użyć do takiego ćwiczenia innych terminali niż PUTTY, którego ja z lubością używam. Wiem, chociaż nie rozumiem, dlaczego wielu z was zamiast z putty korzysta z innych prostszych terminali, to okaże się właśnie że ta większość innych nie potrafi obsługiwać standardu VT100 :( .... a pokażę wam przy okazji najbliższych poradników że korzystanie z tych właściwości VT100 na prawdę dużo daje i postaram się was tym "zarazić" ;) A przecież zobaczycie że mając taką gotową biblioteczkę to korzystanie z tego staje się banalnie proste ;)

środa, 19 czerwca 2013

Eclipse WinAVR i Atmel - DWA w JEDNYM

Witam,

Tym razem chciałbym OSTATECZNIE podkreślam ostatecznie rozprawić się z problemami jakie jeszcze macie z instalacją Eclipsa i to w połączeniu albo z WinAVR albo z Atmel Toolchainem. W tym poradniku pokażę Wam, w jaki sposób można prosto żonglować jednym i drugim, jak je podmieniać, na co zwracać uwagę i dlaczego to ZAWSZE musi działać dobrze ;) ... do nakręcenia tego szybkiego ostatecznego poradnika skłoniła mnie stosunkowo duża ilość maili i pytań od początkujących, którzy najczęściej po obejrzeniu poprzedniego poradnika: http://mirekk36.blogspot.com/2012/11/instalka-eclipse-atmel-toolchain.html . A spowodowane one były błędem pytających polegającym na tym iż masowo wielu z nich pomijało dziwnym trafem NAJWAŻNIEJSZY punkt tego poradnika, dotyczący wgrania pliku tzw patcha dla PluginaAVR do Eclipse. Myślę że od teraz będzie koniec kłopotów i każdy z powodzeniem będzie używał dowolnej wersji Eclipsa z dowolnym toolchainem. Powodzenia. Zaprasza do oglądania materiału video...

niedziela, 16 czerwca 2013

Smart RUN - nowa funkcjonalność w MkAvrCalculator

Witam,

Jak to mówią, nowy dzień - nowa funkcja ;) ... i tym sposobem, zgodnie z oczekiwaniami wielu użytkowników tego programu powstała nowa funkcjonalność pod tajemnicą nazwą "Smart RUN". O co chodzi? Otóż pod prawym klawiszem myszy w obszarze całego programu mamy dostępne małe Menu, dzięki któremu można przyporządkować ścieżki i uruchamiać kilka różnych programów z jednego miejsca. Zaliczają się do nich pozostałe aplikacje firmy Atnel jak: MkBootloader, ATB Manager, Pixel Factory ale także można uruchamiać dwie różne własne wersje Eclipsa np z toolchainem WinAVR albo Atmel. To nie wszystko - jest coś dla ludzi posługujących się Bascomem a także możliwość definiowania dwóch własnych programów. Co ciekawe każdy z nich można uruchomić nawet bez klikania mychą tylko za pomocą klawiszy funkcyjnych F1 do F8 - spora wygoda ;) Po pierwszym uruchomieniu gdy nie ma przypisanych ścieżek, program nic nie uruchomi tylko właśnie od razu zapyta o ścieżkę. Gdy już wszystkie ustawimy to jak je ew zmienić ? oto jest pytanie :) ... ale i poniżej odpowiedź 

piątek, 14 czerwca 2013

Przetwornik ADC w AVR - część 02

Witam,

Nadszedł w końcu czas na część drugą. Uprzedzam, że tu jeszcze nie przejdziemy do pisania kodu źródłowego ponieważ jeszcze parę rzeczy musimy sobie wyjaśnić. Od razu uprzedzam że to poradnik dla początkujących i staram się wiele spraw tłumaczyć w dużym uproszczeniu. Dlatego osoby, które znają ADC mogą sobie darować ten odcinek ;) 
zapraszam zatem do obejrzenia krótkiego materiału wideo, czas to niewiele ponad pół godziny. W przypadku pytań i wątpliwości proszę oczywiście o zadawanie pytań. Gdzieś tam "po drodze" popełniłem mały błąd, ale w trakcie montażu wstawiłem napis wyjaśniający bo nie miałbym już siły kręcić tego od nowa ;)

czwartek, 13 czerwca 2013

LCD (hd44780) Font Generator w MkAvrCalculatorze

Witam,

Tym razem chciałbym wam zaprezentować kolejne już i nowe narzędzie w jakie został uzbrojony MkAvrCalculator. Jest to może zbyt szumnie zwany LCD Font Generator dla typowych wyświetlaczy alfanumerycznych LCD opartych o sterownik HD44780, to jednak stanowi bardzo przyjemne narzędzie do projektowania własnych dowolnych znaków ale nie tylko .... O co chodzi ? Zastosowałem bardzo nietypowy jak dla takich programików (bo przecież jest ich wiele w necie) interfejs użytkownika, ale za to niesamowicie intuicyjny i pozwalający na jednoczesne projektowanie aż do 8 znaków ! A skoro tak - to oznacza, że teraz jeśli ktoś chce zaprojektować sobie prostą semi-grafikę (czyli jakiś obrazek widoczny np na kilku sąsiadujących ze sobą znakach - to nie ma problemu ;) ... Dodatkowo na pierwszy rzut oka wydaje się, że brak w interfejsie użytkownika podglądu (w pomniejszeniu) projektowanych znaków - a to przecież często się przydaje ...

poniedziałek, 10 czerwca 2013

AVR Timer Calculator - NEW TOOL

Witam,

To już kolejny ważny update programu MkAvrCalculator "build 42", tym razem zdobył on kolejne istotne narzędzie w postaci kalkulatora timerów w mikrokontrolerach AVR. Wystarczy tylko wprowadzić wejściowe dane takie jak częstotliwość taktowania F_CPU oraz częstotliwość (interwał czasowy) z jaką ma się timer przepełniać. Co ważne kalkulator oblicza zarówno wartość rejestrów OCRx dla trybu CTC ale także wartość jaką trzeba przeładować timer w trybie NORMAL, gdy timer nie posiada trybu CTC (np w ATmega8 - Timer0). Program bierze pod uwagę obliczenia zarówno dla timerów 8-bitowych jak i 16-bitowych. Jako wynik obliczeń widzimy tabelkę w której po lewej widać listę preskalerów. (Uwaga! nie każdy timer posiada wszystkie pozycje preskalera - więc tu trzeba zawsze zajrzeć do noty PDF procka i sprawdzić jakie preskalery z tej listy posiada interesujący nas Timer a następnie wybrać ten który jest i odpowiada nam częstotliwość). Na koniec (pod tabelką) mamy obliczoną częstotliwość rzeczywistą jaka wyjdzie dla każdego preskalera i wartości OCRx lub przeładowania, a także (jeszcze niżej) obliczony procent błędu (odchyłka od częstotliwości zadanej). 

niedziela, 9 czerwca 2013

Przetwornik ADC w AVR dla początkujących

Witam,

Tym razem chciałbym rozpocząć taki mały cykl poradników w których omówię kilka ważnych aspektów korzystania z przetworników analogowo-cyfrowych ADC, wbudowanych w mikrokontrolery AVR. Przy tej okazji poruszę także poboczne kwestie z tym związane jak np rezystorowe dzielniki napięcia ale także sposoby na ustabilizowanie pomiarów, liczenie średniej kilkoma metodami. Omówię co to są napięcia odniesienia i dlaczego trzeba z nich korzystać. Pokażę także ciekawe zastosowanie na przykładzie klawiatury analogowej. Mam nadzieję, że przykłady pokazywane w kodach źródłowych wraz z całym wykładem będą stanowiły przydatną dawkę informacji dla wielu oglądających, dlatego zapraszam.

sobota, 8 czerwca 2013

Gdy nie działa USBASP pod ECLIPSEM

Witam,

Tym razem króciutki tylko kilkunastominutowy poradnik VIDEO odnośnie problemów jakie początkujący miewają gdy po raz pierwszy zabierają się za ECLIPSE i jednocześnie korzystają z programatora USBASP. Bardzo często rodzi się wśród nich pytanie typu: "dlaczego nie działa mi USBASP pod Eclipsem? pojawia się błąd rc=-1, natomiast w programie MkAvrCalculator procesor jest wykrywany". Dokładnie na to pytanie znajdziecie odpowiedź a może jeszcze na kilka innych ;) Zapraszam więc do obejrzenia materiału: