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

 
 
> Поясните пожалуйста несколько моментов по примеру из boot.h
Radi0
сообщение Aug 2 2016, 14:41
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 30-08-10
Пользователь №: 59 174



Добрый день уважаемые форумчане. Поясните пожалуйста несколько моментов по примеру из boot.h


Код
void boot_program_page (uint32_t page, uint8_t *buf)                                    
{
    uint16_t i;
    uint8_t sreg;
    sreg = SREG;
    asm("cli");                                                                                                // Disable interrupts.    
    
    eeprom_busy_wait();
    boot_page_erase(page);
    boot_spm_busy_wait();                                                                                    // Wait until the memory is erased.
    for (i=0; i<SPM_PAGESIZE; i+=2)
    {
        // Set up little-endian word.
        uint16_t w = *buf++;
        w += (*buf++) << 8;
        boot_page_fill_safe(page + i, w);
        //boot_page_fill (page + i, w);
    }
    boot_page_write(page);                                                                                    // Store buffer in flash page.
    boot_spm_busy_wait();                                                                                    // Wait until the memory is written.
    // Reenable RWW-section again. We need this if we want to jump back
    // to the application after bootloading.
    //boot_rww_enable ();
    // Re-enable interrupts (if they were ever enabled).
    boot_rww_enable();
    SREG = sreg;
    boot_spm_interrupt_enable();
    
    //asm("sei");                                                                                            // Enable interrupts
}


1. Что будет если не использовать макрос boot_page_erase(page); ?
2. Возможно ли исправить только несколько слов в странице? Используя boot_page_fill() с конкретными адресами а потом запуская boot_page_write(page);?

Контроллер Atmega 128

Заранее благодарю.

Сообщение отредактировал Radi0 - Aug 2 2016, 14:43
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 3rd September 2025 - 03:16
Рейтинг@Mail.ru


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