реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Начал работать с http://www.recursion.jp/avrcdc
Oleg_IT
сообщение Feb 12 2007, 16:15
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 922
Регистрация: 3-06-05
Из: Москва
Пользователь №: 5 709



Есть вопросы.
Работаю на IAR 4.11.

CDC-IO.2007-01-23
С ATMega8 собирается, а с ATMega48 и ATMega88 нет, говорит памяти мало. Хотя должно хватать, с ATMega8 получается
2 686 bytes of CODE memory (+ 34 range fill )
187 bytes of DATA memory (+ 5 absolute )
В ATMega48 – 4 Кб.
Почему?

AVR-CDC.2006-08-28
В файле sw-uart.c неизвестно несколько переменных, PRR, PRADC…
На каком компиляторе они работают. Может я чего пропустил?

У кого есть вариант адаптированный для IAR 4.11? Помогите.
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 12 2007, 16:32
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Может применить оптимизацию? Кстати встречался в IARе, что частенько максимальная оптимизация по скорости дает МЕНЬШИЙ код, чем макс. оптимизация по размеру.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Feb 12 2007, 16:42
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Oleg_IT @ Feb 12 2007, 20:15) *
На каком компиляторе они работают. Может я чего пропустил?
На gcc по моему

Попробуйте мой вариант, вроде все собирается, только поправьте регистры прерываний, у мега8 и 88 они разные. Увидите на что ругается компилятор
Прикрепленные файлы
Прикрепленный файл  TEMP.rar ( 20.48 килобайт ) Кол-во скачиваний: 63
 


--------------------
Go to the top of the page
 
+Quote Post
Oleg_IT
сообщение Feb 12 2007, 17:49
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 922
Регистрация: 3-06-05
Из: Москва
Пользователь №: 5 709



Оптимизация не помогла

prottoss - нет файла usb_descriptors.h
Если не сложно дайте ещё main.c
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 12 2007, 18:21
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Я первый пост понял так , что для мега48 код получается 4 кб, а под мега8 - 2 с копейками.. Ж)... А что конкретно говорит компилятор? Может вы его не правильно понимаете?


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 12 2007, 21:06
Сообщение #6


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(GDI @ Feb 12 2007, 17:21) *
Я первый пост понял так , что для мега48 код получается 4 кб, а под мега8 - 2 с копейками.. Ж)...


Кто помнит banned, тут есть очень простое объяснение smile.gif
Под mega8 код компилировался в GCC там все в порядке с байтами, а вот в IAR проблема, ведь как мы помним из banned, 1 байт IAR - 2 байта AVR biggrin.gif
Go to the top of the page
 
+Quote Post
AlexG_changed
сообщение Feb 12 2007, 23:39
Сообщение #7


Участник
*

Группа: Validating
Сообщений: 64
Регистрация: 16-06-05
Пользователь №: 6 073



При переносе программы с Atmega8 на ATmega*8 размер кода возрастает, видимо за счет других методов доступа к регистрам периферии. Но разумеется не в два раза, а на ~8%, хотя это еще от самой программы зависит.

Сообщение отредактировал AlexG - Feb 12 2007, 23:42
Go to the top of the page
 
+Quote Post
prottoss
сообщение Feb 13 2007, 07:25
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Oleg_IT @ Feb 12 2007, 21:49) *
Оптимизация не помогла
prottoss - нет файла usb_descriptors.h
Если не сложно дайте ещё main.c

Прикрепленные файлы
Прикрепленный файл  TEMP.rar ( 6.99 килобайт ) Кол-во скачиваний: 53
 


--------------------
Go to the top of the page
 
+Quote Post
Oleg_IT
сообщение Feb 13 2007, 10:01
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 922
Регистрация: 3-06-05
Из: Москва
Пользователь №: 5 709



Цитата(GDI @ Feb 12 2007, 18:21) *
Я первый пост понял так , что для мега48 код получается 4 кб, а под мега8 - 2 с копейками.. Ж)... А что конкретно говорит компилятор? Может вы его не правильно понимаете?

Компилятор говорит это:
Error[e16]: Segment TINY_Z (size: 0x16 align: 0) is too long for segment definition. At least 0x16 more bytes needed. The problem occurred while
processing the segment placement command "-Z(DATA)TINY_I,TINY_Z,TINY_N=_..X_SRAM_TBASE:+_..X_SRAM_TSIZE", where at the moment of
placement the available memory ranges were "DATA:0--1"


Цитата(defunct @ Feb 12 2007, 21:06) *
Кто помнит banned, тут есть очень простое объяснение smile.gif
Под mega8 код компилировался в GCC там все в порядке с байтами, а вот в IAR проблема, ведь как мы помним из banned, 1 байт IAR - 2 байта AVR biggrin.gif

Можно про banned подробнее, не слышал я про это.

Ещё раз к prottoss
не хватает определений USBDeviceDescriptor, USBDeviceDescriptor, … И всё что в avr910. В «AVR910 In-System Programming» применяемых функций нет.



Кстати, определение

# if defined GIMSK
# define USB_INTR_ENABLE GIMSK
# elif defined EIMSK
# define USB_INTR_ENABLE EIMSK
# else
# define USB_INTR_ENABLE GICR
# endif

IAR не понимает, приходится ручками править. Это в IAR так и задумано?
Go to the top of the page
 
+Quote Post
TomaT
сообщение Feb 13 2007, 10:38
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 25-01-06
Из: г. Троицк, МО
Пользователь №: 13 575



Цитата(Oleg_IT @ Feb 13 2007, 10:01) *
Можно про banned подробнее, не слышал я про это.

AVR Das Mal, zwei, drei smile.gif http://electronix.ru/forum/index.php?showtopic=16600
Ведь специально написали "Для обязательного прочтения..."
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 13 2007, 11:02
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



так проблема с сегментом памяти TINY_Z... там есть какие то проблемы и отличия в мега8 и мега48... почитайте эту ветку... http://electronix.ru/forum/index.php?showt...=13883&st=0 вроде тут что то про это было или тут http://electronix.ru/forum/index.php?showtopic=18676


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 13:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01447 секунд с 7
ELECTRONIX ©2004-2016