Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Объединение EINT и ISP
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Serg_el
Столкнулся с тем, что у мк LPC1756 объединены EINT0 и вход в ISP (порт 2.10). Получается, что после RESET (по любой причине) и при наличии на входе 0 (а 0 будет давать некий внешний концевик устройства), мк будет входить в ISP режим.

Как я понимаю в данном случае можно использовать дополнительный выход мк для того, чтобы управляя транзистором разрешать появление 0 на входе ISP только после того, как внутренний бут загрузчик провел проверку состояния P2.10.

Неужели все так усложнено?
Сергей Борщ
Цитата(Serg_el @ Jan 14 2014, 21:41) *
Неужели все так усложнено?
Да, так и есть. Но тут палка о двух концах - у STM32 под это дело отведена отдельная нога, с одной стороны вроде бы хорошо, с другой - вы свою P2.10 можете хоть на выход использовать безболезненно, а там эта нога, считайте, выкинута.

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

А вам действительно нужно вешать концевик на EINT0? Есть же куча других ног генерящих прерывание. Можно вход захвата таймера использовать, можно опрашивать в прерывании таймера - заодно и антидребезг получится автоматически.
KRS
Цитата(Сергей Борщ @ Jan 15 2014, 12:06) *
Но и снять такую защиту уже нельзя.

Можно, но уже только изнутри пользовательской программы.

Serg_el
Цитата(Сергей Борщ @ Jan 15 2014, 12:06) *
Да, так и есть. Но тут палка о двух концах - у STM32 под это дело отведена отдельная нога, с одной стороны вроде бы хорошо, с другой - вы свою P2.10 можете хоть на выход использовать безболезненно, а там эта нога, считайте, выкинута.

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

А вам действительно нужно вешать концевик на EINT0? Есть же куча других ног генерящих прерывание. Можно вход захвата таймера использовать, можно опрашивать в прерывании таймера - заодно и антидребезг получится автоматически.


Да, это понятно, что есть варианты обхода, просто удивился, что на такой "опасный" вход ISP повесили вход с отдельным вектором прерывания.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.