Поработал с ATMega128. Скоро выложу версию оськи, которая с ней корректно работает.
Хочу поделиться парой советов "для начинающих".
При программировании ATmega128, что бы использовать все ее ресурсы ОБЯЗАТЕЛЬНО надо изменить fuse-биты на следующие значения:
бит MEGA103C = 1 (отключаем совместимость с мегой103)
бит JTAGEN=1 (отключаем JTAG. если этого не сделать - то порт F работает только на ввод. в док ничего об этом не нашел. или дока куцая или я невнимательный. выяснилось только при подключении клавиатуры.)
Если тактировать контроллер будете от внешнего кварца, то биты CKSEL0..3 не забудьте установить в значение 0Ah (1010b).
Вроде пока вс.
Ну и в NedoPC-90.AVROS я добавил каталог, в котором храняться правильные значения fuse-битов, чтобы ОС запустилась. Эти значения прошиваются автоматом по команде Make load
ATmega128
Moderator: Shaos
-
- Fanat
- Posts: 88
- Joined: 21 Nov 2002 11:09
- Location: E-burg/Russia
Re: ATmega128
В доке написано, что в режиме совместимости с MEGA103 порт F работает только на чтение.SfS wrote:бит MEGA103C = 1 (отключаем совместимость с мегой103)
бит JTAGEN=1 (отключаем JTAG. если этого не сделать - то порт F работает только на ввод. в док ничего об этом не нашел. или дока куцая или я невнимательный. выяснилось только при подключении клавиатуры.)
При разрешенном JTAG, старшие биты порта F (4..7) заняты его линиями
и не могут использоваться как линии порта ввода/вывода.
Младшие биты (0..3) при этом работают либо на ввод/вывод,
либо как входы АЦП.
Это все написано в разделе альтернативных функций портов.
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Re: ATmega128
Советы для начинающихCaro wrote:В доке написано, что в режиме совместимости с MEGA103 порт F работает только на чтение.
При разрешенном JTAG, старшие биты порта F (4..7) заняты его линиями
и не могут использоваться как линии порта ввода/вывода.
Младшие биты (0..3) при этом работают либо на ввод/вывод,
либо как входы АЦП.
Это все написано в разделе альтернативных функций портов.

Про совместимость с MEGA103 в доке есть, не отрицаю. А вот про включенный JTAG - ни хрена у меня в доке нету.
Впрочем у меня неполная дока. Возможно в полной и все есть.
-
- Fanat
- Posts: 88
- Joined: 21 Nov 2002 11:09
- Location: E-burg/Russia
Re: ATmega128
У меня DS - ATMega128(l).pdf размером больше 3 МБайт содержит 389 страниц текста.SfS wrote:Про совместимость с MEGA103 в доке есть, не отрицаю. А вот про включенный JTAG - ни хрена у меня в доке нету.
Впрочем у меня неполная дока. Возможно в полной и все есть.
Я думаю это полная дока. Скачал с сайта www.atmel.com
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Re: ATmega128
Тоже уже скачал.Caro wrote:У меня DS - ATMega128(l).pdf размером больше 3 МБайт содержит 389 страниц текста.
Я думаю это полная дока. Скачал с сайта www.atmel.com

-
- Fanat
- Posts: 88
- Joined: 21 Nov 2002 11:09
- Location: E-burg/Russia
Re: ATmega128
Рекомендую, если еще не были, зайти по ссылке:SfS wrote:Теперь если что вылезет - то только изза невнимательности. Ну или реальных недокументированных фич.
http://www.procyonengineering.com/avr/avrlib/
Отличный набор готовых решений для AVR на C.
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Re: ATmega128
Спасибо. Прекрасная ссылка.Caro wrote:Рекомендую, если еще не были, зайти по ссылке:SfS wrote:Теперь если что вылезет - то только изза невнимательности. Ну или реальных недокументированных фич.
http://www.procyonengineering.com/avr/avrlib/
Отличный набор готовых решений для AVR на C.

-
- Senior
- Posts: 124
- Joined: 09 Jan 2009 20:30
- Location: Мурманск
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
-
- God
- Posts: 1101
- Joined: 29 Dec 2003 01:00
- Location: Москва
ЭЭЭ нет ...HardWareMan wrote:На асме вроде все проканывает. С для МК - моветон.FreemaN wrote:Кто может подсказать почему нельзя обьявить константу во флеш памяти? (WinAVR-20070525)
flash const unsigned char CharMap[6][128]; не прокатывает
Для 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
-
- Senior
- Posts: 124
- Joined: 09 Jan 2009 20:30
- Location: Мурманск
Если подключить avr/pgmspace.h то прокатывает такое обьявление:FreemaN wrote:Кто может подсказать почему нельзя обьявить константу во флеш памяти? (WinAVR-20070525)
flash const unsigned char CharMap[6][128]; не прокатывает
const unsigned char CP866[128][6] PROGMEM={...};
Всё что ты видишь - лживый облик.