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

 
 
> Вопрос по использованию FLASH данных, Вопрос по использованию FLASH данных
MihailS
сообщение Jun 10 2008, 03:51
Сообщение #1


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

Группа: Свой
Сообщений: 124
Регистрация: 28-01-08
Из: Красноярск
Пользователь №: 34 493



Подскажите пожалуйста, как производить запись, модификацию значений во flash данных из программы на С.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
MrYuran
сообщение Jun 10 2008, 04:34
Сообщение #2


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Код
void SaveToFlash(void)
{                
  char *FlashPtr;
  char *mem_ptr;
  int kk;
  mem_ptr = (char *)&stflash_Data;
    _DINT();
    FlashPtr = (char*) flash_A;    // Initialize Flash_A pointer  
    
    FCTL1 = FWKEY + ERASE;                // Set Erase bit
    FCTL3 = FWKEY;                        // Clear Lock bit
    *FlashPtr = 0;                       // Dummy write to erase Flash segment
    FCTL1 = FWKEY + WRT;                  // Set WRT bit for write operation    
    ...
    // Write Something Data To Flash
    ...
    FCTL1 = FWKEY;                          // Clear WRT bit
    FCTL3 = FWKEY + LOCK;                   // Reset LOCK bit    
    _EINT();
}


Ну, вот как-то так можно записать данные во флеш.
Начисто содрано с мануала.
Если не надо стирать сегмент (пишем на чистое место), ERASE ставить не надо.

PS: чуть не забыл. Flash_A у меня указывает на сегмент данных А.
#define flash_A 0x1080u // адрес начала сегмента данных А


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
VAI
сообщение Jun 10 2008, 07:27
Сообщение #3


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Вот ещё:
http://electronix.ru/forum/index.php?showt...amp;#entry33211
----------
Вначале делаете копию сегмента в ОЗУ, модифицируете, потом стираете, куда будете писать, и записываете сегмент...


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post

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

 


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


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