本帖最后由 xlhtracy 于 2015-4-9 11:16 编辑
详解 void FlashCtl_eraseSegment (uint8_t *flash_ptr) 擦除单个闪存块段。 对于像 MSP430i204x 的MCU,如果指定的部分是信息(数据)闪存段,调用此API之前必须调用FLASH_unlockInfo。 参数 返回:无。
void FlashCtl_performMassErase (uint8_t *flash_ptr) 擦除全部闪存。对于像 MSP430i204x 的MCU,如果FLASH_unlockInfo API是提前被执行过,此API将擦除主内存和信息内存。此外注意到擦除MSP430i204x的信息闪存,会影响位于信息内存的 TLV 标定常数。 参数 返回:无。
bool FlashCtl_performEraseCheck (uint8_t ∗flash_ptr, uint16_t numberOfBytes) 该函数检测闪存中的字节,来确认他们是否被擦除了(即设置为了0xFF)。 参数 返回:SUCCESS 或 FALL。
void FlashCtl_write8 (uint8_t ∗data ptr, uint8_t ∗flash_ptr, uint16_t count) 此函数将count数量的字节数组写入到闪存。假定已经擦掉,且解锁了闪存。FlashCtl_eraseSegment 可以用来擦除一段。 参数 返回:空
void FlashCtl_write16 (uint16_t ∗data ptr, uint16_t ∗flash_ptr, uint16_t count) 此函数将count数量的16-bits字数组写入到闪存。假定已经擦掉,且解锁了闪存。FlashCtl_eraseSegment 可以用来擦除一段。 参数 返回:空
void FlashCtl_write32 (uint32_t ∗data ptr, uint32_t ∗flash_ptr, uint16_t count) 此函数将count数量的32-bits长整型数组写入到闪存。假定已经擦掉,且解锁了闪存。FlashCtl_eraseSegment 可以用来擦除一段。 参数 返回:空
void FlashCtl_fillMemory32 (uint32_t value, uint32_t ∗flash_ptr, uint16_t count) 此函数将count次的32-bits长整型数据写入到闪存。假定已经擦掉,且解锁了闪存。FlashCtl_eraseSegment 可以用来擦除一段。 参数 返回:空
uint8_t FlashCtl_getStatus (uint8_t mask) 此函数将检查状态寄存器,以确定是否已准备好写闪存。 参数 mask | FLASHCTL 读取的状态掩码值是下面量值的逻辑或: LASHCTL READY FOR NEXT WRITE FLASHCTL ACCESS VIOLATION INTERRUPT FLAG FLASHCTL PASSWORD WRITTEN INCORRECTLY FLASHCTL BUSY |
返回:下面量值的逻辑或 LASHCTL READY FOR NEXT WRITE FLASHCTL ACCESS VIOLATION INTERRUPT FLAG FLASHCTL PASSWORD WRITTEN INCORRECTLY FLASHCTL BUSY 指示FlashCtl的状态。
void FlashCtl_lockInfo (void) 该函数通常在其他 API 函数为了执行重新锁信息闪存区擦写操作后被调用。 返回值:空
void FlashCtl_unlockInfo (void) 该函数在被其他函数执行擦写操作信息闪存区之前调用。 返回值:空
uint8_t FlashCtl_setupClock (uint32_t clockTargetFreq, uint32_t clockSourceFreq, uint16_t clockSource) 这个函数用于设置flash模块时钟。任何其他闪存的 API 函数在调用之前,通常会调用此函数。 参数 clockTargetFreq | | | | | 闪存的时钟源。可选值有: FLASHCTL_MCLK (默认) FLASHCTL_SMCLK |
返回:时钟设置结果,指示时钟设置成功或失败。 |