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

 
 
 
Reply to this topicStart new topic
> Помогите советом (DataFlash MC56F8322)
locas
сообщение Sep 23 2006, 13:16
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 33
Регистрация: 29-07-05
Пользователь №: 7 194



Здравствуйте!
Помогите пожалуйста разобраться в проблеме.
Задача: необходимо обеспечить хранение данны в DataFlash процессора MC56F8322.
Разработка ПО осуществляется в среде CodeWarrior v.6.0.
После программирования процессора по последовательному интерфейсу, управление передается основной программе и работа с DataFlash проходит штатно, данные пишутся/читаются.
При рестарте процессора, предварительно записанные после загрузки программы данные из DataFlash читаются правильно, но не записываюся.
Выяснилось, содержимое регистра FMCLKD (регистр управления частотой генератора работы с Flash)
после отработки загрузчика = 0xCE (206), а при рестарте = 0x80 (128).
Согласно руководству, регистр FMCLKD записывается один раз, и его содержимое изменяться в дальнейшем программно не может.
В программе инициализации есть следующие строчки:
void PE_low_level_init(void)
{
.
.
/* FMCR: AEIE=0 */
output( FMCR, input( FMCR ) & ~256 );//регистр конфигурации Flash
/* FMCLKD: PRDIV8=1,DIV=37 */
output( FMCLKD, input( FMCLKD ) | 101 );//регистр управления частотой генератора работы с Flash
.
.
}
Получается, что при рестарте в регистр FMCLKD записывается 0x80 (128), и команды инициализации его состояния не изменяют.
Кроме как в PE_low_level_init(void) обращений к этому регистру в программе больше нет.
Почему же он тогда так устанавливается, в чем причина?????????
Зараннее спасибо!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 17th June 2025 - 23:22
Рейтинг@Mail.ru


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