Файлы  •  Ссылки  •  Прошивки  •  Правила  •  Архив  •   FAQ  •  Участники  •  Поиск
Регистрация  •  Вход

Размер прошивки в Atmega 32

Список форумов» Программное обеспечение» Микроконтроллеры
АвторСообщение
uretz
Новичок
Сообщения: 24




02-11-2010 10:33

Помогите разобраться с организацией памяти в AVR.
Конкретно имеется ATMEGA 32.Flash 32Кб, eeprom 1024б.
Сливаю прошивку с модуля стиральной машины- размер 74кб.
Думаю ошибка, смотрю другие прошивки схожих моделей- размер так же превышает размер внутренней памяти проца.
Задал вопрос на ветке по СМА, получил ответ: А фьюзы? И всё...

Я сам думал об этом, где хранится инфа о фьзах во флеш или загрузочной области, получается где ещё?

BLS – Boot Loader Section
While the Application section is used for storing the application code, the The Boot
Loader software must be located in the BLS since the SPM instruction can initiate a programming
when executing from the BLS only. The SPM instruction can access the
entire Flash, including the BLS itself.

Судя по этому загрузочная область (Boot Loader Section ) - часть flash, а она 32кб в Atmega32
Да ещё, если я загружаю прошивку с компа в Pony prog то информации о фьюзах нет, она считываются только если микропроцессор непосредственно подключен к порту компа через программатор, значит во флеш её нет?
спасибо заранее
AlexM
Участник
Сообщения: 883




02-11-2010 11:03

А в чём собственно проблема ? Места на компе жалко? По поводу фьюзы тебе наврали. улыбка
uretz
Новичок
Сообщения: 24




02-11-2010 13:12

Во мне! Понять xoчу
32 меньше, чем 74 как? встакан налить поллитра
AlexM
Участник
Сообщения: 883




02-11-2010 13:29

uretz писал:
Во мне! Понять xoчу
32 меньше, чем 74 как? встакан налить поллитра


ОК . А если взвесить 250г водки налитой в стакан вместе со стаканом и теже поллитра налить в целофановый пакет и тоже взвесить. Вес будет одинаковый? Скорее всего нет. Файл это тоже упаковка для данных. Если Вы возьмёте Notepad напиште текст "водка". Сохраните полученный документ как файл *.txt, а потом тоже самое проделаете в Microsoft word и сохраните документ как *.doc.
Получите два файла разных размеров хотя в них только одно слово ВОДКА.

Попробуйте в Вашем программаторе сохранить данные с разширением .HEX и теже данные сохранить с разрешением .BIN и тоже получите разные размеры файлов потому,что у файлов будет разная структура (упаковка).
uretz
Новичок
Сообщения: 24




02-11-2010 14:20

Понял, спасибо, доступно.
Где инфа о Fuses and Lock Bits is situated? То бишь есть какая- то необозначенная область ППЗУ в проце именно для этого?
Я писал: Да ещё, если я загружаю прошивку с компа в Pony prog то информации о фьюзах нет, она считываются только если микропроцессор непосредственно подключен к порту компа через программатор, значит во флеш её нет? соответственно в eeprom тоже?
AlexM
Участник
Сообщения: 883




02-11-2010 15:30

У AVR fuses находятся в специальной области памяти, считать их можно из контроллера выбрав соответсвующую опцию в программаторе. В Пони Вы можете сохранить конфигурацию в файл только если будет использовать радной формат Поника *.e2p. У ПИКов не много по другому, там можно сохранить фусы в *.hex.
uretz
Новичок
Сообщения: 24




02-11-2010 15:56

Опять же всё понятно.
Следует ли из этого, что имея запись прошивы e2p формата, записывая чистый проц нам не надо будет выставлять фьюзы отдельно, они пропишутся сами? даже учитывая то , что с завода некоторые процы идут с уже выставленными фьюзами (применительно к avr )
А, туплю если генерации не будет то какой режим программирования...
Т. е. сначала всё-таки фьюзы выставляются
Поясню, к чему это, идея была программировать прямо в модуль запаивая новый проц, не собирая программатора, но там ведь стоит кварц с определённой частотой, т.е. сначала всё-таки нужно высставить в проце во фьюзах частоту соответствующую частоте кварца в устройстве.
Так?
AlexM
Участник
Сообщения: 883




02-11-2010 18:50

uretz писал:

Следует ли из этого, что имея запись прошивы e2p формата, записывая чистый проц нам не надо будет выставлять фьюзы отдельно, они пропишутся сами? даже учитывая то , что с завода некоторые процы идут с уже выставленными фьюзами (применительно к avr )


Честно говоря я не всё написаное понял, но попробую ответить. улыбка
FUSE это биты (опции) конфигурации контроллера и она , конфигурация, всегда есть. В новом не прошитом контроллере битами установлена одна конфигурация в устройстве может быть установлена другая, но всегда какая то есть. Даже если все биты сброшены это всё равно означает что контроллер имеет определённую конфигурацию.
Что означает каждый бит в конфигурации нужно смотреть в документации на конкретный контроллер. Подробней в общем виде моно почитать на пример здесь: http://easyelectronics.ru/avr-uchebnyj-kurs-konfiguraciya-fuse-bit.htm ...

Предположим у Вас есть запрограммированный контроллер с определёной конфигурацией (FUSE) и в конфигурации не установлены биты защиты.
В этом случае Вы можете считать память программ (FLASH) ,память данных (EEPROM) и биты конфигурации и после этого сохранить всё в файл -> save device file *.e2p При этом сохранится всё включая FUSE и при программировании нового контроллера, используя этот файл, будут и установлены FUSE как в считаном. НО программа Поника позволяет сохранить только например (EEPROM) с разширением *.e2p соответственно в этом случае возможно будет сохранены только данные EEPROM . Вообщем я так делать не пробовал я не пользуюсь поником. Вы можете это проверить.
uretz
Новичок
Сообщения: 24




02-11-2010 19:56

AlexM!
Большое спасибо, немогу конечно точно сформулировать общепринятыми в данной сфере терминами (понятиями) свои вопросы (порой даже для себя улыбка .
Но вы мне очень помогли. Инфы в и-нете море, читать не перечитать, но придётся, хотя бы, что бы задавать понятные вопросы, плюс конечно эксперементировать.
Но с главным в чём была тема, несоответствием размера памяти и файла прошивки разобрался, и где находится инфа о фьзах тоже (кстати нашёл об этом в одной книжке сегодня, читал невнимательно) так,что будем считать эта тема решена.
AlexM
Участник
Сообщения: 883




02-11-2010 20:55

uretz писал:

идея была программировать прямо в модуль запаивая новый проц, не собирая программатора, но там ведь стоит кварц с определённой частотой, т.е. сначала всё-таки нужно высставить в проце во фьюзах частоту соответствующую частоте кварца в устройстве.
Так?


По поводу программирования контроллера в устройстве, проблемы могут возникнуть скорей не с кварцем а с портами.
В новом контроллере обычно конфигурацией определено работать от внутреннего генератора , т.е. есть или нет и какой кварц в устройстве не важно. По алгоритму программирования сначала будет записана программа потом выполнена верификация(проверка) и только потом записана новая конфигурация. А вот порты используемые, для программирование могут в устройстве быть подключены к низкоомной нагрузке или переключателям которые удерживают низкий или высокий уровень.
uretz
Новичок
Сообщения: 24




03-11-2010 11:19

P.S. Да действительно, если сохранять в pony device file в e2p формате то информация о фьзах сохраняется!
И если записать в формате bin то размер как раз и получится 33кб (flash 32kb + eeprom 1kb)
Список форумов» Программное обеспечение» Микроконтроллеры» Размер прошивки в Atmega 32
Перейти:  
Текущий раздел» Программное обеспечение» Микроконтроллеры (Микроконтроллеры - AVR-ы, PIC-и и другие)


Похожая информация:
  • CH341 для ATMega and PIC
  • Atmega 8A-PU (dip 28pin) (как прошить на Willem?)
  • ОС и ТДКС. Меняем размер растра при замене на нетиповые.
  • AVRDUDESHELL - программа для прошивки микроконтроллеров AVR
  • Переделка прошивки PIC16F628A на PIC16F84A








  • Информация по ремонту для специалистов - справочники, инструкции, энциклопедия, советы и секреты ремонта,  настройка, сервисные режимы
    Powered by phpBB 2.0.18 © 2001, 2002 phpBB Group!