МК и внешняя память
- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Необходимо читать данные с помощью Mega16 с памяти,работающей по паралленьному интерфейсу,есть ли у кого готовый код на Си или какие-нибудь наработки в этом направлении?
- Реклама
- Сообщения: 293
- Зарегистрирован: Пн дек 24, 2007 07:09:09
Что за память то, здесь нет экстрасенсов чтобы это угадать, читай ДШ и делай по нему, примеров полно, готовый не пойдет, все зависит от размера, от активных уровней, управляющих выводов и еще многих факторов.
Даташит - библия моя...


- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Я это понимаю,только не от чего оттолкнутся.Был бы пример кода с уже заданными параметрами-от него тогда и плясать можно было,если примеров куча-поделитесь хотя б одним...VenomXP писал(а):Что за память то, здесь нет экстрасенсов чтобы это угадать, читай ДШ и делай по нему, примеров полно, готовый не пойдет, все зависит от размера, от активных уровней, управляющих выводов и еще многих факторов.
Память стастическая K6R4008V1D.
- Сообщения: 293
- Зарегистрирован: Пн дек 24, 2007 07:09:09
Да здесь ничего сверхестественного нет, выставляешь на шине адреса собственно адрес и уже по управляющим выводам включаешь функцию чтения или записи, после чего, уже с порта данных соответсвенно читаешь либо записываешь. Все просто.
Даташит - библия моя...


- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Хорошо,спасибо,попробую.VenomXP писал(а):Да здесь ничего сверхестественного нет, выставляешь на шине адреса собственно адрес и уже по управляющим выводам включаешь функцию чтения или записи, после чего, уже с порта данных соответсвенно читаешь либо записываешь. Все просто.
- Реклама
- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Скажите пожалуйста,какой регистр в Atmega16 отвечает за управление внешней памятью-ничего в даташите не нашел.
В книге нашел - для всех Mega регистр XMCRB - только его нет в Mega16.h и адреса его не знаю.
В книге нашел - для всех Mega регистр XMCRB - только его нет в Mega16.h и адреса его не знаю.
В меге16 не предусмотрена работа с внешней памятью на аппаратном уровне - это надо реализовать программно. Какие порты хочешь те и используй. В меге8515 есть аппаратные средства работы с внешней памятью до 64КБ.
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
Если в книге написано - для всех Мега - то плохая книжка!
Интерфеис внешней памяти есть только у некоторых! Из простых Мега перечисляю по пальцам: ATmega8515, Atmega162, ATmega64 и 640, Atmega128 и Atmega256.
Информация взята с : http://www.atmel.ru/Production/tables/avr.htm
Можете сами заглянуть, удобная таблица
Для остальных - требуется организовывать програмную функцию обращения к памяти. Если память подключена как к выше перечисленным(по интерфеису внешней памяти), то в пошагово действия:
- выставляете на шину Адреса/Данных младший баит адреса
- задерживаете его в регистре-зашелке - переводом ALE - с высокого уровня в низкий.
- выставляете старший баит адреса , на отдельную шину А(8-15)
- если необходимо выставляете Выбор Чипа (если он не вязан с Адресом)
- при записи:
устанавливаете на шину Адреса/Данных - данные
подаёте сигнал Запись
- при чтении
устанавливаете - Выход из памяти разрешен,
читаете данные
снимаете - разрешение выхода из памяти данных..
Муторно но тоже можно работать..
И, блин, пока писал люди уже ответили кратко
Интерфеис внешней памяти есть только у некоторых! Из простых Мега перечисляю по пальцам: ATmega8515, Atmega162, ATmega64 и 640, Atmega128 и Atmega256.
Информация взята с : http://www.atmel.ru/Production/tables/avr.htm
Можете сами заглянуть, удобная таблица
Для остальных - требуется организовывать програмную функцию обращения к памяти. Если память подключена как к выше перечисленным(по интерфеису внешней памяти), то в пошагово действия:
- выставляете на шину Адреса/Данных младший баит адреса
- задерживаете его в регистре-зашелке - переводом ALE - с высокого уровня в низкий.
- выставляете старший баит адреса , на отдельную шину А(8-15)
- если необходимо выставляете Выбор Чипа (если он не вязан с Адресом)
- при записи:
устанавливаете на шину Адреса/Данных - данные
подаёте сигнал Запись
- при чтении
устанавливаете - Выход из памяти разрешен,
читаете данные
снимаете - разрешение выхода из памяти данных..
Муторно но тоже можно работать..
И, блин, пока писал люди уже ответили кратко
- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Спасибо всем за советы,у меня есть еще в наличии Z8018233FSC- может кто работал с ним-просто особо времени разбираться с новым МК нет,может у кого есть опыт работы с таковыми?
И еще вопрос - сигнал ALE где у Меги 16?
И еще вопрос - сигнал ALE где у Меги 16?
Мой юный друг, Вы читаете что Вам отвечают? В меге16 с внешней памятью работать можно только программно, нету у нее ни ALE, ни WR ни RD. Все это эмулируется программно. на какую ногу захотите, туда и заведите и рулите этими ногами командами PORTx.y=...
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
- Сообщения: 46
- Зарегистрирован: Вт дек 02, 2008 15:25:53
Все понял,спасибо.DrWatson писал(а):Мой юный друг, Вы читаете что Вам отвечают? В меге16 с внешней памятью работать можно только программно, нету у нее ни ALE, ни WR ни RD. Все это эмулируется программно. на какую ногу захотите, туда и заведите и рулите этими ногами командами PORTx.y=...


