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

 
 
> Калибровочные константы MSP430F249
chernenko
сообщение Dec 3 2010, 11:23
Сообщение #1


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

Группа: Свой
Сообщений: 170
Регистрация: 8-02-06
Из: Москва
Пользователь №: 14 116



Стерлись калибровочные константы.
Сами константы я знаю.
Как правильно перезаписать?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
jorikdima
сообщение Dec 3 2010, 12:50
Сообщение #2


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Использовать работу с флэш памятью МСП. Читать соответствующий раздел Юзер Гида smile.gif
Go to the top of the page
 
+Quote Post
chernenko
сообщение Dec 3 2010, 13:13
Сообщение #3


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

Группа: Свой
Сообщений: 170
Регистрация: 8-02-06
Из: Москва
Пользователь №: 14 116



Цитата(jorikdima @ Dec 3 2010, 15:50) *
Использовать работу с флэш памятью МСП. Читать соответствующий раздел Юзер Гида smile.gif


Читал, писал, прошивал ничего не меняется.

Код
    *(volatile unsigned short*)0x0120 = WDTPW + WDTHOLD;

    *(volatile unsigned short*)0x012C = 0x0A500; /* Lock = 0 */
    *(volatile unsigned short*)0x012A = 0x0A55A;    
    *(volatile unsigned short*)0x0128 = 0x0A540; /* WRT = 1 */

    *(volatile unsigned short*)0x10FC = 0x9c;  /* program Flash word */

    *(volatile unsigned short*)0x0128 = 0x0A500; /* WRT = 0 */
    *(volatile unsigned short*)0x012C = 0x0A510; /* Lock = 1 */

    *(volatile unsigned short*)0x0120 = WDTPW + WDTCNTCL + WDTSSEL;


Вот пример того что я делаю.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Dec 3 2010, 13:27
Сообщение #4


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

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



Цитата(chernenko @ Dec 3 2010, 16:13) *
Вот пример того что я делаю.

Ну и что, по-вашему, люди должны сидеть и сверять по справочнику адреса и биты?
Намного красивее смотрятся мнемонические обозначения:
Код
void SaveToFlash(unsigned int *FlashPtr, unsigned int *DataPtr, unsigned int NumOfWords)
{  
    _DINT();
        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
        
        memcopy(FlashPtr, DataPtr, NumOfWords);

        FCTL1 = FWKEY;                          // Clear WRT bit
        FCTL3 = FWKEY + LOCK;                   // Reset LOCK bit
    _EINT();
}


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 07:14
Рейтинг@Mail.ru


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