Hi all,

We have micaz motes. We have installed TinyOS 1.1.7. We have bought a temperature sensor, whose data is measured through a duty cycle. Then we need a clock to measure it. We have write an application and it compiles right, but the micaz mote does not work. We have tested that the interrupt does not happen, we put a led in TOS_SIGNAL.

We do not know what the problem is. We have copied here the code of our module. Can anyone help us?

Thanks in advance,

Andres


module DutyCycleM {
 provides interface DutyCycle;
 uses interface Leds;
}
implementation {

 command result_t DutyCycle.start(uint8_t relojinit){

        uint8_t data = inp(TCCR3B);
        sbi(TCCR3B, ICES3); // Interrupt rising
        cbi(ETIMSK, TICIE3); // Interrupt enable
        outp(((data & 0xF8) | relojinit),TCCR3B); // Clock select

   return SUCCESS;
 }

 command result_t DutyCycle.stop() {
        uint8_t data = inp(TCCR3B);
        outp((data & 0xF8),TCCR3B); // Timer/Counter stop
        cbi(ETIMSK, TICIE3); // Interrupt disable
     return SUCCESS;
 }

 command result_t DutyCycle.changeClock(uint8_t reloj){

        uint8_t data = inp(TCCR3B);
        uint8_t buffer = inp(ETIMSK);
        cbi(ETIMSK, TICIE3); // Interrupt disable
        sbi(TCCR3B, ICES3); // Interrupt rising

        outp(((data & 0xF8) | reloj),TCCR3B); //0xF8 = 11111000

        outp(buffer,ETIMSK); // Interrupt before

        return SUCCESS;
 }

default async event result_t DutyCycle.dataReady(uint16_t done) { return SUCCESS; }

 TOSH_SIGNAL(SIG_INPUT_CAPTURE3) {
   uint16_t data = inw(ICR3L);

        call Leds.set(7);

        if (inp(TCCR3B) & 0x40)
                cbi(TCCR3B, ICES3); // Falling
        else
                sbi(TCCR3B, ICES3); // Rising

        sbi(ETIFR,ICF3); // Flag clear
   __nesc_enable_interrupt();
   signal DutyCycle.dataReady(data);
 }

}

_________________________________________________________________
¿Estás pensando en cambiar de coche? Todas los modelos de serie y extras en MSN Motor. http://motor.msn.es/researchcentre/

_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to