реклама на сайте
подробности

 
 
> Проблема с аппаратным сбросом ST912FAW44
Zandy
сообщение Feb 5 2010, 18:53
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 153
Регистрация: 5-03-05
Из: Москва
Пользователь №: 3 098



Контроллер ST912FAW44.
Если PLLом выставляю частоту 96МГц не работает сброс по входу RSTI. При нажатии на кнопку все подвисает.
Если уменьшить частоту делителями PLL, ну хотя бы до 60МГц, все прекрасно, сброс проходит.
Пробовал разные кварцы, естественно с корректировкой PLL, и на 12 и на 25МГц - один хрен.
В чем дело? Частота 96МГц - штатная, да и работает все на ней нормально,... кроме сброса. crying.gif

Самое главное, что на этом выводе цепочка сброса и по питанию (резистор на плюс, конденсатор на землю).
Т. е. холодный сброс при включении питания проходит, а вот на горячую не получается.

Сообщение отредактировал Zandy - Feb 5 2010, 19:00
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MALLOY2
сообщение Feb 6 2010, 16:22
Сообщение #2


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



Код инициализации показывайте, телепаты покинули этот форум давным давно....

При включении питания девайс всегда стартует ?, а потом если нажать ресет он виснет ?

Может вы PLL инициализируете раньше чем программируете циклы ожидания флеш ?

Как вы программируете циклы ожидания флеш ?

Вот мой пример инициализации циклов.

Цитата
; --- wait states Flash confguration
LDR R0, = 0x00000000 ;Write a Write Flash Configuration
LDR R1, = 0x60 ;Register command (60h) to any word
STRH R1, [R0] ;address in Bank 1.

ADD R0,R0,#0x3040 ;Write a Write Flash Configuration
LDR R1, = 0x3 ;Register Confirm command (03h)
STRH R1, [R0] ;2Wstaites in read,PWD,LVD enabled,
;High BUSCFG.
REPT 6
NOP
ENDR


P.S. уменя банки местами поменяны.
Go to the top of the page
 
+Quote Post
Zandy
сообщение Feb 6 2010, 19:28
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 153
Регистрация: 5-03-05
Из: Москва
Пользователь №: 3 098



Код инициализации, как я уже сказал взят из фирмваре. Написан на Си

FMI_Config(FMI_READ_WAIT_STATE_2, FMI_WRITE_WAIT_STATE_0, FMI_PWD_ENABLE,\
FMI_LVD_ENABLE, FMI_FREQ_HIGH);/*Insert 2 Wait States for read*/

SCU_PLLFactorsConfig(192, 12, 2); /* PLL factors Configuration based on*/
/* a OSC/Crystal value = 12Mhz*/
SCU_PLLCmd(ENABLE); /* PLL Enable and wait for Locking*/
SCU_RCLKDivisorConfig(SCU_RCLK_Div1); /* RCLK @96Mhz */
SCU_HCLKDivisorConfig(SCU_HCLK_Div1); /* AHB @96Mhz */
SCU_FMICLKDivisorConfig(SCU_FMICLK_Div1); /* FMI @96Mhz */
SCU_PCLKDivisorConfig(SCU_PCLK_Div2); /* APB @48Mhz */
SCU_MCLKSourceConfig(SCU_MCLK_PLL); /* MCLK @96Mhz */
SCU_BRCLKDivisorConfig(SCU_BRCLK_Div2);

//вот первая функция:

void FMI_Config(u16 FMI_ReadWaitState, u32 FMI_WriteWaitState, u16 FMI_PWD,\
u16 FMI_LVDEN, u16 FMI_FreqRange)
{
/* Configure the write wait state value */
if (FMI_WriteWaitState == FMI_WRITE_WAIT_STATE_1)
{
FMI->CR |= FMI_WRITE_WAIT_STATE_1;
}
else
{
FMI->CR &= FMI_WRITE_WAIT_STATE_0;
}

/* Write a write flash configuration register command */
*(vu16 *)FMI_BANK_1 = 0x60;

/* Configure the flash configuration register */
*(vu16 *)(FMI_BANK_1|FMI_ReadWaitState|FMI_PWD|FMI_LVDEN|FMI_FreqRange) = 0x03;
}
// ну и т. д.


При включении питания девайс всегда стартует ?, а потом если нажать ресет он виснет ?
Да, именно так. Причем только на частоте 96 Мгц. На 48 все нормально ресетится.

Может вы PLL инициализируете раньше чем программируете циклы ожидания флеш ?
Нет не раньше. Из кода, который я привел выше, это видно. Два цикла ожидания
Go to the top of the page
 
+Quote Post
Zandy
сообщение Feb 10 2010, 18:19
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 153
Регистрация: 5-03-05
Из: Москва
Пользователь №: 3 098



Спасибо, Malloy!
Все-таки дело было в startup инициализационном коде.
Там тоже были прописаны настройки, и вот они-то и были неверными.
Топик можно удалять или сносить в раздел "начинающим" unsure.gif
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 15:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01469 секунд с 7
ELECTRONIX ©2004-2016