Цитата(KnightIgor @ Feb 27 2014, 20:38)

А чему-таки равны FLASH_BASE и VECT_TAB_OFFSET? Похоже, происходит переназначение указателя на несуществующую векторную таблицу, и все идет прахом.
Если Вы в проекте не делали нестандартных телодвижений по изменению адреса загрузки программы (например, оставляя место для bootloader), просто закомментируйте строчку: значение VTOR после сброса есть то, что доктор прописал, и не нужно его трогать без особой нужды.
P.S. Я, надеюсь, Вы знаете, что такое VTOR?
FLASH_BASE и VECT_TAB_OFFSET это константы.
До выполнения этой строчки VTOR=0 , после TBLOFF=0x00100000 TBLBASE=0
Почему-то когда программа попадает на эту строчку при припаянном кварце 16МГц , тактовая частота процессора берётся из PLL и равна 64МГц, что недопустимо !
PLLSRC = 1 (т.е. PLL тактируется от HSE)
PLLNUL = 4 (т.е. множитель х12)
PLLDIV = 2 (т.е. делитель /3)
SW =3 (т.е. на AHB подаётся частота PLL)
HPRE=0 (т.е. делитель AHB выключен)
Переключение SW вручную на другие значения непосредственно перед этой строчкой позволяет её успешно пройти и работать дальше.
Глупый вопрос:
Как отредактировать файл system_stm32lxx.c ? Он не хочет редактироваться ни в Кейле, ни в блокноте.
Заранее спасибо !