Не заводится STM32F051 + 320x240 цветной дисплей

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение WiseLord »

Может, кто-то имел дело с цветными дисплеями на ILI9340C/ILI9341, работающими по SPI...

Уже давно покупал и плату STM32F0Discovery, и дисплей на Aliexpress, но только сейчас дошли руки до начала освоения STM32.

Нашёл в сети пример библиотеки, но для STM32F4, переделал под STM32F0. Результат у меня на GitHub.

Собственно, наблюдается следующий эффект - какую-то инициализацию дисплей проходит, но картинки на экране в итоге нет. Вместо этого на экране по вертикали (вдоль узкой стороны) чёрные и белые полосы толщиной 1 пиксел, из-за чего он кажется серым.

В основном цикле main() я с некоторой задержкой попеременно выдаю по SPI команду экрану на включение/отключение режима инверсии цвета - и команда точно проходит, так как черные полоски становятся белыми, белые - чёрными. Это, как минимум, гарантия того, что SPI проинициализирован правильно.

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


Я тут попытался снять видео телефоном, но качество преотвратное. Но, в принципе, увидеть, что полоски чередуются - можно.



Может, есть какие-то тонкости с этими дисплеями? Кто сталкивался?
Последний раз редактировалось WiseLord Вс июн 07, 2015 08:34:53, всего редактировалось 1 раз.
Реклама
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение WiseLord »

Интересно, на варианте программной реализации SPI экранчик завёлся и работает.

Пока я доволен и этим, но хотелось бы понять, что не так с аппаратным SPI.

Изображение Изображение
Реклама
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение dosikus »

WiseLord писал(а): Пока я доволен и этим, но хотелось бы понять, что не так с аппаратным SPI.
А где работа с аппаратным? По ссылке только ручное ногодрочерство.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение WiseLord »

Вы git пользовались раньше? Там есть история коммитов, где всё видно. Да и написал же я, что заработал именно вариант с программной реализацией SPI. Поправил в первом сообщении ссылку на конкретный коммит, где ещё не работало.

Вообще, сегодня утром удалось завести дисплей уже на аппаратном SPI. Сейчас вот пытаюсь ещё и CS вывод аппаратно (I2C NSS) использовать, помимо MOSI/SCK.

P.S. Зашибись.. вычитал в Errata на STM32051, что у него проблемы с работой на режимах SPI <= 8 бит. Особенно, в режиме FullDuplex + на приём - вроде как, несмотря на регистры, идут всё те же 16 бит.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение dosikus »

P.S. Зашибись.. вычитал в Errata на STM32051, что у него проблемы с работой на режимах SPI <= 8 бит. Особенно, в режиме FullDuplex + на приём - вроде как, несмотря на регистры, идут всё те же 16 бит.
http://kazus.ru/forums/showpost.php?p=7 ... ostcount=7

Кстати CS дергать каждую транзакцию совершенно не обязательно ...
И если хотите освоить STM32 -бросайте SPL и кубокал к чертовой матери.
Реклама
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение WiseLord »

Ну.. SPL хорош в том смысле, что в нем хотя бы подсмотреть можно реализацию некторых базовых вещей, а так-то он тот же "чистый" CMSIS использует. А кубокал - это Вы что так назвали?
Реклама
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение dosikus »

WiseLord писал(а):Ну.. SPL хорош в том смысле, что в нем хотя бы подсмотреть можно реализацию некторых базовых вещей
Snippets для F0 чем не устраивают?
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Не заводится STM32F051 + 320x240 цветной дисплей

Сообщение WiseLord »

Я только пару недель как взялся за STM32, и пока ещё толком не знаю даже как к нему подходить, какие есть библиотеки и прочие моменты. Пока худо бедно разобрался с GPIO, RCC, I2C, вот за SPI взялся. Вроде какая-то общая картина в голове по поводу STM уже начинает складываться.

Плюс сложности ещё и с тем, что в Linux приходится копать глубже - нет зоопарка готовых заточенных под STM32 IDE, где нажав пару кнопок, сразу получишь заготовку проекта для нужного контроллера, где не надо париться, какие ld-скрипты подгружать для размещения программы в адресном пространстве, как подключить нужный startup_*.s файл, сформировать Makefile для проекта и т.д.

Для AVR-ок я уже выстроил достаточно комфортную для себя среду для разработки, а тут пока только первые шаги делаю. Для QtCreator (нравится мне он) сделал шаблоны для быстрого создания рабочего проекта с подключением всех требуемых зависимостей, упомянутых выше. Ещё вот разобраться, как arm-none-eabi-gdb подключить в нём для отладки через SWD - вообще будет удобно.

Кстати, дисплей уже замечательно работает через SPI, если кому-то интересна библиотека для STM32F0Discovery - можно взять здесь. А я пока буду при наличии свободного времени потихоньку выпиливать из неё всё лишнее, вроде SPL.
Ответить

Вернуться в «ARM»