logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak napisać program w assemblerze do przesuwania napisu na LCD 2x16?

Paszczak2003 22 Lis 2006 11:28 2683 5
REKLAMA
  • #1 3250476
    Paszczak2003
    Poziom 17  
    Posty: 291
    Pomógł: 10
    Ocena: 8
    Witam nie wiem jak napisać program w assemblerze (koniecznie w tym jezyku bo to do szkoły). Treść zadania brzmi:
    na wyswietlaczu LCD wyswietlany jest napis napis jest dluzszy niz dlugosc zadanego wyswietlacza napis przesowa sie w lewo o jedno pole przy czym z lewej strony zniikaja pierwsze a z prawej pojawiaja sie nowe okres opoznienia przesoniecia dobrac aby wrazenie plynnosci bylo jak najlepsze napis wywietlany jest w trybie ciaglym,,

    W szkole mamy zestawy z rodziny 51' dokladniej DSM-51 MicroMade..
    wielkość wyświetlacza LCD to 2x16 znaków.
    czas przesuwania o 1 znak ustalilismy na 100ms (LCALL DEALY_100MS)
    POMOŻECIE ??
  • REKLAMA
  • #2 3252958
    kmg
    Poziom 13  
    Posty: 26
    Pomógł: 4
    Ocena: 1
    W załączniku - przykład z dokumentacji DSM'a (Gałka). Wystarczy wyslac na wyswietlacz tekst, a potem wysylac zadanie przewiniecia w pętli.
    Załączniki:
    • Jak napisać program w assemblerze do przesuwania napisu na LCD 2x16? strona2.jpg (34.03 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Jak napisać program w assemblerze do przesuwania napisu na LCD 2x16? strona1.jpg (86.72 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #3 3253591
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    powiem tak (wybaczcie, że nie na temat) :
    DSM51 mnie wychował w szkole średniej z przymusu (i tutaj pozdrowienia dla prof.Mietełki z Zespołu Szkół Elektrycznych w Opolu) a teraz prowadzę własną firmę a programowanie procków to moje główne źródło dochodów.
    Nie chcę, żeby ktoś pomyślał, że sę chwalę - chcę tylko wszystkich zachęcić do nauki programowania - tym bardziej DSM'51 - super edu-zabawka do nauki assemblera.

    POZDRAWIAM wszystkich uczniów ZSE Opole.
    ps.ach te sentymenty ;-)
  • REKLAMA
  • #4 3275042
    Paszczak2003
    Poziom 17  
    Posty: 291
    Pomógł: 10
    Ocena: 8
    Dziękuje za pomoc.. W klasie zrobiliśmy ten program troche inaczej ale ten działa lepiej.. w naszym trzeba było robić pętle, wpisywać ile znaków ma tekst..
    A mam jeszcze jedno pytanie.
    chce sobie zrobić licznik BPM (Beats per minuts) Licznik mierzący ilość zliczanych impulsów w ciągu minuty tylko ze wynik ma być wyświetlany odrazu tzn. myslałem nad tym i wymysliłem ze zrobie pętle czasową (1ms) włanczaną jednym przyciskiem i wyłanczaną tym samym czas między jednym a drugim uderzeniem będzie wpisywany do jakiegoś rejestru (bede inkremendował coś i jesli będzie np czas miedzy włączeniem a wył będzie 500ms to pod jakimis adresami będzie wartość 500 potem trzeba 60000 (minuta w ms) podzielić przez te wartość i wynik wyświetlić na 7seg wysw. 60000/500=120..
    tylko nie wiem zabardzo jak to zrobić mozecie mi podpowiedzieć jak by to musiało działać?? licznik chce sobie włożyć do mixera.. a raczej dwa liczniki (1 kanał i 2 kanał)
  • REKLAMA
  • #5 3276879
    kmg
    Poziom 13  
    Posty: 26
    Pomógł: 4
    Ocena: 1
    Nie do końca rozumiem, co chcesz osiągnąć.

    Z tego co przeczytałem, to uważam, że dużo lepiej (i chyba prościej) będzie skorzystać z przerwań.
  • #6 3278897
    Paszczak2003
    Poziom 17  
    Posty: 291
    Pomógł: 10
    Ocena: 8
    chciałem swój mixer wyposażyć w licznik BPM który liczy tempo utworu (uderzenia w ciagu minuty) ale licznik musi podać przybliżoną wartość juz po kilku uderzeniach dlatego jesli np czas przerwy między jednym a drugim uderzeniem będzie wynosił 500ms to trzeba sprawdzić ile takich okresów zmieści sie w minucie czyli 60000/500 = 120 BPM.. nie jestem orłem jeśli chodzi o programowanie ale spytam sie mojego nauczyciela jak by sie za tego zabrać.. jak bym coś wiedział to napisze
    Pozdrawiam
REKLAMA