Здравствуйте Господа.
Обнаружил один непонятный эффект, немогу его побороть. Прошу высказаться.
Есть МК STM32F... Запитан от стабильных 2.98 вольт. К нему напрямую по линиям DCD, RI,DTR,STATUS,TXD,RXD подключен SIM900 больше напрямую их ничего не связывает.
Питание МК и задействованные ноги ниже, см рис (MK.jpg):
SIM900 запитан через стабилизатор напряжения и в цепи стоит полевой транзистор.
Напряжения питания 3.98 вольт.
Если модуль зависает то можем передёрнуть питание, на форуме этом неоднократно эта тема затрагивалась, поэтому собственно решил написать в этот форум а не в STM32.
см.рис (PWRSim900.jpg):
Проблема заключается в том, что в момент подачи питания на всю схему, если полевик закрыт, то МК не стартует. Если же полевик открыть принудительно, либо просто убрать и поставить вместо него перемычку на землю, и подать питание то схема стартует, и МК и SIM900 всё отлично работает, голос смс данные скольугодно долго.
Известно что, если полевик закрыт, то на DCD, RI,DTR,STATUS,TXD,RXD присутствует от 2.64 до 3 вольт. Коль на других ножках МК такого напряжения нет, очевидно что оно приходит с SIM900. В момент подачи питания на МК, на всех ножках МК фиксирую осцилографом повышения напряжения и последующий резкий спад. см рис(Oscil_MK_PWR_IO.GIF):
На осцилограмме синий график отображает напряжения с ножки МК в момент подачи питания на всю схему.
Жёлтая линия отображает напряжения с VDD_1 - VDD_4 D в момент включения.
Также успешный запуск происходит в том случае если питание на SIM900 не подаём вовсе.
Данные показания осцилографа характеризуют успешный старт всей схемы(полевик был выпаян и запаяна перемычка).
На графике видно что спустя 360 мкс после подачи питания, было изменение по напряжению, это в процедуру "SystemInit " было добавлено включение светодиода на соседней ножке МК, до смены частоты и прочей инициализации.
Код
LoopFillZerobss:
ldr r3, = _ebss
cmp r2, r3
bcc FillZerobss
/* Call the clock system intitialization function.*/
bl SystemInit
В том случае если МК не стартует, через 360 мкс данного изменения напряжения нет, т.е. явный признак того на дошёл до данных инструкций..
У меня вопрос, что за всплеск напряжения на ножках МК в момент подачи питания?
Другие МК подключенные к данному источнику напряжения данный всплекс переносят адекватно, стартуют, работают.
Выскажитесь пожалуйста Господа знатоки по моей проблеме. У самого версии закончились.. возможно есть смысл поставить резисторы по линиям DCD, RI,DTR,STATUS,TXD,RXD дабы минимизировать втекающий ток в МК до его включения.. и посмотреть что изменится..