Например TDA7294

Форум РадиоКот • Просмотр темы - Параллельная шина в STM32F4
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 18:32:29

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


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Параллельная шина в STM32F4
СообщениеДобавлено: Чт июн 23, 2016 00:07:58 
Встал на лапы
Аватар пользователя

Зарегистрирован: Пн фев 17, 2014 21:39:52
Сообщений: 91
Откуда: Saratov
Рейтинг сообщения: 0
Вообщем, есть такая штука, как российская DDS 1508ПЛ8Т.
Она умеет подключаться к микроконтроллеру либо по SPI, либо по 16-разрядной параллельной шине. Я хочу подключить её через параллельную шину к STM32F427, или к STM32F407.
Конфигурация DDS состоит в записи необходимых данных в регистры DDS.
На рисунке набросал его алгоритм. В двух словах, есть 16-разрядов данных со стандартными стробами чтения (RDn) и записи (WRn), бит выбора кристалла CSn и бит ADR (который определяет, что именно передается, адрес или данные).
Изображение
Запись в регистр DDS происходит в два этапа: сначала в шину записывается адрес интересующего нас регистра, потом записываются данные.
Биты DATA[0..15] подключаются к шине данных микроконтроллера, а бит ADR подключается к одному из битов адреса микроконтроллера (например к биту ADDRESS0). Тогда, если, например, адресное пространство шины отображается на 0x50000000 запись адреса и запись данных будет такое.
Значение 0x50000000 я взял из российского МК, в STM32F4 наверняка оно другое.
Т.е. поставили ADR в 0, и данные на шине - это адрес регистра, поставили ADR в 1, данные с шины идут а регистр, адрес которого мы записали перед этим.

Вообщем, примерно такой вот код.

Код:
(*(volatile uint16_t *)0x50000000) = address;
(*(volatile uint16_t *)0x50000001) = data;


Вопрос вот в чём.
Хочу подключить также к аппаратной внешней шине STM32F407.
Открыл STMCube, выбрал примерно так
Изображение
Верно ли выбрал, что это модуль FSMC?

но в STM32F427 нет FSMC, а есть FMC (который похоже более продвинутый)
Изображение
В нём выбрал, что DDS это SRAM и он предложил использовать такие пины.

Вообщем, хочу спросить совета опытных товарищей: верно ли подключил DDS к STM32F407 и STM32F427, при учёты описанный выше специфики работы? И вообще, заработает ли такая связка (STM32 + 1508ПЛ8)?


Вложения:
Комментарий к файлу: Картинки в хорошем качестве
Documents.rar [674.86 KiB]
Скачиваний: 181

_________________
Я волшебник
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Параллельная шина в STM32F4
СообщениеДобавлено: Чт июн 23, 2016 20:14:47 
Встал на лапы
Аватар пользователя

Зарегистрирован: Пн фев 17, 2014 21:39:52
Сообщений: 91
Откуда: Saratov
Рейтинг сообщения: 0
Вообщем, немного подумал, и пришёл вот к чему. По большому счёту, c этой DDS идет работа, как с обычной статической RAM, только у которой всего два адреса (один для адресов, другой для регистров).
Поэтому, судя по тому, что мне дал гугль, у STM32F407 есть для этих целей FSMC, а в STM32F427 есть FMC. И то, и другое можно использовать для моих целей (по крайней мере я так думаю).
Только в 100-выводных корпусах не выведены младшие биты адреса, но это не проблема, т.к. можно заюзать любой другой бит адреса, благо он нужен лишь один. Поэтому смысл ставить 144-ногую микросхему нет смысла. И если, к примеру, я возьму бит ADDRESS18 (PD13), то код получится примерно такой вот.
Код:
#define ADDRESS (*((volatile uint16_t *) 0x60000000)) // ADR = 0
#define DATA (*((volatile uint16_t *) 0x60040000)) // ADR = 1

/** И тут записываем в DDS что хотим */
ADDRESS = 0x0001;
DATA = 0xFFFF;


Но это надо проверить. На днях попробую сваять франкенштейна из припаянной 1508 к STM32F4Discavery и отпишусь о результатах:)

_________________
Я волшебник


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Параллельная шина в STM32F4
СообщениеДобавлено: Пт июн 24, 2016 19:22:19 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1859
Зарегистрирован: Чт сен 12, 2013 00:54:12
Сообщений: 4119
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
Имеет ли смысл делать такую связку?
Дело в том, что придётся ещё на шину ставить преобразователи уровней, поскольку у 1508ПЛ8Т питание 5V и, соответственно, уровень логической "1" не менее 4V.

----------
ИЗВИНЯЮСЬ!!!!!
Это у 1508ПЛ7 5V.
У 1508ПЛ8Т питание 1,8/3,3V


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Параллельная шина в STM32F4
СообщениеДобавлено: Сб июн 25, 2016 18:54:00 
Встал на лапы
Аватар пользователя

Зарегистрирован: Пн фев 17, 2014 21:39:52
Сообщений: 91
Откуда: Saratov
Рейтинг сообщения: 0
Albert_V писал(а):
Дело в том, что придётся ещё на шину ставить преобразователи уровней, поскольку у 1508ПЛ8Т питание 5V и, соответственно, уровень логической "1" не менее 4V.

Возможно, что вы путаете 1508ПЛ8Т с чем-то другим. У 1508ПЛ8Т всего 4 питания: +3,3В цифровое, +3,3В аналоговое, +1,8В питание вычислительного ядра и +1,8В аналоговое питание ЦАП.
Преобразователи не нужны. Уже реализовывал проекты с ней (только в качестве микроконтроллеров были 1986ВЕ94Т и 1986ВЕ1Т), всё работало без проблем.

На этой неделе не успел спаять франкенштейна STM32+1508ПЛ8Т, если на след недели успею, то отпишусь

P.S. Извиняюсь, сразу не заметил (подумал что это подпись, вчерашнее пиво даёт о себе знать :))) )
Albert_V писал(а):
ИЗВИНЯЮСЬ!!!!!
Это у 1508ПЛ7 5V.
У 1508ПЛ8Т питание 1,8/3,3V

_________________
Я волшебник


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

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


Кто сейчас на форуме

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


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y