RadiatoR 2 24 мая, 2016 Опубликовано 24 мая, 2016 · Жалоба Само питание как идет и откуда? Скиньте скрин платы Я тоже как-то вылавливал такие косяки, что прям в окно выбрасывай - оказалось по своей дури ногу fb провел длинную по плате и при включении цепей внешнего кварца проседала напруга, dcdc добавлял и мк то улетал куда-то, то отходил в мир иной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 25 мая, 2016 Опубликовано 25 мая, 2016 (изменено) · Жалоба Выводы boot0 и 99 на земле. Питание идет от импульсного DC/DC. От него же питаются и другие устройства. Попробовал от другого источника питания. Все равно не заводится. Только после ресета. Поднял ногу Reset от площадки. Даже касание щупом тестера вывода reset запускает контроллер. КОрпус 100pin. Поэтому нету выводов PDR_ON Изменено 25 мая, 2016 пользователем DerKetzer Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 25 мая, 2016 Опубликовано 25 мая, 2016 · Жалоба Заметил одну вещь. Если в коде присутствует строчка GPIOE->PUPDR|=5; тоесть подключение внутренних подтяжек на выводы, то watchdog не перезапускает программу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 25 мая, 2016 Опубликовано 25 мая, 2016 · Жалоба Заметил одну вещь. Если в коде присутствует строчка GPIOE->PUPDR|=5; тоесть подключение внутренних подтяжек на выводы, то watchdog не перезапускает программу. Глупости какие. Вообще без понятия. Почитайте хоть что-нибудь общее ... При чём здесь подтяжка к watchdog-у и к сбросу? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 25 мая, 2016 Опубликовано 25 мая, 2016 · Жалоба Сам не понимаю как регистры портов ввода вывода могут влиять на watchdog. Но факт. Еще наличие строчки GPIOC->BSRRL|=1<<4; почему то не позволяет контроллеру начать работать после сброса watchdog ом. Магия. Коментирую строчку, заливаю. Запущенный в коде watchdog перезапускает плату в установленное время. Восстанавливаю строчку-watchdog сбрасывает в нужное время, но программа не выполняется. Сам понимаю что звучит глупо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 25 мая, 2016 Опубликовано 25 мая, 2016 · Жалоба И это происходит в вашем проекте или в пустом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aaron 1 25 мая, 2016 Опубликовано 25 мая, 2016 · Жалоба сверяйте листинги асм кода - комментируемая строчка в каком месте вставляется, что до неё в коде, что сразу после неё - может, просто проблема со стеками или что-то в таком духе. Отключите полностью оптимизацию при компиляции, создайте наконец пустой проект, как вам уже советовали. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 26 мая, 2016 Опубликовано 26 мая, 2016 (изменено) · Жалоба #include "stm32f4xx.h" volatile int i=0; int main() { RCC->AHB1ENR|=8; //тактирование порта d на котором светодиод GPIOD->MODER|=1<<26; //D13-output RCC->AHB1ENR|=1<<4; //тактирование порта E из за которого сыр бор i=1000000; while(i--); //пауза перед зажигание светодиода. 1-2 сек GPIOD->BSRRL|=1<<13; //Зажигаю светодиод GPIOE->PUPDR|=5; //строчка не позволяющая перезапуститься после срабатывания watchdog IWDG->KR=0x5555; IWDG->PR = 0x3; // 4 секунды IWDG->KR = 0xCCCC; //start wdg на 4 секунды while(1){ //пустой цикл }; } Изменено 26 мая, 2016 пользователем IgorKossak [codebox] для длинного кода. [code]-для короткого!!! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба GPIOD->BSRRL|=1<<13; //Зажигаю светодиод Можно использовать без "|". То есть если в этом коде без строки GPIOE->PUPDR|=5; работает нормально, а с ней нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба Можно использовать без "|". То есть если в этом коде без строки GPIOE->PUPDR|=5; работает нормально, а с ней нет? Да. Еще губит строчка GPIOC->BSRRL|=1<<4; это из рабочего проекта Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 26 мая, 2016 Опубликовано 26 мая, 2016 (изменено) · Жалоба поставьте GPIOE->PUPDR|=5 после инициализации вд Не помню, как там вд устроен, но у меня эта функция прекрасно работает. Замените свой вд на ее вызов void WD_init(void) { // DBGMCU->APB1FZ|=DBGMCU_APB1_FZ_DBG_IWDG_STOP;// Debug WD stop IWDG->KR=0x5555;// Enter protection IWDG->PR=0x03;// Precaler = 32 IWDG->RLR=0xFFF;// Reload value IWDG->KR=0xAAAA;// Refresh to RLR val IWDG->KR=0xCCCC;// Start timer } Изменено 26 мая, 2016 пользователем IgorKossak [codebox] для длинного кода. [code]-для короткого!!! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба на descovery то все работает. а во на готовом устройстве нет. ничто нигде не замыкает. Watchdog то сбрасывает контроллер, осциллографом вижу что дергается ножка reset. Но программа не запускается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба Одинаковые программы на дискавери и на вашем девайсе ведут себя по разному? Если да, то проблема либо в плате, либо в пайке. Других вариантов собственно и нет. Я вам предложил показать топологию несколько сообщений назад. Может что и разглядели бы форумчане Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DerKetzer 0 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба Часть печатки. Целиком только в альтиумовском файле могу Целиком мне нельзя.TOPSECRET Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 26 мая, 2016 Опубликовано 26 мая, 2016 · Жалоба Ну вы хоть обозначения поставьте, а то мало понятно, а вообще вам стоит почитать правила разводки (легко гуглятся). Хотя бы про 90 градусные проводники. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться