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

Проблемы с SPI интерфейсом

Привет, Коллеги!

Как правильно подключить к микроконтроллеру с 3,3В питанием SPI дисплей (тоже с 3х вольтовым питанием, получаемым из 5В с помощью отжельного LDO???

Я имею 3 разные платы контроллеров (EFM32GG332) и 3 разные платы контроллеров (EFM32GG380), а также по три TFT LCD 2,4 inch и TFT LCD 3.2 inch с одинаковой микросхемой контроллера LCD ILI9341. Во всех контроллерах залит одинаковый софт. Пять плат контроллеров работают со всеми 6 TFT дисплеями. А одна плата работает только с 3! Не могу понять причину! Подазреваю, что дело в различных уровнях напряжения питания микроконтроллера и контроллера LCD. Других причин не вижу! И разъемы подключения, и программы в микроконтроллерах одинаковые... Может кто-либо что нибудь подсказать?

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


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

23 минуты назад, onic777 сказал:

Может кто-либо что нибудь подсказать?

Осциллограф вам все подскажет.

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


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

25 минут назад, onic777 сказал:

Других причин не вижу! И разъемы подключения, и программы в микроконтроллерах одинаковые... Может кто-либо что нибудь подсказать?

Из того что "программы одинаковые" совсем не следует, что нет какой-то разницы в их конфигурации из-за которой "не работает". Или скрытых багов в ПО или в схемотехнике.

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


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

5 hours ago, jcxz said:

Из того что "программы одинаковые" совсем не следует, что нет какой-то разницы в их конфигурации из-за которой "не работает". Или скрытых багов в ПО или в схемотехнике.

Видимо, уважаемый jcxz, я не корректрно выразился. правильне было сказать ПРОШИВКИ ОДИНАКОВЫЕ со всеми вытекающими последствиями...

 

5 hours ago, Vasily_ said:

Осциллограф вам все подскажет.

Уважаемый Вася!

Если бы все было так просто!

Как бы это сказать, я таких простеньких и умных советов в общем то не ждал...

Я с осциллографами работаю с 1968 года!!! Вот как то так!

И в этом конкретном случае ничего конкретного и необычного осцилл не показал! Уровни в норме! На 0.1В ниже уровня питания. Все сигналы имеются... Смотрел и электронно-лучевыми осциллами (С1-83 и С1-114) и цифровым! Никаких шильев! Все сигналы красивые, как из учебника. Но это я Вам так, для справки сообщаю...

 

 

 

 

 

Изменено пользователем onic777

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


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

Для таких дисплеев важны тайминги при инициализации, типа задержки после сброса и т. п. Если с осциллограммами все в порядке, то скорее всего одна из плат не выдерживает тайминги (проще говоря, задержки). Почему? Причин может быть несколько, к примеру, другой кварц, или он битый, некорректно написанный софт, который в разных случаях работает по-разному...

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


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

1 hour ago, onic777 said:

Уважаемый Вася!

"мне за Васю обидно". Чего же Вы сразу не рассказали о ваших изысканиях с осциллографом ? 

Сделайте перекрестную запитку работающего контроллера и неработающего дисплея и наоборот.

Возможно дело в какой-либо помехе по линиям питания или SPI. Коннекторы проверьте. Да, еще несколько раз. Лучше с микроскопом. Плату от флюса протрите.

Снизьте частоту тактирования SPI на 10-50 %. Частичная проверка рекомендации gerber

И что значит "не работает" - вообще не понятно.

 

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


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

1 hour ago, onic777 said:

Я с осциллографами работаю с 1968 года!!!

И не научились находить ошибки ! Тогда Вы точно бессмертный !

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


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

Перекресную запитку сделал! Запитку дисплея от источника питания микроконтроллера также сделал! Ничего не дало... Коннекторы проверил! Использовал несколько! Для связи используются стандартные компьютерные плоские кабельки длиной 150мм с двумя штырьевыми разъемами PC-10 (2x5). Под микроскопом все платы облазил! Да ведь если бы там была гряз какая то или стружка или волосина - другие бы дисплеи с этой платой не работали. Кварцы проверены, вск работают на 48MHz. Нак счет кривого софта который "который в разных случаях работает по-разному..." - так нет же этих разных случаев!!! Прошивка одна и та же! программа линейная (этап инициализации), никаких ветвлений или различных параметров нет...

Воч чего действительно не делал - так это не пробовал снижать скорость SPI! Обязательно попробую, гогда до города доберусь вечером! Сейчас я в дороге...:biggrin:

 

13 minutes ago, x893 said:

И не научились находить ошибки ! Тогда Вы точно бессмертный !

Ну на счет ошибок, увы, но такое впервый раз... А вот на счет бессмертного - жизнь покажет... Пока вот под 70 но тружусь... :biggrin:

Изменено пользователем onic777

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


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

2 часа назад, onic777 сказал:

Видимо, уважаемый jcxz, я не корректрно выразился. правильне было сказать ПРОШИВКИ ОДИНАКОВЫЕ со всеми вытекающими последствиями...

И что? Что изменилось? программа = прошивка.

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


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

"Сотрите" контроллер перед прошивкой по-максимуму. Если есть внешняя EEPROM - также может влиять (неизвестно что там за параметры-данные и как используются прошивкой). Проверьте маркировку контроллера. Может чипы разных версий. Батарейка-таблетка тоже возможный "фактор", проверьте напряжение.

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


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

To K155la3

Контроллер перед прошивкой стирается полностью весь 1МВ! Внешней EEPROM нет! Flash память программ 1 МВ встроенна. Контроллер сто раз проверен! Схема моя, плата моя, сборка моя, перед программированием рабочей программы в контроллер записывается тестовая программа, которая побитно проверяет все выходы... Батарейка новая и она заводится только на RTC...

То tonyk_av

Питание на плате контроллера - входное напряжение от 1,2В до 5В подается через диод SS14 и дроссель 2,2uH на конденсатор 6V-100,0 // 1,0: далее повышающий конвертор на микросхеме MAX1674 c дросселем 220mH до 5,04В при токе до 600mA; далее конденсатор 6V-100,0 // 1,0 и LDO AP2112-3,3V и опять конденсатор 6V-100,0 и в каждой точке подключения питания с обратной стороны платы стоят 10 кондеров по 0,1... (контроллер питается от 3,3V.

Питание на плате LCD - конденсатор 6V-10,0; LDO AP2112-3,3V; еще 6V-10,0 и // 1,0 // 0,1

Ну вот и все...

Приехал домой и попробовал снижать скорость SPI. Первоначально стоял 24MHz. Снижение до 6 МНz ничего не изменило...

Увы...

 

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


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

тогда присоединяюсь

3 hours ago, gerber said:

Для таких дисплеев важны тайминги при инициализации, типа задержки после сброса и т. п. Если с осциллограммами все в порядке, то скорее всего одна из плат не выдерживает тайминги (проще говоря, задержки). . . .

Может быть какая-то из задержек стоит на грани предела в ту или иную сторону. На одних платах эта грань "прокатывает", на других - нет.

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


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

To k155la3

Да! Я думаю что это таки одна из возможных причин! Во всяком случае я с таким несколько раз сталкивался... Правда именно таких плат я сделал уже наверное шт 40, на с этим столкнулся впервые... Для начала попробую в каждую соманду поставить по задержке в 1mS после каждого передаваемого байта. Сейчас у меня никаких задержек, кроме как для сброса, вообще нет... Посмотрю, что изменится...

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


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

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

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

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

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

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

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

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

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

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