# CARD_WriteFramAsync

## C Specification

  `#include <nitro/card.h>`
  `static inline void CARD_WriteFramAsync( u32 dst, const void *src, u32 len, MIDmaCallback callback, void *arg);`

## Arguments

dst | Transfer destination FRAM address.
src | Transfer source memory address.
len | Byte length of data to be written.
callback | Callback function for when the process completes. If the callback is not necessary, specify NULL. This callback is called from inside the interrupt handler.
arg | Argument passed to the callback function when the process completes. If NULL has been specified for the callback, this value is simply ignored.

## Return Values

None.

## Description

This function writes data to the FRAM device asynchronously. The function immediately returns control. In order to use this function, you must first lock the access bus with the `CARD_LockBackup` function.
To wait for the process to end, use the `CARD_WaitBackupAsync` function. To determine the result of the process, call the `CARD_GetResultCode` function after the process has ended.

## Internal Operation

`This function communicates with the ARM7 processor internally via PXI.
The process will not end if PXI interrupts are not enabled.
The function executes an asynchronous process using an internal thread. To learn more about this internal thread, see the explanation for the `CARD_GetThreadPriority` function.`

## See Also

`CARD_IsBackupFram CARD_WaitBackupAsync CARD_GetResultCode CARD_ReadFram CARD_WriteFram CARD_VerifyFram CARD_WriteAndVerifyFram CARD_GetThreadPriority`

## Revision History

07/05/2005 Initial version.

CONFIDENTIAL