Example #1
0
int main(void) {
	setup();
	mirf_init();
	_delay_ms(50);
	mirf_config();
	
	while(1) {
		RX_POWERUP;
		mirf_CSN_lo;
		spi_transfer(FLUSH_RX);
		mirf_CSN_hi; 
		mirf_CE_hi; // Start listening
		
		// Wait for incoming requests
		while (!(mirf_status() & (1<<RX_DR))) { 
			_delay_us(250);
		}
		mirf_CE_lo; // Stop listening
		
		// Read the data received
		mirf_receive_data();
		
		// Check if the data_in matches "pir1c"
		if (memcmp(data_in, "pir1c", 5) == 0) {
			PORTA |= (1<<PA3); // Turn on LED/Buzzer
			
			// Start/Restart the 8 second count
			TCNT1 = 0;
			TCCR1B = ((1<<CS11) | (1<<CS10));
			
		}
	}
}
Example #2
0
int main(void) {
	setup();
	mirf_init();
	_delay_ms(50);
	mirf_config();
	
	while(1) {
		
		_delay_ms(1000);
		
		// Let server know the PIR was triggered
		mirf_transmit_data();
		
		_delay_ms(500);
	}
}
int main(void)
{
	setup_charlie_struct();
	setup_hw();
	
	//for(uint16_t a=0;a<=buffer_length;a++) buffer[a]=0; //clear buffer
	
	// Initialize AVR for use with mirf
	mirf_init();
	// Wait for mirf to come up
	_delay_ms(50);
	// Activate interrupts
	sei();
	// Configure mirf
	mirf_config();
	// Test communication
	int i = 0;
	
	sei(); //global interrupt enable
	
	roll_charlie();
	
    while(1)
    {
	/*
	for(uint8_t i=0;i<10;i++)
	{
	mirf_send(&i,1);	
	_delay_ms(1000);
	}
	*/
	
	uint8_t status = mirf_data_ready();
	while (!status);
	LED_PATTERN=status;
	
	//mirf_get_data(*buffer);
	
	
	//set_charlie(buffer[i]);
	//i++;
    }
}
Example #4
0
int main(void)
{
    uint8_t buf[10];

    DDRD |= ((1 << PD5) | (1 << PD6));//PD5 и PD6 на выход

    serialInit(SPEED9600);
    mirf_init();
    _delay_ms(50);
    sei();
    mirf_config();

    while(1)
    {
        while(!mirf_data_ready()) ;

        mirf_get_data(buf);
        if(buf[0] == 1)
        {
            PORTD |= (1 << PD5);
        }
        else
        {
            PORTD &= ~(1 << PD5);
        }

        if(buf[1] == 1)
        {
            PORTD |= (1 << PD6);
        }
        else
        {
            PORTD &= ~(1 << PD6);
        }
    }

    return 0;
}