interface Msp430Adc12MultiChannel as MultiChannel[uint8_t id];
interface Msp430Adc12Overflow as Overflow[uint8_t id];
interface AsyncStdControl as DMAExtension[uint8_t id];
interface Msp430Adc12MultiChannel as MultiChannel[uint8_t id];
interface Msp430Adc12Overflow as Overflow[uint8_t id];
interface AsyncStdControl as DMAExtension[uint8_t id];
interface Msp430Timer as TimerA;;
interface Msp430TimerControl as ControlA0;
interface Msp430TimerControl as ControlA1;
interface Msp430Timer as TimerA;;
interface Msp430TimerControl as ControlA0;
interface Msp430TimerControl as ControlA1;
interface HplMsp430GeneralIO as Port65;
interface HplMsp430GeneralIO as Port66;
interface HplMsp430GeneralIO as Port67;
interface HplMsp430GeneralIO as Port65;
interface HplMsp430GeneralIO as Port66;
interface HplMsp430GeneralIO as Port67;
uint16_t resultBufferIndex; /* offset into buffer */
uint8_t numChannels; /* number of channels (multi-channel conversion) */
uint8_t clientID; /* ID of client that called getData() */
uint16_t resultBufferIndex; /* offset into buffer */
uint8_t numChannels; /* number of channels (multi-channel conversion) */
uint8_t clientID; /* ID of client that called getData() */
if (!config || !memctl || !numMemctl || numMemctl > 15 || !numSamples ||
!buf || jiffies == 1 || jiffies == 2 || numSamples % (numMemctl+1) != 0)
return EINVAL;
if (!config || !memctl || !numMemctl || numMemctl > 15 || !numSamples ||
!buf || jiffies == 1 || jiffies == 2 || numSamples % (numMemctl+1) != 0)
return EINVAL;
resultBufferIndex = 0;
signal MultiChannel.dataReady[clientID](resultBuffer,
overflow ? k : resultBufferLength);
resultBufferIndex = 0;
signal MultiChannel.dataReady[clientID](resultBuffer,
overflow ? k : resultBufferLength);
resultBuffer-resultBufferLength,
overflow ? 0 : resultBufferLength);
resultBuffer-resultBufferLength,
overflow ? 0 : resultBufferLength);