08.04.2012 1. Всем известно что при разработке программы для PIC конфигурационные биты можно поместить в HEX файл. У AVR такой возможности нет. Но при поиске способа сохранить конфигурацию в файле прошивке нашел следующее. Можно создать "ELF production file" который будет содержать FLASH, EEPROM, конфигурацию, биты защиты.
Для создания файла необходимо добавить в исходный код программы дополнительно несколько строк.
#include <avr/eeprom.h> #include <avr/fuse.h> #include <avr/lock.h> #include <avr/signature.h>
// Необходимые настройки конфигурационных бит FUSES = { .low = (FUSE_SUT1 & FUSE_BODEN & FUSE_BODLEVEL), .high = (FUSE_BOOTSZ0 & FUSE_BOOTSZ1 & FUSE_CKOPT & FUSE_SPIEN) };
// Необходимые настройки битов защиты LOCKBITS = (LB_MODE_1); // Данные размещаемые в EEPROM uint16_t em_Temperature EEMEM = 250; // Температура в °C uint8_t em_Celsius EEMEM = 0xB9; // 0xB9 = °C или 0x71 = F uint8_t em_Solder EEMEM = 0x01; // Текущий паяльник
В AVR Studio 5.1 файл ELF будет создан в той же папке где и прошивка.
11.04.2012 2. Если у Вас завалялись микроконтроллеры AVR серии AT90S и AVRISP-mkII их не поддерживает, то не спешите делать для них отдельный программатор. Добавить микроконтроллеры которые не поддерживаются в список поддерживаемых очень легко. Пример добавления AT90S2313 в список поддерживаемых: В AVR Studio 4 найдите файл AT90S2313.xml расположенный в каталоге диск:\каталог установки\Atmel\AVR Tools\Partdescriptionfiles Откройте AT90S2313.xml в блокноте. Найдите строку: <MODULE_LIST>[SIMULATOR:STK500:STK500_2]</MODULE_LIST> и добавьте в нее выделенный жирным шрифтом текст: <MODULE_LIST>[SIMULATOR:STK500:STK500_2:AVRISPmkII]</MODULE_LIST> Найдите строку: </STK500_2> и добавьте после нее выделенный жирным шрифтом текст: </STK500_2> <AVRISPmkII/> После этого AT90S2313 появиться в списке AVRISP-mkII, но AVRISP-mkII не даст запрограммировать биты FUSE и LOCK. Чтобы появилась возможность их программировать удалите следующие строки: <NoFuseProg/> <NoFuseLockRead/> Ссылка на отредактированный файл
|