[ powersz @ 31.10.2014. 15:26 ] @
Pozdrav. U programu mikroC sam napisao program koji treba da stampa nesto na lcd16x2.
Imam jedan problem, mikrokontroler 89s51 ima 128 bajta ram memorije i kada napravim ovako nesto dobijem gresku obzirom da svaki tekst koji upisem za prikaz na LCD zauzme deo memorije. Moguce je odstampati svega nekoliko reci a zadatak mi je takav da program mora da stampa desetak recenica. Da li neko ima ideju kako ovo resiti?

Unapred hvala na pomoci.

Code:

Lcd_Init();
Lcd_Cmd(_LCD_CLEAR);
Lcd_Cmd(_LCD_CURSOR_OFF);

Lcd_Out(1, 1, "Neki tekst");
Lcd_Out(2, 1, "Neki tekst");
delay_ms(2000);


Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1, 1, "Neki drugi tekst");
Lcd_Out(2, 1, "Neki drugi tekst");
delay_ms(2000);


Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1, 1, "Neki treci tekst");
Lcd_Out(2, 1, "Neki treci tekst");
delay_ms(2000);

Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1, 1, "Neki cetvrti tekst");
Lcd_Out(2, 1, "Neki cetvrti tekst");
delay_ms(2000);

[ veselinovic @ 31.10.2014. 18:12 ] @
Smjesti tekst u eprom, i onda ga samo poziovas iz programa.
[ powersz @ 31.10.2014. 21:02 ] @
Ne znam to da uradim. Da li mozete da mi posaljete primer koda? Da li se EPROM nalazi u mikrokontroleru ili mora da se doda?
[ uart @ 01.11.2014. 09:00 ] @
Poruke treba da se smeštaju u flash memoriju mikrokontrolera (code memory).


Više o tome ima ovde:

http://www.mikroe.com/forum/viewtopic.php?t=23196
[ mikikg @ 01.11.2014. 12:21 ] @
Citat:
uart: Poruke treba da se smeštaju u flash memoriju mikrokontrolera (code memory).


Više o tome ima ovde:

http://www.mikroe.com/forum/viewtopic.php?t=23196


Da, to je resenje, definises konstante, po jednu za svaku poruku.
Prevodilac ce u tom slucaju poruke smestiti u programsku (flash) memoriju a kada hoces da stampas poruku samo pozoves zeljenu konstantu.
[ powersz @ 02.11.2014. 19:35 ] @
Uspeo sam. Hvala puno :)