Для компиляции в windows в консоли (cmd) заходите в каталог с проектом и даёте команду make. При установленном WinAVR она уже должна быть доступна (прописана в PATH).
Сейчас проверю в VirtualBox, собирается ли проект под Windows.
P.S.
Да, действительно, проект не собирается в Windows. Это из-за того, что в windows нет iconv (error: no iconv implementation, cannot convert from UTF-8 to ks0066-ru), который позволяет текстовые строки в программе (они в коде написаны прямо по-русски, в кодировке UTF-8) перевести в кодировку KS0066-RU (используется в знакосинтезирующих дисплеях, и, для совместимости с другими моими проектами, здесь).
Чтобы собрать в Windows этот проект нужно:
1. В Makefile закомментировать строчку
CS = -fexec-charset=ks0066-ru, отключив тем самым конвертацию.
2. В исходниках в файле display.c все текстовые константы (типа "Воскресенье", "·C в комнате" и прочие) перевести в кодировку KS0066-RU. Для простоты - можно просто по-английски временно всё переписать, а потом уже использовать эту кодировку.
3. Использовать avr-gcc посвежее, как минимум, версии 4.8, например,
avr-gcc-4.8_2013-03-06_mingw32.zip, так как тот, что в WinAVR
отсюда, например, слишком старый и генерирует код, который не влезает в процессор. Внести соответствующие правки в Makefile.
Если не выполнить 2 пункт, кириллические строки будут отображаться "крякозябрами".
Во вложении исправленные Makefile/display.c и используемая в шрифтах кодировка. По крайней мере, у меня в WindowsXP в VirtualBox сейчас получилось собрать (с англоязычными текстовыми метками).
На выходных я постараюсь перенести текстовые метки из кода в EEPROM, тогда, думаю, проблема сборки под Windows уйдёт сама собой. Понадобится только WinAVR и >=avr-gcc-4.8. Дополнительный бонус - текстовые метки можно будет поменять прямо в eeprom, без перекомпиляции.
P.P.S.
Пару слов о том, как всё-таки оставить при этом русскоязычные надписи. Возьмём, например, текстовую метку.
У кодировки ks0066-ru особенность в том, что кириллические символы там присутствуют только те, аналогов которым нет в латинской части кодовой таблицы. Скажем, русские "В", "о", "с" заменяются латинскими "B", "o", "c", а вот для буквы "к" аналога уже нет, и придётся использовать её по коду из таблицы, 0xBA (см. также файл font-ks0066-ru-08.c).
Таким образом, без перекодировки с помощью iconv придётся текстовую метку переписать следующим образом:
Код: Выделить всё
const char wd0[] PROGMEM = "Boc""\xBA""pece""\xBD""\xC4""e";
Здесь буквы "к", "н", "ь", не имеющие аналогов в латинской части кодовой таблицы, заменены своими hex-кодами. Аналогично переписываются и другие строковые константы.