Ответ: снова смотрим сноску:
NOTES: 1. The cumulative program time must not be exceeded when writing to a 64-byte flash block. This parameter applies to all programming methods: individual word/byte write and block write modes.
Второе предложение гласит: Этот параметр применяется ко всем методам программирования: индивидуальной записи слов/байт и режиму записи блока.
Кроме того, в режими записи блока можно писать несколько блоков подряд. В этом случае Cumulative program time будет суммироваться или как?
В документе SLAU049E MSP430x1xx Family User’s Guide смотрим параграф 5.3.3 Writing Flash Memory стр.5-8(138)
на картинке разложено время записи слова/байта и значение tWord = 35/fFTG определяется флэшконтроллером и без разницы откуда была запущена подпрограмма записи.
void FlashWriteSegment(uint8_t *dst, uint16_t *data) { unsigned int old_wdt; int index = 0; dst &= 0xFE00; old_wdt = WDTCTL; WDTCTL = WDTPW + WDTHOLD; __disable_interrupt(); FCTL3 = FWKEY; FCTL1 = FWKEY | WRT; for(; index < 256; index++) *dst = *(data + index); FCTL1 = FWKEY; FCTL3 = FWKEY | LOCK; WDTCTL = WDTPW + ( old_wdt & 0x00ff ); __enable_interrupt(); }