Перейти к содержанию
    

Двухканальные режим qspi в stm32f469

1 hour ago, izerg said:

TouchGFX - уже знает, как с двойной флешкой работать? 

Touchgfx знает как работать с памятью. А флешки будут настроены так, чтобы проецироваться в общее адресное пространство. На сайте где-то была их дока, как это сделать. Они именно про qspi писали

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

56 minutes ago, izerg said:

ну так звенеть может и 1 флешка,  это не относится к вопросу который автор спрашивает.

Не важно сколько флешек. Пока автор не запустил их, не лишним будет проверить и физику. Убедиться, что она работоспособна.

56 minutes ago, izerg said:

от логический анализатор - да, весьма будет полезен, с длинным буфером.

Логический анализатор информативен только тогда, когда аналоговые сигналы в норме. В моей практике была линия SPI, которая звенела так, что срабатывали стабилитроны на 3.3 В (конечно, минимальный порог у них был выше, около 5 В). В итоге на 1 Мб читаемых с флешки данных, один или два битых байта, а то и полный сбой обмена. Соответственно, и процессор и логический анализатор видели муру. И только осциллограф с аналоговым входом показал в чём дело.

56 minutes ago, izerg said:

но это можно и самим процессором увидеть :) 

Как вы увидите команды, которые доходят до флешки? А данные, которые приходят? Когда это будет, можно говорить об исправном и работающем драйвере.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, можно, без проблем. Только настроить, прочитав RM. (это топикстартеру)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, MementoMori said:

Они именно про qspi писали

И именно с двумя флешками? Т.е. cs аппаратно управляются?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, haker_fox сказал:

И именно с двумя флешками? Т.е. cs аппаратно управляются?

Аппаратно. Управляются микроконтроллером. Работают параллельно. Внешние устройства ни о чем и не догадываются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ой! Ведь каждую флэшку предварительно нужно переключить в Quad протокол. Для этого нужно к ним обратиться индивидуально по обычному SPI. Может, и вообще без CS (свои на землю посадить) будет работать. Нужно изучать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно программно подергать CS на время настройки обеих в Quad. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

48 минут назад, ViKo сказал:

Можно программно подергать CS на время настройки обеих в Quad. 

Автор хочет одним CS-ом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 минуту назад, jcxz сказал:

Автор хочет одним CS-ом.

Одним и дергать. Программно, пока в Quad не переведет. Поочереди для одной или другой flash. А потом аппаратно, сразу двум одним CS.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 минут назад, ViKo сказал:

Одним и дергать. Программно, пока в Quad не переведет. Поочереди для одной или другой flash. А потом аппаратно, сразу двум одним CS.

Если там 2 независимых SPI-канала, то видимо брать его придётся от одного из них. А как обеспечить синхронность работы этих двух каналов когда управление будет аппаратное? Синхронность с точностью до такта SCLK. При том, что SCLK у каждого будет свой.

Хотя (отвечаю сам себе) можно наверное один из SPI сделать мастером, второй - слэйвом. И завести SCLK 1-го на вход 2-го. Но тогда и CS придётся заводить И никакой экономии ног не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 минут назад, jcxz сказал:

Если там 2 независимых SPI-канала, то видимо брать его придётся от одного из них.

В STM32 уже всё сделали для dual-flash режима, бери и пользуйся. Но и с одним flash можно получить достаточно скорости.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ЩЧто-то я не пойму смысла ломани копий в последнем десятке сообщений.

в доке по touchgfx на вопрос, где же хранить картинки и как использовать при этом внешнюю память, сказано, что можно прямо указывать адрес в памяти. А внешнюю память настраивать так, чтобы она проецировалась в общее адресное пространство.

Мне это напомнило fsmc.

Как при этом контроллер будет общаться с qspi памятью, я не знаю, но возможность проецировать ее в общее  адресное пространство есть. И контроллеру по барабану будет, кто эти запросы шлет, touchgfx или иная библиотека.

В свою очередь, библиотека touchgfx будет думать, что грузит картинки из пузатого-препузатого контроллера с большим объемом флеш.

Сорри за опечатки, с мобильного пишу

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, MementoMori сказал:

А внешнюю память настраивать так, чтобы она проецировалась в общее адресное пространство.

Вот дело только за этим. Никаких копий ломаний.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И еще... для кубоненавистников. 

Знакомясь с touchgfx, я собрал проект по инструкции. Проект не заработал. Поскольку у меня заведомо исправная отладочная плата, было понятно, что причина в проекте. Доведя его до ума, я лицезрел работающий дисплей.

Теперь, когда я закажу плату, осуществлю монтаж и загружу заведомо рабочий проект, я не буду гадать, в чем причина неработоспособности, в плате или в коде.

Мне для начала нужно написать helloworld. А потом уже буду рационализировать код, возможно клепая его с нуля, а не средствами куба.

В противном случае, упустив какую-нибудь деталь при самостоятельном написании кода, я буду разбираться долго.

А куб - он мне подсказывал, что и где подключить, и пока все не включишь, раздел graphics недоступен, а если и доступен, но чего-то не хватает, то недоступна вкладка touchgfx.

Я не представляю себе, как бы я все это настраивал в "свободном плавании"

 

Нет, может быть меня первоначально не так поняли... quadspi я в состоянии настроить сам, без куба. Весь проект - что с точки зрения кода, что с точки зрения схемотехники - в разумные сроки - нет.

Так что имея уже навороченный проект в кубе, я вынужден подключать qspi через него. Хотя бы для того, чтобы куб указал мне, что ешо ноги занимает ранее задействованная периферия и сам эти ноги передвинул.

Так все-таки, почему в последней версии куба cs ноги не настраиваются?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...