CARD_EraseFlashSectorAsync

構文

#include <nitro/card.h>

SDK_INLINE void CARD_EraseFlashSectorAsync( u32 dst, u32 len, MIDmaCallback callback, void *arg);

引数

dst 消去先の FLASH アドレス
CARD_GetBackupSectorSize( )で得られる値の整数倍である必要があります。
デバイスごとのセクタサイズについては概要をご参照ください。
len 消去するバイト長
CARD_GetBackupSectorSize( )で得られる値の整数倍である必要があります。
デバイスごとのセクタサイズについては概要をご参照ください。
callback 完了時のコールバック関数
必要ない場合は NULL を指定します。
このコールバックは割り込みハンドラ内から呼び出されます。
arg 完了時のコールバック関数に与える引数
callback に NULL を指定した場合は単に無視されます。

返り値

なし。

説明

FLASH デバイスをセクタ単位で消去し、セクタ内の全データ内容を0xFFで初期化します。
この関数はただちに制御を返します。
処理の完了を待つにはCARD_WaitBackupAsync( )を使用します。
処理の結果を判定するには、完了後にCARD_GetResultCode( )を呼び出してください。

CARD_ProgramFlashAsync( )で指定する書き込み領域は、前もってこの関数で内容を消去しておく必要があります。 消去されていない領域に対する書き込みの結果は保証されません。
FLASHデバイスの種類によっては、これらの関数より制限の少ないCARD_WriteFlash( )が利用可能です。

この関数を使用する場合、事前にアクセスバスをCARD_LockBackup( )でロックしている必要があります。

内部動作

この関数は内部でPXIを介してARM7プロセッサと通信しています。
PXIの割り込みが有効でないと処理が完了しない点に注意してください。

この関数は、内部のスレッドを使用して非同期処理を実行します。
このスレッドに関してはCARD_GetThreadPriority( )の説明を参照ください。

参照

CARD_WaitBackupAsync, CARD_GetResultCode, CARD_IsBackupFlash, CARD_ProgramFlash, CARD_ProgramFlashAsync, CARD_ProgramAndVerifyFlash, CARD_ProgramAndVerifyFlashAsync, CARD_EraseFlashSector, CARD_EraseFlashSectorAsync, CARD_WriteFlashSector, CARD_WriteFlashSectorAsync, CARD_WriteAndVerifyFlashSector, CARD_WriteAndVerifyFlashSectorAsync, CARD_ReadFlash, CARD_WriteFlash, CARD_WriteAndVerifyFlash, CARD_VerifyFlash, CARD_GetThreadPriority

履歴

2007/08/22 初版