Jump to content
    

STM32F407, SSD1963, SD Memory card

Господа! (и немногочисленные дамы)

Я знаю, что подобная тема долго и плодотворно обсуждалась уже здесь в прошлом году, но из той темы, кажется все ушли :) А вопросов после ее прочтения у меня еще осталось много. Поэтому открываю новую.

Итак, есть STM32F407VGT6, есть модуль с LCD дисплеем, контроллером SSD1963 с протоколом 8080 и разъемом под SD MC.

Необходимо выводить на дисплей информацию, которую STM будет получать от внешних устройств.

Информации не очень много, анимация не нужна, просто статическая картинка и текст, который будет меняться не чаще, чем раз в минуту. иногда должна меняться вся картинка. Всего картинок не больше десятка, полагаю.

На внешний разъем модуля выведены не все пины SD карты, а только spi-совместимые (Do,DI, CS, CLK).

Рассматриваю такой вариант - управлять SSD1963 с помощью FSMC. SD подключить к spi пинам. Хранить картинки в SD, и при необходимости перекидывать их на дисплей. А текст и несколько примитивов хранить прямо во внутренней Flash.

Другие варианты:

Можно подключить SD к родному SD порту в STM32. Но тогда возможен только 1-битовый режим, потому что на внешний разъем модуля выведен только один DO...

Можно управлять SSD1963 ногодрыганием, вроде бы в некоторых темах народ выступает за такой способ, в лоб.

Можно подключить SD к FSMC как NOR\PSRAM, а SSD1963 управлять ногодрыганием.

Кто может подсказать, какой способ проще, быстрее и надежнее?

 

Да, в моем корпусе STM32 FSMC сокращенный, присутствуют только Bank1 и Bank2, так что можно подключить только одно устройство.

 

Второй вопрос. Если все-таки задействовать FSMC для реализации 8080, то к каким пинам подключать?

правильно ли я понимаю, что

FSMC_NWE - к WR

FSMC_NOE к RD,

FSMC_NE1 - к CS,

FSMC_D0..15 - к D0..15

 

А для переключения адреса и данных (С\D) можно задействовать любой пин из FSMC_A шины, например A16? И для отправки команд дисплею, писать команды в регистр адреса FSMC?

 

Это вопрос к тем, кто работал с FSMC STM32F407

 

буду рада ответам и помощи :)

Share this post


Link to post
Share on other sites

Можно управлять SSD1963 ногодрыганием, вроде бы в некоторых темах народ выступает за такой способ, в лоб.

Можно подключить SD к FSMC как NOR\PSRAM, а SSD1963 управлять ногодрыганием.

Кто может подсказать, какой способ проще, быстрее и надежнее?

Да, в моем корпусе STM32 FSMC сокращенный, присутствуют только Bank1 и Bank2, так что можно подключить только одно устройство.

насчёт SD-карточки точно не скажу, но вроде как её по обычному SPI подключают.

Ногодрыганием при наличии фсмц управлять LCD не имеет смысла, для этого он и есть :)

 

Второй вопрос. Если все-таки задействовать FSMC для реализации 8080, то к каким пинам подключать?

правильно ли я понимаю, что

FSMC_NWE - к WR

FSMC_NOE к RD,

FSMC_NE1 - к CS,

FSMC_D0..15 - к D0..15

 

да, + RS для выбора данные/команда

 

А для переключения адреса и данных (С\D) можно задействовать любой пин из FSMC_A шины, например A16? И для отправки команд дисплею, писать команды в регистр адреса FSMC?

да, любой свободный адресный пин. Не совсем в регистр, а в адресное пространство, относящееся к FSMC.

 

Вот, прочитайте вот здесь про FSMC и LCD, разобрали до косточек.

Edited by NaughtyFreak

Share this post


Link to post
Share on other sites

Можно подключить SD к родному SD порту в STM32.

Здесь с осторожностью у меня не работала пересылка по dma с карточки sd (подключена к порту sd) на lcd на stm32f103. На форуме st висел вопрос об этом без ответа. К spi карточку возможности подключить не было.

Share this post


Link to post
Share on other sites

F103 и F407 - разные вещи.

У них даже исходники непереносимые во многом.... Так что с примерами под F1 советую не связываться, если на руках F4.

 

По теме.

Daria, посмотрите плату STM3240G-EVAL - http://www.st.com/internet/evalboard/product/252216.jsp Проц такой же, как и на Discovery, только в 144 ногом корпусе. Но если Вы не собираетесь цеплять на FSMC дисплей и SRAM одновременно, то можно те исходники брать как есть.

Там и дисплей (ILI9320) на FSMC есть, и карта на SDIO. И исходник прошивки, которая со всем этим делом рулит.

 

Я лично оттуда пока только SD карту выдрал, работает нормально на STM32F4Discovery. Код могу дать, кому надо.

Дисплей пока не припаял до конца. Припаяю, буду с прошивкой копаться.

Share this post


Link to post
Share on other sites

Вот, прочитайте вот здесь про FSMC и LCD, разобрали до косточек.

Большое спасибо, сейчас почитаю.

 

Здесь с осторожностью у меня не работала пересылка по dma с карточки sd (подключена к порту sd) на lcd на stm32f103. На форуме st висел вопрос об этом без ответа. К spi карточку возможности подключить не было.

Ясно, спасибо. Значит, буду подключать к SPI, как и задумывала сначала :)

 

F103 и F407 - разные вещи.

У них даже исходники непереносимые во многом.... Так что с примерами под F1 советую не связываться, если на руках F4.

Ясно. А я вот как раз нарыла несколько исходников под F103 :) Придется отказаться от них :)

По теме.

Daria, посмотрите плату STM3240G-EVAL - http://www.st.com/internet/evalboard/product/252216.jsp Проц такой же, как и на Discovery, только в 144 ногом корпусе.

Эх, жаль, но у меня уже есть эта Dicscovery и другой не купят уже :)

Код могу дать, кому надо.

Конечно, надо :) Кидайте в личку

Дисплей пока не припаял до конца. Припаяю, буду с прошивкой копаться.

Ага, удачи :) Я тоже буду копаться :)

Господа, всем спасибо, но не бросайте тему. заглядывайте переодически, если будет время. Буду запускать проект и потихоньку обновлять тему новыми вопросами :)

Share this post


Link to post
Share on other sites

Эх, жаль, но у меня уже есть эта Dicscovery и другой не купят уже :)

Да необязательно её покупать.

Из её примеров можно разных полезностей надёргать. Типа SDIO или дисплея на FSMC :rolleyes: .

 

Конечно, надо :) Кидайте в личку

Вложения туды не кидаются :laughing: . Кладу здесь. Вопросы в личку.

stm32f4xx_sdio.zip

Share this post


Link to post
Share on other sites

Ясно, спасибо. Значит, буду подключать к SPI, как и задумывала сначала :)

 

А почему не к специально предназначенному для этого SDIO ?

Share this post


Link to post
Share on other sites

Allregia, читайте внимательнее.

 

На внешний разъем модуля выведены не все пины SD карты, а только spi-совместимые (Do,DI, CS, CLK).

 

Первый пост темы.

Мой пример для SDIO (не SPI!!!!), кто не понял.

 

Если есть доступ к SDIO, конечно лучше SDIO.

Share this post


Link to post
Share on other sites

Allregia, читайте внимательнее.

 

Я очень внимательно читаю.

 

На внешний разъем модуля выведены не все пины SD карты, а только spi-совместимые (Do,DI, CS, CLK).

 

и, продолжайте пожалуйста?

Share this post


Link to post
Share on other sites

Итак, есть STM32F407VGT6, есть модуль с LCD дисплеем, контроллером SSD1963 с протоколом 8080 и разъемом под SD MC.

Необходимо выводить на дисплей информацию, которую STM будет получать от внешних устройств.

буду рада ответам и помощи :)

сначала читаем там. ссылка на исходники в конце статьи гитхаб

ну и там же есть еще ряд статей.

потом задаем вопросы. сделано под STM32F207vet, fsmc модули у них вроде одинаковые с 407/

контроллер дисплея другой, поэтому файл lcdHAL придется править под свой, через пару недель выложу драйверы под disovery4 + китайский экран HY-32D (с HAL под несколько контроллеров)

вопросы лучше в личку или в статье, тогда уведомления будут приходить, а то форум не постоянно читаю :)

stm32_lcd.pdf

Share this post


Link to post
Share on other sites

сначала читаем там.

Спасибо, почитала

через пару недель выложу драйверы под disovery4 + китайский экран HY-32D (с HAL под несколько контроллеров)

вопросы лучше в личку или в статье, тогда уведомления будут приходить, а то форум не постоянно читаю :)

Ага, будем ждать. Вы упоминали как раз SSD, кажется, в статье ;)

Edited by Daria

Share this post


Link to post
Share on other sites

Спасибо, почитала

 

Ага, будем ждать. Вы упоминали как раз SSD, кажется, в статье ;) А где выложите?

в конце статьи есть ссылка, там все и будет

Share this post


Link to post
Share on other sites

Allregia, читайте внимательнее.

Первый пост темы.

Именно. Можно, конечно, и на SDIO, но тогда возможен только 1-битовый режим. Как я понимаю(и разумно посоветовали в личку:)), смысла в этом нет.

Мой пример для SDIO (не SPI!!!!), кто не понял.

Если есть доступ к SDIO, конечно лучше SDIO.

Нет, все понятно. Но пригодится обязательно, это же не единственный проект, который нужно будет реализовывать на STM :rolleyes:

 

в конце статьи есть ссылка, там все и будет

Да, спасибо, буду ждать :) Попробую сама переделать lcdHAL, если вы поздно выложите, но пока мне хотя бы вообще включить дисплей через FSMC :rolleyes: Завтра буду пробовать :)

Share this post


Link to post
Share on other sites

Именно. Можно, конечно, и на SDIO, но тогда возможен только 1-битовый режим. Как я понимаю(и разумно посоветовали в личку :) ), смысла в этом нет.

 

Ну тогда уж, огласите пожалуйста, чтобы и я знал - чем SPI лучше чем 1-битный SDIO?

Share this post


Link to post
Share on other sites

Ну тогда уж, огласите пожалуйста, чтобы и я знал - чем SPI лучше чем 1-битный SDIO?

Походу, ничем, даже лишний код/головняк добавляется с тактами ожидания и при инициализации карты.

Edited by _Pasha

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...