
Категорически заявляю, что
я никому не запрещаю писать GUI оболочку к avreal !!!
Его и у avrdude нет, как я понимаю :-)
К avrdude отдельным проектом есть.
К avreal тоже когда-то avrealshell был написан, но, насколько я понимаю, проект давно замер.
Мне, как я уже не раз писал, всегда хватало существующих TUI (DOS, редактор QEdit, по Alt-F9 при необходимости перекомпиляция и зашивка микроконтроллера) и GUI (MED, NetBeans, Code::Blocks, ...)
Выглядит это уже четырнадцать лет так:
В Makefile проекта
Код
...
MCU = atmega64
F_CPU=7372800
# fuses for avreal
FUSES = m103c=1,wdton=1,jtagen=1,cksel=F,ckopt=0,sut=1,boden=0,bodlevel=1
AVREAL_OPT=-n -az
...
...
common_makefiles=$(PROJ_SRCTOP)/makefiles
include $(common_makefiles)/gcc-avr.mak
include $(common_makefiles)/avreal.mak
avreal.mak
Код
ifndef AVREAL_PORT
AVREAL_PORT = 1
endif
ifndef AVREAL_ADAPTER
AVREAL_ADAPTER = b
endif
AVREAL := avreal "-a$(AVREAL_ADAPTER)" "-p$(AVREAL_PORT)" +$(MCU)
ifndef AVREAL_FREQ
ifdef F_CPU
AVREAL_FREQ := $(F_CPU)
endif
endif
ifdef AVREAL_FREQ
AVREAL_FREQ_SW := -o$(AVREAL_FREQ)hz
endif
.PHONY : program prg_final fuses verify lock erase reset
#
program : $(TRGPGM)
$(AVREAL) $(AVREAL_OPT) $(AVREAL_FREQ_SW) -e -wp $^ -v
#
fuses:
$(AVREAL) -o50 -wp -v -f$(FUSES)
#
ifdef FUSES
verify: $(TRGPGM)
$(AVREAL) $(AVREAL_FREQ_SW) -v $^ -f$(FUSES)
else
verify: $(TRGPGM)
$(AVREAL) $(AVREAL_FREQ_SW) -v $^
endif
#
lock: $(TRGPGM)
$(AVREAL) $(AVREAL_FREQ_SW) -v -l2 $^
#
erase:
$(AVREAL) $(AVREAL_FREQ_SW) -e
#
reset:
$(AVREAL) $(AVREAL_FREQ_SW)
На домашнем компьютере
Код
$ echo $AVREAL_ADAPTER
FT2232H=avreal-f32ha_a.cfg
$ echo $AVREAL_PORT
d=Dual RS232-HS A
$
На работе что-то другое.
Тот же Code::Blocks настроен на работу с внешним Makefile и Tools:Program вызывает make program
Если мне кто-то объяснит, зачем
мне GUI, если я в редакторе изменяю строку, жму «горячую клавишу» и зашиваю проект в кристалл, я еще подумаю (на самом деле, иногда подмывает на чём-то не сильно нужном освоить wxpy, чтобы при необходимости уже освоен был, но недосуг).
Е если кому-то нужно, так см.
рис 1 первую строку. Я свою часть работы сделал :-)