STM32F103 - podłączenie pamięci SRAM i za gadka...

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

Translate This Thread From Polish to

Threaded View
Witam

    Tak czytam dokumentację, czytam i połapać się nie mogę... jakoś to
wszystko nieprecyzyjnie napisane...
Mam mikrokontroler STM32F103VE lub -ZE (jeden w TQFP100, drugi w
TQFP144). Chcę do niego podłączyć pamięć SRAM... Sprawa wydaje się
banalna, a jednak nie... Pytania, jakie mi się nasuwają, są następujące:

1) Czy mikrokontrolery te mogą współpracować z pamięcią SRAM o 8-bitowej
szynie danych?? Z jednej strony w 'Reference Manual' jest tabelka 107 w
dziale 21.5.2 i tam wyszczególnione są obsługiwany typy pamięci...
wszystkie 16-bitowe... Z drugiej strony na początku rozdziału 21.5 też
są wymienione obsługiwane typy pamięci i tam piszą, że SRAM to 8, 16 i
32 bity... W rejestrze FSMC_BCR można ustawić 8 lub 16 bitów tylko...
Więc jak to z tym jest?? Pociągnie pamięć 8-biotwą?? Jak ją podłączyć??
Rozumiem, że pinów "Lower Byte" i "Upper Byte" podłączać nie muszę,
reszta standardowo, tak??
A jak podłączyć pamięć 32-bity?? ;>;>;>...


2) Czy do mikrokontrolera 100-pinowego mogę podłączyć pamięć SRAM??
(Dla niewtajemniczonych - 100-pinowy procek nie ma wszystkich sygnałów
wyprowadzonych i może pracować w trybie współdzielenia magistrali...)

W 'Application Note 2784' podane są sposoby podłączania pamięci NAND
Flash i NOR Flash do mikrokontrolerów 100-pinowych, nie ma słowa o SRAM...
Podobnie w 'Reference Manual' w 21.5 wymieniają typy pamięci
obsługiwanych przez stosowny kontroler, i słowa "multiplexed or
nonmultiplexed" padają tylko w kontekście NOR Flash, przy SRAM o tym nie
piszą...

Czy ktoś przerabiał temat?? Rzeczywiście się nie da tego pożenić??
Trochę jest to dla mnie dziwne, czy faktycznie obsługa pamięci SRAM w
tym trybie byłaby niemożliwa bądź utrudniona? Czy o co chodzi??


Z góry dziękuję za pomoc bardziej doświadczonych osób, gdyż to moja
pierwsza przygoda z tymi mikrokontrolerami i nie chcę czegoś spartaczyć
na samym początku pracy... A dodatkowo, muszę ciąć koszty, więc tańsza
wersja uC bardziej by mi pasowała, tak samo jak tańszy, 8-bitowy RAM...


--
  Pozdrawiam
  Konop

Re: STM32F103 - podłączenie pamięci SRAM i zagadka...
W dniu 2011-05-01 22:09, Konop pisze:
Quoted text here. Click to load it

Tak.


Pociągnie 8-bit.

Quoted text here. Click to load it

Chyba "przejęzyczyłeś się".
"Lower Byte" musisz...
Reszta standardowo.

Quoted text here. Click to load it

Klasyczną pamięć SRAM bezpośrednio - nie.

Quoted text here. Click to load it

Podłączenia pamięci SRAM do STM32 w wersji 100-pin nie przerabiałem w
praktyce, choć rozważałem taką możliwość. Nie pamiętam szczegółów,
czy
rozstrzygała prostota rozwiązania (tj. wybrałem 144-pin), czy
komplikacje związane z koniecznymi dodatkowymi układami
multipleksująco-zatrzaskowymi.

pzdr
mk

Re: STM32F103 - podłączenie pamięci SRAM i zagadka...
W dniu 2011.05.02 00:21, mk pisze:
Quoted text here. Click to load it

Dzięki za informację :)

Quoted text here. Click to load it

Hmmm... A do czego go podłączyć?? Jeśli pamięć ma 8 bitów, to raczej nie
ma wejść w stylu "Lower Byte" i "Upper byte" :)... . Ma pewnie OE, WE i
CE, podłączam je odpowiednio do NOE, NWE i NEx procesora... i wtedy NBL0
i NBL1 zostają niepodłączone... Ale w sumie, skoro pamięć ma 8 bitów i
kontroler pamięci o tym "wie", to w ogóle tych pinów chyba nie powinien
wykorzystywać... albo ja czegoś nie kumam :D...

Quoted text here. Click to load it
czy
Quoted text here. Click to load it

Że bezpośrednio, to rozumiem... typowo wykorzystuje się tutaj jakiś
'Latch', jak w starszych prockach... Ale, jak pisałem, dokumentacja
wspomina coś na temat podłączania pamięci Flash, natomiast milczy w
kwestii podłączania pamięci SRAM. Stąd zastanawiam się, czy jest to
moĹźliwe i czemu nie :)...

--
  Pozdrawiam
  Konop

Re: STM32F103 - podłączenie pami ęci SRAM i zagadka...
Quoted text here. Click to load it

nie
Quoted text here. Click to load it

Ale szynę danych opisaną w stylu D0-D7, czy Dx0-Dx7 to pewnie ma.

Quoted text here. Click to load it

Jeśli masz pamięć 16 bitową to w jednym cyklu przekazywane jest słowo 16
bitowe. Górna połówka jest w Upper Byte, a dolna w Lower Byte. Jeśli masz
pamięć 8 bitową, to magistrala danych ma 8 bitów, więc wykorzystujesz tylko
Lower Byte.

Quoted text here. Click to load it

Latch jest po to aby zaoszczędzić ilość linii potrzebną do obsługi
pamięci.
Każdy kontroler (mający odpowiednią ilość wolnych portów) obsłuży Ci
pamięć
SRAM, tylko czasami trzeba to robić programowo, podobnie jak komunikację z
pamięciami typu: 24Cxx, czy PCF8563, HD44780 (wbrew pozorom to również są
pamięci).


Re: STM32F103 - podłączenie pamięci SRAM i zagadka...
W dniu 2011.05.03 13:12, Marcin Wasilewski pisze:
Quoted text here. Click to load it

No ale szynę danych podłącza się normalnie ;)...

Quoted text here. Click to load it

To rozumiem :). Ale to działa tak - jeśli jest zapisywany słowo
16-bitowe, to kontroler podaje oba sygnały... Jeśli zapisywane jest
słowo 8-bitowe, to kontroler wystawia jeden z sygnałów UB lub LB i w ten
sposób modyfikuje tylko odpowiednią część słowa w pamięci 16-bitowej...

 > Jeśli
Quoted text here. Click to load it

No dokładnie, w pamięci 8-bitowej sygnał UB nie ma sensu, zaś LB
powinien być "zawsze aktywny". Chodzi mi o praktyczną realizację - czy
sygnał NBL0 procesora do czegoś podłączam, czy nie??


Quoted text here. Click to load it

Wiem, do czego służy latch i jak działa. Że można programowo, też
wiem... Mi chodzi o wykorzystanie hardwareowego kontrolera pamięci
(FSMC), ktĂłry jest wbudowany w ten mikrokontroler ;)... Po prostu
dokumentacja jest trochę nieprecyzyjna i chcę spytać, czy ktoś czegoś
takiego kiedyś używał :).


--
  Pozdrawiam
  Konop

Site Timeline