Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помогите повесить RAM 1645РУ4 на шину адреса
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
inventor
есть миландровский контроллер 1986ВЕ3
мне нужно повесить 2 микросхемы SRAM на шину адреса
микросхемы такие: 1645РУ4 1x16 Мбит
делаю такой схематик
2 микрухи параллельно - одня для 2х младших разрядов, другая для 2х старших
теперь с адресами проблема
сами адреса сделал как в миладнровской мезонинной плате
адреса микрухи A0...A19 подсоединяются к шине на адреса A2...A21
то есть со смещением, чтобы я с каждой адресной линии читал 32 бита данных (4 байта)
сигналы ~WE ~OE и ~BHE ~BLE подцепил к соответсвующим выводам контроллера
осталось 2 вывода ~CE1 и CE2
я хочу чтобы моя память попала в регион 0x60000000
и выбирать память адресными выводами контроллера ~CE1 и CE2
на ~CE1 должен быть 0 а на CE2 единица
я подцепил выводы памяти ~CE1 к выводу A31
а вывод CE2 к контроллерному A30

но хотелось бы сделать так, чтобы я управлял 2-мя единицами
и сделать так: A30 напрямую к CE2 а A29 через инвертор на ~CE1
то есть если приходит адрес 0x60000000 я выбираю микросхемы памяти и работаю с ними.
можно ли так делать или есть какие то другие решения?
scifi
Если вешаете два 16-разрядных ОЗУ на 32-разрядную шину, то у них входы CE должны быть соединены вместе. Разве это не очевидно?
inventor
Цитата(scifi @ Aug 4 2017, 16:28) *
Если вешаете два 16-разрядных ОЗУ на 32-разрядную шину, то у них входы CE должны быть соединены вместе. Разве это не очевидно?

я так и сделал
~CE1 с ~CE1
CE2 с CE2
scifi
Ничего не понимаю. Короче, на м/с ОЗУ входы CE2 соединяем с питанием 3,3В, а входы nCE1 - к выходу МК nCE1.
Зачем там нужны A30, A31 - ума не приложу.
inventor
Цитата(scifi @ Aug 4 2017, 17:33) *
Ничего не понимаю. Короче, на м/с ОЗУ входы CE2 соединяем с питанием 3,3В, а входы nCE1 - к выходу МК nCE1.
Зачем там нужны A30, A31 - ума не приложу.

у менЯ еще устройства будут на этих шинах висеть
поэтому нужно их будет разделять.
и чтобы не было повторения на других адресах
которые попадают
scifi
Ну, тогда советую повнимательнее посмотреть на старшие линии адреса. Сомнительно, что A31 можно активизировать в диапазоне адресов, приписанном к nCE1. А активизировать м/с ОЗУ раздельно, когда они сидят на одной 32-разрядной шине и должны уметь работать с 32-разрядным словом вместе одновременно, - это ошибка.
inventor
Цитата(scifi @ Aug 4 2017, 18:25) *
Ну, тогда советую повнимательнее посмотреть на старшие линии адреса. Сомнительно, что A31 можно активизировать в диапазоне адресов, приписанном к nCE1. А активизировать м/с ОЗУ раздельно, когда они сидят на одной 32-разрядной шине и должны уметь работать с 32-разрядным словом вместе одновременно, - это ошибка.

они вместе работают - все правильно у меня
похоже вас ввело в заблуждение названия пинов
у каждой микрухи по 2 вывода ~CS1 и CS2
inventor
память чтение заработали - не было сигнналов адреса
A19 и A20 , которые были на ногах PORTI - я не протактировал его правильно
щас исправил.
но появилась доругая пробема.
данные пишутся по 4 слова за раз
то есть пишу по адресу 0x60200000 число
оно повторяется на адресах 0x60200004 0x60200008 0x6020000C
не понятно, почему такое происходит
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.