реклама на сайте
подробности

 
 
> Подключение внешней памяти через мультиплексированную шину, ATMEGA128 чтение, запись из внешней памяти
nagserg
сообщение Dec 22 2005, 09:21
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 12-05-05
Пользователь №: 4 940



Подскажите пожалуйста как обратится к внешней памяти, используя альтернативные выводы (ALE, WR, RD)?
Работаю в CodeVision

........

MCUCR = 0x80; // Разрешаем работу с внешним ОЗУ

XMCRB = 0x07; // Адресные выводы порта С A8...A15 не использовать

а вот как прочитать записать по определенному адресу? Подскажите пожалуйста.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rash
сообщение Dec 22 2005, 09:51
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 639
Регистрация: 5-09-05
Пользователь №: 8 231



А какую внешню память в качестве ОЗУ используете, её тип?
Go to the top of the page
 
+Quote Post
defunct
сообщение Dec 25 2005, 23:56
Сообщение #3


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Rash @ Dec 22 2005, 11:51) *
А какую внешню память в качестве ОЗУ используете, её тип?


Используем SRAM. дешевые и доступные микросхемы UT621024-LL70, UT62256-LL70.
Стандартная схема включения через защелки (LATCH). В качестве защелки используем отечественный 1533ИР22. А для работы с внешней памятью в C не требуется никаких специфических телодвижений.. MCUCR = ( 1 << SRE) и все..

на асме аналогично

Код
ldi al, (1 << SRE)
out MCUCR, al


и читать/писать ld/st, lds/sts как и внутренний SRAM.

Читать с определенного адреса:
Код
ldi  ZH, High( Определенный адрес)
ldi  ZL, Low( Определенный адрес)
ld  AL, Z


на C будет типа такого:

Код
  char* vp = (char *)Определенный Адрес;
  char  a;
   a = *vp;  // читать
   *vp = a;  // писать
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nagserg   Подключение внешней памяти через мультиплексированную шину   Dec 22 2005, 09:21
- - BVU   Цитата(nagserg @ Dec 22 2005, 12:21) Подс...   Dec 22 2005, 09:43
- - nagserg   Честно говоря я использую не память, а контроллер ...   Dec 22 2005, 11:03
|- - BVU   Цитата(nagserg @ Dec 22 2005, 14:03) Чест...   Dec 22 2005, 11:58
|- - nagserg   Цитата(BVU @ Dec 22 2005, 14:58) Цитата(n...   Dec 22 2005, 13:03
- - mse   ЦитатаXMCRB = 0x07; // Адресные выводы порта С A8....   Dec 22 2005, 12:58
- - mse   Цитатаот например в ISP1581 есть адрес Mode 0x0C. ...   Dec 22 2005, 13:12
- - nagserg   Спасибо огромное за ответы, смысл понятен, хотелос...   Dec 22 2005, 14:06
- - _artem_   char *ptr_p, getit; ptr_p = (char*)0xffff; getit...   Dec 22 2005, 14:44
- - _artem_   defunct , ram kotorij ti upomyanul - on nizkoskoro...   Dec 26 2005, 00:10
|- - defunct   Цитата(_artem_ @ Dec 26 2005, 02:10) defu...   Dec 27 2005, 00:00
|- - _artem_   Цитата(defunct @ Dec 27 2005, 02:00) Цита...   Dec 27 2005, 00:45
|- - defunct   Цитата(_artem_ @ Dec 27 2005, 02:45) Рису...   Dec 27 2005, 01:30
- - nagserg   char* vp = (char *)Определенный Адрес; char a; ...   Dec 26 2005, 09:19
|- - nagserg   Цитата(nagserg @ Dec 26 2005, 12:19) char...   Dec 26 2005, 10:49
|- - defunct   Цитата(nagserg @ Dec 26 2005, 12:49) Каки...   Dec 27 2005, 00:28
|- - nagserg   Цитата(defunct @ Dec 27 2005, 03:28) Цита...   Dec 27 2005, 08:27
- - defunct   > Я DMA не использую пока и всё-таки каким обра...   Dec 27 2005, 08:50
|- - nagserg   Цитата(defunct @ Dec 27 2005, 11:50) ps: ...   Dec 27 2005, 11:50
- - BVU   nagserg, когда Вы хотите использовать обращение к ...   Dec 28 2005, 07:55


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 04:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016