k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба повторный повтор повтора Если Ваш slave после START не откликается на свой адрес, это означает, что он или "в завесе" (достаточно маловероятно), или что-то накосячено с аппаратной частью, схема включения FM31256. Кварц 32768 работает устойчиво ? Там есть контрольно-калибровочный выход. Адреса A1 A2 на GND ? итд Ваша принципиальная схема включения мс. Батарея подключена ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Smen 3 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба Припоминаю, что как-то была похожая проблема с микросхемой RTC (правда, насколько помню, она тупо не отзывалась на команду). Просто заменил на другой чип (в смысле не экземпляр, а партнамбер), и выпускали в серию лет шесть. Сэмпл покупали в Мегеэлектронике, так что возможно дело было в китайской подделки (поскольку использовалась 100 скорость, грешить на тормознутость не приходится). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sidy 1 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба On 7/22/2022 at 3:25 AM, k155la3 said: повторный повтор повтора Если Ваш slave после START не откликается на свой адрес, это означает, что он или "в завесе" (достаточно маловероятно), или что-то накосячено с аппаратной частью, схема включения FM31256. Кварц 32768 работает устойчиво ? Там есть контрольно-калибровочный выход. Адреса A1 A2 на GND ? итд Ваша принципиальная схема включения мс. Батарея подключена ? Вот схема включения Батарея подключена. Кварц стабилен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 (изменено) · Жалоба 58 минут назад, sidy сказал: . . . Батарея подключена. Кварц стабилен. Если вход PFI не используется, он дб подключен на gnd. Цитата Note PFI input voltage must not exceed 4.5 V. Какие номиналы R6, R7. Питание PIC18 очевидно тоже 5 В. Проверьте, снимается ли затык ответа слейва по его аппаратному сбросу через вход ~RST. Длина линий 44, 45 небольшая ? ps есть еще узел WDT назначение которого я не стал исследовать. Но по функциональной схеме он может влиять на блок интерфейса I2C и "тупить" его ответ. Можно посмотреть осциллографом, что творится на "выходе" ~RST Спойлер Изменено 22 июля, 2022 пользователем k155la3 дополнение ps Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 220 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба Второй блокировочный конденсатор отсутствует — каким образом мыслится работа КМОП схемы при таком питании? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sidy 1 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба On 7/22/2022 at 9:47 AM, k155la3 said: Если вход PFI не используется, он дб подключен на gnd. Какие номиналы R6, R7. Питание PIC18 очевидно тоже 5 В. Проверьте, снимается ли затык ответа слейва по его аппаратному сбросу через вход ~RST. Длина линий 44, 45 небольшая ? ps есть еще узел WDT назначение которого я не стал исследовать. Но по функциональной схеме он может влиять на блок интерфейса I2C и "тупить" его ответ. Можно посмотреть осциллографом, что творится на "выходе" ~RST Reveal hidden contents Да, действительно - PFI переподключил на землю. (Не помогло) R6, R7 1 кОм Питание PIC18 тоже +5 В. Он не виснет намертво - следующий запрос может пройти нормально. Раз 10 за минуту происходит такой затык. Длина линий небольшая. Вот что на выходе RST (написано, что если не используется оставьте не подключенным) On 7/22/2022 at 9:52 AM, Plain said: Второй блокировочный конденсатор отсутствует — каким образом мыслится работа КМОП схемы при таком питании? Какой второй блокировочный конденсатор? По питанию батареи? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Smen 3 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба В 22.07.2022 в 10:16, sidy сказал: Вот что на выходе RST Так получается, что девайс регулярно ресетится. P.S.: А вот если бы был логический анализатор, то было бы сразу видно, в какие моменты это происходит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба 32 минуты назад, sidy сказал: . . . R6, R7 1 кОм . . . Он не виснет намертво - следующий запрос может пройти нормально. Раз 10 за минуту происходит такой затык. Вот что на выходе RST . . . Если частота SCL небольшая, до 500 кГц, достаточно R = 4.7 к (есть ф-ла расчета) Судя по симптомам, периодически отрабатывает узел WDT/LVD, кто из них непонятно. Если запрос попадает на это время (выдачи ресета), естественно слейв не ответит. Как часто - зависит от соотношения частот обращения и возникновения ресета. Это или WDT включен по-умолчанию, или LVD отрабатывает. Отключить настройками WDT полностью. Период 5.2 с выдачи ресета держится стабильно ? Тогда см. процессы в системе, которые идут с этим периодом. 12 минут назад, Smen сказал: . . . P.S.: А вот если бы был логический анализатор, то было бы сразу видно, в какие моменты это происходит. Достаточно поставить осциллограф в режим отслеживания пиковых сигналов, и промониторить в ждущем от ~RST режиме линию питания. Если сброс "программный" - да, лог. анализатором будет удобнее. Хотя такую ситуацию можно вылавливать на отладчике или аналитически. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sidy 1 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба On 7/22/2022 at 10:43 AM, k155la3 said: Если частота SCL небольшая, до 500 кГц, достаточно R = 4.7 к (есть ф-ла расчета) Судя по симптомам, периодически отрабатывает узел WDT/LVD, кто из них непонятно. Если запрос попадает на это время (выдачи ресета), естественно слейв не ответит. Как часто - зависит от соотношения частот обращения и возникновения ресета. Это или WDT включен по-умолчанию, или LVD отрабатывает. Отключить настройками WDT полностью. Период 5.2 с выдачи ресета держится стабильно ? Тогда см. процессы в системе, которые идут с этим периодом. Проверил линию питания и сигнал ~RST: Питание стабильно. (Значит получается, что LVD не причем?) Да период получается всегда около ~5 сек. С началом обмена по i2c сброс не связан (верхний луч ~RST нижний SCL): Остается еще проверить WDT - но по описанию у него максимальный период 3 сек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 (изменено) · Жалоба У этой мс есть варианты резервирования питания или на батарею, или на конденсатор/ионистор. В док Цитата бит VBC - VBAK Charger Control. Setting VBC to ‘1’ causes a 15 µA trickle charge current to be supplied on VBAK. Clearing VBC to ‘0’ disables the charge current. Nonvolatile, read/write. Это дает настройку, нужен ли зарядный ток на Vbak Надо проверить инициализацию, возможно настройки на ионистор, а подключена батарея. Думаю связано что-то с узлом контроля питания мс. Вот схема из хорошо запрятанных AN A Design Guide to I2C F-RAM™ Processor Companions pdf В нем есть ссылки на другие AN по этой серии мс. Попробуйте убрать батарею и вместо нее поставить конденсатор (обязательно снять остаточный заряд) Спойлер ps попробуйте поменять уровни, заданные битами VTP. Если период импульсов внутреннего ресета изменится - значит проблема скорее всего в правильности настроек инициализации для данной схемы. Параллельно батарее поставьте емкость 0.1 как на схеме выше. Изменено 22 июля, 2022 пользователем k155la3 дополнение ps Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sidy 1 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба On 7/22/2022 at 12:19 PM, k155la3 said: У этой мс есть варианты резервирования питания или на батарею, или на конденсатор/ионистор. В док Это дает настройку, нужен ли зарядный ток на Vbak Надо проверить инициализацию, возможно настройки на ионистор, а подключена батарея. Думаю связано что-то с узлом контроля питания мс. Вот схема из хорошо запрятанных AN A Design Guide to I2C F-RAM™ Processor Companions pdf В нем есть ссылки на другие AN по этой серии мс. Попробуйте убрать батарею и вместо нее поставить конденсатор (обязательно снять остаточный заряд) Hide contents Я прочитал регистр 0х0А - Watchdog Control - значение 0х9E или 0b1001 1110 - т.е. получается, что WDT включен Прочитал еще регистр 0х0B - Companion Control - там все нули. И еще дополню. Процессы в программе не причем - я проверил это путем удерживание МК в состоянии сброс. А на выходе ~RST микросхемы все равно продолжает с той же периодичностью появляться сигнал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба 18 минут назад, sidy сказал: Я прочитал регистр 0х0А - Watchdog Control - значение 0х9E или 0b1001 1110 - т.е. получается, что WDT включен . . . Выключить WDT, в регистр 0x0A записать 0x1F Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sidy 1 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба On 7/22/2022 at 1:10 PM, k155la3 said: Выключить WDT, в регистр 0x0A записать 0x1F Выключил WDT. Сигнал RST исчез. Обмен работает исправно. k155la3 выражаю Вам благодарность! Спасибо. Очень помогли. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба 3 часа назад, Smen сказал: А вот если бы был логический анализатор, то было бы сразу видно, в какие моменты это происходит. Как видите, ТС обошёлся без логического анализатора Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 22 июля, 2022 Опубликовано 22 июля, 2022 · Жалоба 42 минуты назад, sidy сказал: . . . Обмен работает исправно. . . . Не понятно только, откуда взялся период 5.2с, если настройки таймера максимум 3. Удачи ! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться