Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 24 lis 2024, o 10:01


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 26 sie 2014, o 21:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 lut 2014
Posty: 96
Lokalizacja: Łódź
Pomógł: 6

Witam wszystkich :)

Jako że w tym dziale się relatywnie mało dzieje, a ja właśnie jestem na etapie nauki assemblera dla avrów, to trochę ożywię forum i pochwalę się nowym programikiem napisanym w asm.

Program multipleksuje czteropozycyjny siedmiosegmentowy wyświetlacz, przesuwając na nim datę i godzinę pobieraną przez sprzętowy moduł I2C. Zestaw: ATB 1.04, procek: atmega32, kwarc: 11059200, kalendarium: PCF8583.

Wykorzystane są trzy przerwania:
INT0 z PCF-a, w którym atmega pobiera datę, "obrabia" dane (przekształca je na graficzne reprezentacje cyfr) i umieszcza w wyświetlanym buforze,
OC1A, które przesuwa wyświetlany bufor,
OC2, które multipleksuje wyświetlacz.


PCF-a już wcześniej zaprogramowałem na daną datę i godzinę. Póki co mój programik tylko odczytuje dane z tego scalaka i jeszcze nic nie zapisuje, ale dzięki temu, że w całości odbywa się w przerwaniach, a główna pętla programu jest pusta, można ją swobodnie zaprzęgnąć do np. ustawiania daty i godziny :)


Jest to mój pierwszy bardziej sensowny program w asm, więc proszę o sugestie i uwagi bardziej zaawansowanych (bo nie znam się jeszcze m.in. na dobrej organizacji kodu asemblerowego, domyślam się też, że pewnie powinienem ujednolicić własne definicje :P). A do tych, którzy są w tym temacie krok za mną - jak macie jakieś pytania, to postaram się odpowiedzieć w miarę możliwości :D

Poniżej kod i filmik, jak to śmiga.

Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


------------------------ [ Dodano po: 1 minucie ]

Filmik będzie za chwil kilka :)

------------------------ [ Dodano po: 33 minutach ]

Oto i on:

https://www.youtube.com/watch?v=B32EgeLAvaY



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 sie 2014, o 23:56 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27310
Lokalizacja: Szczecin
Pomógł: 1041

Z łezką w oku patrzę i wspominam swoje boje w czystym ASM na AVR ;) ...

ładnie ładnie ... Myślę że dla celów czysto naukowych i lepszego poznania AVRów warto porobić sobie takie ćwiczenia ....

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 sie 2014, o 03:00 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Witam,

Co prawda w C taki zegarek to momencik, natomiast ASM to już coś ;) Podziwiam ludzi którzy piszą w tym języku, mi nigdy nie wystarczyło samozaparcia, aby nawet liznąć ten język.

Tak więc dobra robota ;), choć ja bym mniejszy scroll dał bo nie nadążam za nim :D

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 sie 2014, o 12:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 lut 2014
Posty: 96
Lokalizacja: Łódź
Pomógł: 6

Dzięki za dobre słowo :D

Mogę wśród definicji umieścić makro przyjmujące przyjazną wartość prędkości przesuwu i umieszczać jego wynik w OCR1A :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO