#include<avr/io.h>
#include<util/delay.h>
#include<stdlib.h>
#define rs PC0
#define rw PC1
#define en PC2
#define pl PA0
functions for lcd data
functions for lcd cmds
function for string
unsigned int spi_tranceiver (uint8_t data)
{
data=0;
SPDR = data; // Load buffer data into variable
while(!(SPSR & (1<<SPIF))); // Wait until transmission complete
return(data); // Return received data to 164
}
void main()
{
char arr[7];
DDRC=0xff;
DDRA=0x03;
DDRB|=(1<<PB7)|(1<<PB5); // SCK /MOSI as Output
SPCR|=(1<<SPE)|(1<<MSTR)|(1<<SPR0); // spi enabled/master mode/freq div by 16
init();
while(1)
{
string("Hit Switch");
while((SPDR&0xff)==0);
spi_tranceiver('0');
//lcd_data(data);
//_delay_ms(500);
lcd_cmd(0x01);
lcd_cmd(0xc0);
itoa(data, arr, 10);
lcd_data(arr);
_delay_ms(500);
}
}