//final code for ATmega1284 //function: wireless receive, lighting, fan and music control system #include #include #include #include #include "lcd_lib.h" #include #include #include #include #include #define BAUDRATE 9600 #define UBRRVAL ((F_CPU/(BAUDRATE*16UL))-1) #define USART_DDR DDRD #define USART_PORT PORTD #define USART_RX_PIN 2 #define USART_TX_PIN 3 #define t1 1000 int8_t lcd_buffer[17]; // LCD display buffer int8_t lcd_buffer2[17]; volatile unsigned int lcdtime=30; volatile unsigned int time0,time1=0; //float pinvalue=0; volatile char index; volatile unsigned int pinvalue=0; //************************************************************************** // LCD setup void init_lcd(void) { LCDinit(); //initialize the display LCDcursorOFF(); LCDclr(); //clear the display LCDGotoXY(0,0); } //************************************************************************** //timer 0 compare ISR ISR (TIMER0_COMPA_vect) { //Update the task time //if (time0>0) --time0; if (time1>0) --time1; } //************************************************************************** // task 1 writes to LCD every 1000 mSec void task1 (void) { if(lcdtime>0) { lcdtime-=1; } else { lcdtime=0; if (index=='i') { OCR0A=255; } } pinvalue=ADCH*0.96/5.00; //*0.955/50.00; ADCSRA|=(1<2.00) { LCDGotoXY(0,1); LCDstring("BR LED WORKING ",strlen("BR LED WORKING ")); } } //************************************************************************** void USART_Init(void) { USART_DDR|=((1<