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

EMC w LPC 2214 - jak sterowac liniami adresowymi i danymi?

jedrek_1981 20 Wrz 2006 12:14 1389 3
REKLAMA
  • #1 3038474
    jedrek_1981
    Poziom 12  
    Posty: 85
    Pomógł: 3
    Ocena: 1
    Witam
    Dolaczylem w swoim projekcie zewnetrzna pamiec SRAM do External Memory Controller w LPC 2214. Jest to pamiec 8 bitowa i posiada 19 linii adresowych. Pamiec podlaczylem wedlug rysunku 9 z User manual LPC2214. Rejestry kontrolera ustawilem w nastepujacy sposob:

    PINSEL2 = 0x0D800000; //Enable D7:0, CS0, OE, BLS0, A19:0
    BCFG0 = 0x00000004;

    Moje pytanie brzmi jak sterowac terez tymi liniami adresowymi i danymi?
    Gdzie mam wpisac, do jakiego rejestru moj adres i dane aby pojawialy sie one na liniach kontrolera pamieci zewnetrznej? Chyba nie odbywa sie to tak ze wpisuje odpowiednie adresy do rejestru IO3SET a dane do rejestru IO2SET?
  • REKLAMA
  • #2 3040795
    bis
    Poziom 21  
    Posty: 274
    Pomógł: 54
    Ocena: 3
    Nie bardzo mam czas aby dokładnie sprawdzić inicjalizację rejestrów, ale jeżeli niczego nie schrzaniłeś to po prostu używasz tej pamięci poprzez standardowe adresowanie pamięci. Inicjalizacjia dla CS0 wyznacza w jakim obszarze adresowym tą pamięć masz. Możesz tam np. wrzucic program i też zostanie on wykonany, albo użyć dkla danych. Potraktuj to tak samo jak wewnętrzny RAM lub FLASH w innych LPC2000, te same sposoby dostępu tylko pod innymi adresami. Oczywiście można też tak jak zaproponowałeś poprzez ustawianie na piechotę linii (wtedy musisz zainicjalizować odpowiednie linie portów jako OUTPUT a na danych to merdać raz OUTPUT a innym razem INPUT) ale to jest bez sensu.

    bis
  • REKLAMA
  • #3 3062917
    jedrek_1981
    Poziom 12  
    Posty: 85
    Pomógł: 3
    Ocena: 1
    Tylko teraz jak zapomoca jezyka C zapisac w Keilu dana pod konkretna komorke pamieci dla kompilatora RealView?. Dla kompilatora CARM udalo mi sie znalesc dyrektywe __at umieszczajaca zmienna w konkretnej komorce pamiecie ale dla kompilatora w którym pisze program (RealView) ona juz nie dziala:(
  • #4 3619261
    fantom
    Poziom 31  
    Posty: 1649
    Pomógł: 108
    Ocena: 42
    jedrek_1981 napisał:
    Tylko teraz jak zapomoca jezyka C zapisac w Keilu dana pod konkretna komorke pamieci dla kompilatora RealView?. Dla kompilatora CARM udalo mi sie znalesc dyrektywe __at umieszczajaca zmienna w konkretnej komorce pamiecie ale dla kompilatora w którym pisze program (RealView) ona juz nie dziala:(


    Poprzez wskaznik albo jesli sie da ustawic w skrypcie linkera.
REKLAMA