#define BUFFER_SIZE 100
const msp430adc12_channel_config_t config = {inch, sref, ref2_5v, adc12ssel, adc12div, sht, sampcon_ssel, sampcon_id};
adc12memctl_t memCtl = {inch2, sref2};
- uint8_t state;
+ norace uint8_t state;
uint16_t buffer[BUFFER_SIZE];
void task getData();
bool assertData(uint16_t *data, uint16_t num)
{
uint16_t i;
+ if (num != BUFFER_SIZE)
+ post signalFailure();
for (i=0; i<num; i++)
if (!data[i] || data[i] >= 0xFFF){
post signalFailure();
async event void MultiChannel.dataReady(uint16_t *buf, uint16_t numSamples)
{
- if (assertData(buf, numSamples))
+ if (assertData(buf, numSamples) && state++ == 0)
post signalSuccess();
+ else
+ post signalFailure();
call Resource.release();
}