roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 18:28

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: STM32 и КР580ВВ55 (i8255)
СообщениеДобавлено: 11 янв 2019, 23:55 
Не в сети

Зарегистрирован: 11 янв 2019, 23:31
Сообщения: 2
Контроллеры STM32 могу поддерживать внешнюю SRAM.
Можно ли вместо RAM подключить классическую 8-битную периферию типа КР580ВВ55 (i8255) или AY-3-8910 или Yamaha YM2149F?
Судя по диаграммам взаимодействия с чипами памяти проблем не видно, разве что кроме скорости/частоты доступа, но это решаемо. Так же будем отбрасывать старший байт данных. Декодирование адреса тоже не проблема.
Но не понятно есть ли какой то кеш для внешней памяти при обращении от CPU?

Есть у кого то такой опыт подключения?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и КР580ВВ55 (i8255)
СообщениеДобавлено: 13 янв 2019, 05:47 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
sram и stm32 бывают сильно разные. sram есть как минимум с парралельным интерфейсом и с spi.
если под "поддерживать внешнюю SRAM" подразумевается парралельная память и отражение её в адресное пространство (прозрачно чтение/запись), то это к fsmc (а он не во всех есть + отличается по своим возможностям от чипа к чипу). им же с некоторой внешней переферией работать можно. изучите в общем, что это за блок, есть/нет он в нужном вам чипе и т.д.
sram с spi интерфейсом всё очень просто - spi как spi. 1..n байт записывать/считывать хоть по dma, хоть без.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и КР580ВВ55 (i8255)
СообщениеДобавлено: 13 янв 2019, 21:37 
Не в сети

Зарегистрирован: 11 янв 2019, 23:31
Сообщения: 2
Про SPI речь даже не идет, только parllel bus. См. речь идет про i8255
Если взять для примера STM32F4(7) то в "старших" моделях есть Flexible memory controller (FMC). Он поддерживает static RAM. Также есть множество примеров по подключению RAM-map LCD контролеров. И вроде как бы все работает. Но одно дело когда обращаться к памяти (даже когда это video-ram) и другое когда это порты ввода вывода. Не будет ли какого кэширования?
Для примера делаем:
write_ram base+0, const0
write_ram base+2, const2
write_ram base+1, const1
Для памяти и даже для видео-памяти это не критично если будет закешировано и преобразовано в:
write_ram base+0, const0
write_ram base+1, const1
write_ram base+2, const2
а вот для портов I/O это важно.
И становится совсем не ясно что будет с периферией где надо делать последовательную запись по одному адресу нескольких значений.
Вопрос кто то подключал parllel bus периферию как external memory к STM32?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и КР580ВВ55 (i8255)
СообщениеДобавлено: 13 янв 2019, 22:21 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
для настройки и проверки что на пинах происходит, есть такая очень полезная штука как даталоггер. не подходит или не можете разобраться/настроить, смотрите, на сколько подходит работа через дма (параллельнаое синхронное чтени-запись). никто не запрещает с портами работать и без всяких дма и контроллеров памяти.


Последний раз редактировалось Angel71 14 янв 2019, 19:40, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 и КР580ВВ55 (i8255)
СообщениеДобавлено: 14 янв 2019, 19:41 
Не в сети
Аватара пользователя

Зарегистрирован: 01 сен 2009, 14:58
Сообщения: 1142
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python
Кеша через FMC / FSMC нет.
Eсли работать с медленной переферией проще через GPIO делать.
Либо кеш ручками делать.

Добавлено спустя 5 минут 25 секунд:
Обычно то что описано в примере делает оптимизатор в компиляторе при записи в "память", ему нужно популярно обьяснять что область памяти есть _IO/volatile.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO