i download the code for atmega8 from this link which can be used for atmega16/32 —
http://www.sparkfun.com/commerce/product_info.php?products_id=569
i tried to generate hex file in winavr20100110 but found error ----
>> "make.exe" all
-------- begin --------
avr-gcc (WinAVR 20100110) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Compiling C: main.c
avr-gcc -c -mmcu=atmega16 -I. -gdwarf-2 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./main.lst -std=gnu99 -MMD -MP -MF .dep/main.o.d main.c -o main.o
In file included from main.c:4:
lcd_driver.h:12: error: expected declaration specifiers or '...' before 'PGM_P'
main.c: In function 'main':
main.c:35: warning: passing argument 3 of 'putstr_pgm' makes integer from pointer without a cast
main.c:35: error: too many arguments to function 'putstr_pgm'
make.exe: *** [main.o] Error 1
> Process Exit Code: 2
> Time Taken: 00:06
the error is for this line in lcd_driver.h ----
uint8_t putstr_pgm(uint8_t x, uint8_t y, PGM_P p, uint8_t fg, uint8_t bg);
the second error is for this line ----
putstr_pgm(10, 7, &(hello_world[0]), 0x00, 0x1C);
please help :?