# TP_RequestAutoSamplingStartAsync

## C Specification

  `#include <nitro/spi.h>`

      void TP_RequestAutoSamplingStartAsync(
      u16 vcount,
      u16 frequence,
      TPData samplingBufs[],
      u16 bufSize );

## Arguments

vcount | Base Vcount value for auto sampling
frequence | The number of samples taken during one frame. (MAX 4)
samplingBufs | The pointer that sets the buffer in which auto sampling values are stored. At minimum you must secure a region large enough to contain `frequence` * `TPData`.
bufSize | The size of the buffer that was passed by samplingBufs

## Return Values

None.

## Description

This function asynchronously issues a request to ARM7 to begin auto sampling touch panel values. Once this request is accepted, sampling occurs periodically and values are stored in the array specified by `samplingBufs`. The autosampling interval is the uniform interval that data (as set in the `frequence` argument) is sampled by VAlarm in one frame based on the value set in `vcount`. If a user callback is set with `TP_SetCallback`, notice is given by a callback each time a value is saved. After this function clears `samplingBufs`, the buffer will be used as a loop buffer. To acquire the index of the last stored data, use `TP_GetLatestIndexInAuto`. When auto-sampling, it is possible that the sampling value for (newest index + 1) will be unexpectedly overwritten by an interrupt. If you are using the sampling values from one frame all together, you can avoid this by securing an area that is at least `frequence` + 1.
In this function, you must confirm whether the request to ARM7 was properly processed. To obtain the success or failure of the request, you must either first use `TP_WaitBusy` to wait for completion and then use `TP_CheckError`, or use an argument in a user callback.

## See Also

`TP_RequestAutoSamplingStop, TP_GetLatestRawPointInAuto, TP_GetLatestCalibratedPointInAuto, TP_GetLatestIndexInAuto, TP_WaitBusy, TP_CheckError, TP_RequestAutoSamplingStart`, `TPData`

## Revision History

04/21/2004 Initial version

CONFIDENTIAL