Witam! programuje w bascomie już troche czasu i mam już jakieś pojęcie o tym programie, ale od czterech dni próbuje rozgryźć kod i narazie żadnych postępów.
Kod wygląda tak:
Pewnie wiecie o co chodzi w programie ale opisze działanie i problem.
Otóż program zczytuje znaki z wewnętrznej pamięci eeprom atmegi8 i wyświetla go znak po znkau na lcd, a gdy tekst wyswietlany osiągnie 16 znaków (LCD 16*2), wtedy wszystkie znaki są przesuwane o jedno miejsce w lewo i jest wyświetlany jeden następny znak i znowu tekst jest przesuwany w lewno i tak do wyczerpania tesktu.
I nie rozumiem jak to jest, że:
-zadeklarowana jest zmienna zn_w_lini i skąd bascom wie, że chodzi o to aby wyswietlil 16 znakow ?
-jest zadeklarowany "adres" i skąd bascom bierze ten adres ?
-adres = adres +128 ??
-potem mamy "readeeprom znak, adres" skąd on wie, że gdy ma czytać znak czyta jedną literke z eepromu ?
-potem jest incr adres (wiem ze inkrtementacja)? najpierw wyjaśnijmy skąd wziął sie adres.
-i adres = adres - 15 czyli przesuwa wszystkie znaki w lewo ?
-ostatnie juz
jak zrobic żeby tekst leciał w drugą strone czyli nie w lewo a w prawo ?
wiem, że moge go wrzucić do procka i działa...ale chce poznać zasade działania tego programu.
Pozdrawiam.
Kod wygląda tak:
Pewnie wiecie o co chodzi w programie ale opisze działanie i problem.
Otóż program zczytuje znaki z wewnętrznej pamięci eeprom atmegi8 i wyświetla go znak po znkau na lcd, a gdy tekst wyswietlany osiągnie 16 znaków (LCD 16*2), wtedy wszystkie znaki są przesuwane o jedno miejsce w lewo i jest wyświetlany jeden następny znak i znowu tekst jest przesuwany w lewno i tak do wyczerpania tesktu.
I nie rozumiem jak to jest, że:
-zadeklarowana jest zmienna zn_w_lini i skąd bascom wie, że chodzi o to aby wyswietlil 16 znakow ?
-jest zadeklarowany "adres" i skąd bascom bierze ten adres ?
-adres = adres +128 ??
-potem mamy "readeeprom znak, adres" skąd on wie, że gdy ma czytać znak czyta jedną literke z eepromu ?
-potem jest incr adres (wiem ze inkrtementacja)? najpierw wyjaśnijmy skąd wziął sie adres.
-i adres = adres - 15 czyli przesuwa wszystkie znaki w lewo ?
-ostatnie juz
wiem, że moge go wrzucić do procka i działa...ale chce poznać zasade działania tego programu.
Pozdrawiam.