STM32 tablice we Flash i RAM

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Polish to

Threaded View
Czesc.
Program pisany na STM32 w Keil
Jak rozroznic umieszczenie tablic w pamieci Flash i RAM?
Dla przykB3%adu chce w pamieci flash umiescic tablice z obrazem dla
wyswietlacza LCD, ktora jest tylko do odczytu i majB1% byE6% to wartosci
uint8_t OBRAZ[] 3D% {0x08, //itd
oraz inna w pamieci RAM: uint8_t ch0[8]3D%{24, 4, 4, 10, 18, 18, 17,
0}; //wB3%asne znaki

Jak je rozroznic aby trafily do FLASH a druga do RAM i jak je potem
odczyta?

Re: STM32 tablice we Flash i RAM
W dniu 2012-01-10 12:49, slawek7 pisze:
Quoted text here. Click to load it

Te mające być we flaszu deklaruj jako const.
Na przykład
const char http_content_type[15] =
{0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x74, 0x79, 0x70, 0x65,
0x3a, 0x20, };

Quoted text here. Click to load it

A te powędrują do RAM.

Po kompilacji zobaczysz w pliku .map gdzie powędrowały. Jeśl
i Keil używał do kompilacji gcc a zdaje mi się ze tak jest.
blok .text to flash, d.data - dane zainicjowane, .bss dane niezainicjowane.

--
pozdrawiam
MD

Re: STM32 tablice we Flash i RAM
Tylko jak zoabczyc gdzie sa umieszczone te tablice?
Otwieram plik .map cos tam jest tylko jak z tego wylonic to co
potrzeba?
Jak to bedzie opisane?

Znalazlem na samyk koncu takie sekcje: RO Size, RW Size, ROM Size. Nie
wiem czy dobrze rozumiem, ale czy RO znaczy Read Only? a RW Read/
Write? To czym sie rozni ROM od RO? jedno tylko do czytania i drugie?

Re: STM32 tablice we Flash i RAM

Quoted text here. Click to load it


W gcc pisałem kiedys tak
uint8_t const moja_tablica_rom[]= PROGMEM;
pgm_read_byte(*); // dostępne w pgmspace.h

--
Pozdrawiam, Łukasz



Re: STM32 tablice we Flash i RAM
W dniu 10.01.2012 14:25, Ukaniu pisze:
Quoted text here. Click to load it

Ale to raczej w AVR, a nie ARM ;-)

Pozdrawiam
Grzegorz

Re: STM32 tablice we Flash i RAM
To jak w Keilu sprawdzic ilosc zajetych pamieci (Ram, Flash)?

Re: STM32 tablice we Flash i RAM
Quoted text here. Click to load it

https://docs.google.com/viewer?pid=bl&srcidAD%GEESgZRyfqz9u2ZosJDBYRQdtQNIPP1pPlTFNkHo0vahrHff7P-MJ-nLEZ5Z8YOILpYX-088JUtBuxkdUZljoHPghDMih5Gky2rJMx9PzsRx5DT6ePRXB2J7uXiAUtujA-5XvYuxMD&q=cache%3A4lnJFZsAvLgJ%3Awww.8051projects.net%2Fe107_files%2Fpublic%2F1285598582_6533_FT38162_keil_arm_lpc2148_help.pdf%20keil%20arm%20flash%20ram%20usage&docid=b3078bc1a50ed7f8084eacf4d8e066d8&a=bi&pagenumber13%&w80%0


Re: STM32 tablice we Flash i RAM

Quoted text here. Click to load it

Link nie dziala

Re: STM32 tablice we Flash i RAM
W dniu 2012-01-11 08:45, slawek7 pisze:
Quoted text here. Click to load it

Się popsuł. Spróbuj ten:

http://www.keil.com/forum/10624 /


Re: STM32 tablice we Flash i RAM
Ten jest ok.
Zastanawiam sie dlaczego dla ROM podaja "ROM Size = Code + RO Data +
RW Data" i w takim razie co znacza skroty RO i RW?

Re: STM32 tablice we Flash i RAM
Quoted text here. Click to load it

http://stackoverflow.com/questions/5430284/rom-and-ram-in-arm

Re: STM32 tablice we Flash i RAM
To wyjasnilo, dzieki.
A jaki poziom kompilacji nalezy wybrac. W keilu sa od 0 do 3 natomiast
w WinAVR zawsze ustawialo sie na -Os. Jest tu jakis odpowiednik?

Re: STM32 tablice we Flash i RAM
W dniu 11.01.2012 12:28, slawek7 pisze:
Quoted text here. Click to load it
kod wykonywalny + dane Read Only (stałe) + dane Read and Write(kopiowane
do ram na starcie)

w ramie będzie RW, stack i obszary inicjalizowane zerami

--
Pozdrawiam
Michoo

Site Timeline