Author |
Message |
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
Поработал с ATMega128. Скоро выложу версию оськи, которая с ней корректно работает.
Хочу поделиться парой советов "для начинающих".
При программировании ATmega128, что бы использовать все ее ресурсы ОБЯЗАТЕЛЬНО надо изменить fuse-биты на следующие значения:
бит MEGA103C = 1 (отключаем совместимость с мегой103)
бит JTAGEN=1 (отключаем JTAG. если этого не сделать - то порт F работает только на ввод. в док ничего об этом не нашел. или дока куцая или я невнимательный. выяснилось только при подключении клавиатуры.)
Если тактировать контроллер будете от внешнего кварца, то биты CKSEL0..3 не забудьте установить в значение 0Ah (1010b).
Вроде пока вс.
Ну и в NedoPC-90.AVROS я добавил каталог, в котором храняться правильные значения fuse-битов, чтобы ОС запустилась. Эти значения прошиваются автоматом по команде Make load
|
21 Aug 2005 23:17 |
|
|
Caro
Fanat
Joined: 21 Nov 2002 11:09 Posts: 88 Location: E-burg/Russia
|
В доке написано, что в режиме совместимости с MEGA103 порт F работает только на чтение.
При разрешенном JTAG, старшие биты порта F (4..7) заняты его линиями
и не могут использоваться как линии порта ввода/вывода.
Младшие биты (0..3) при этом работают либо на ввод/вывод,
либо как входы АЦП.
Это все написано в разделе альтернативных функций портов.
|
22 Aug 2005 03:30 |
|
|
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
Советы для начинающих Не все просекают, что по умолчанию МЕГА 128 работает в режиме совместимости с МЕГОЙ 103. У меня один знакомый с этим парился довольно долго (что собственно и сподвигло меня создать данную тему).
Про совместимость с MEGA103 в доке есть, не отрицаю. А вот про включенный JTAG - ни хрена у меня в доке нету.
Впрочем у меня неполная дока. Возможно в полной и все есть.
|
22 Aug 2005 19:32 |
|
|
Caro
Fanat
Joined: 21 Nov 2002 11:09 Posts: 88 Location: E-burg/Russia
|
У меня DS - ATMega128(l).pdf размером больше 3 МБайт содержит 389 страниц текста.
Я думаю это полная дока. Скачал с сайта www.atmel.com
|
22 Aug 2005 20:49 |
|
|
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
Тоже уже скачал. Теперь если что вылезет - то только изза невнимательности. Ну или реальных недокументированных фич.
|
23 Aug 2005 00:35 |
|
|
Caro
Fanat
Joined: 21 Nov 2002 11:09 Posts: 88 Location: E-burg/Russia
|
Рекомендую, если еще не были, зайти по ссылке:
http://www.procyonengineering.com/avr/avrlib/
Отличный набор готовых решений для AVR на C.
|
23 Aug 2005 00:44 |
|
|
SfS
Doomed
Joined: 16 Apr 2005 22:35 Posts: 492 Location: Томск
|
Спасибо. Прекрасная ссылка.
|
23 Aug 2005 20:54 |
|
|
FreemaN
Senior
Joined: 09 Jan 2009 20:30 Posts: 124 Location: Мурманск
|
Кто может подсказать почему нельзя обьявить константу во флеш памяти? (WinAVR-20070525)
flash const unsigned char CharMap[6][128]; не прокатывает
_________________ Всё что ты видишь - лживый облик.
|
09 Feb 2009 08:49 |
|
|
HardWareMan
Banned
Joined: 20 Mar 2005 13:41 Posts: 2141 Location: От туда
|
На асме вроде все проканывает. С для МК - моветон.
|
09 Feb 2009 10:42 |
|
|
CHRV
God
Joined: 29 Dec 2003 01:00 Posts: 1101 Location: Москва
|
ЭЭЭ нет ...
Для 128ой лучше использовать С. Ибо контролировать ассемблерный код > 8КБ это полный пипец (по крайней мере для меня).
Я использую следующий вариант:
1) WinAVR http://sourceforge.net/project/showfile ... p_id=68108
2) Родную студию http://www.atmel.com/dyn/products/tools ... ol_id=2725
ПРичем 1 интегрируется во 2 совершенно автоматически и без всяких проблем.
_________________Московский филиал NedoPC http://www.nedopc.com
|
10 Feb 2009 01:03 |
|
|
FreemaN
Senior
Joined: 09 Jan 2009 20:30 Posts: 124 Location: Мурманск
|
Если подключить avr/pgmspace.h то прокатывает такое обьявление:
const unsigned char CP866[128][6] PROGMEM={...};
_________________ Всё что ты видишь - лживый облик.
|
10 Feb 2009 15:52 |
|
|