Полная версия этой страницы:
Си для ATtiny15L
Alex_St
Jan 25 2005, 19:23
Подскажите, плз, есть ли где компиляторы Си для ATtiny15L. Если есть, то гле можно взять? IAR, например, поддерживает только ATtiny22 и ATtiny26.
я подозреваю что его не может существовать, так как в ней (ATtiny15L) нет опративной памяти (SRAM) а C без стека и кучи (heap) это уже не C
imagecraft tiny edition. Был такой... Он tiny поддерживал. Сам не работал в нем. Обычный imagecraft испытывал. Тогда непонравился, сейчас на авр не пишу.
все что поддерживает imagecraft tiny edition это AT tiny13/tini2313/mega48 а у них у всетаки есть SRAM соотвественно 64 у tiny13 а также 128 и 256 у tini2313 и у mega48, так что без SRAM никак
IAR можно настроить под любой AVR.
Для этого надо посмотреть опции компилятора и линкёра.
Чтобы было понятнее прилагаю фалы конфигурации для atmega8 c кратким описанием.
IgorKossak
Jan 26 2005, 07:37
Два соображения по поводу темы:
1. Для полноценного использования С оперативная память таки нужна.
И если без кучи можно обойтись, то без стека никак. Компилятор от IAR не поддерживает аппаратные стеки.
2. 512 слов Flash памяти программ - это не настолько большое поле, чтобы разгоняться на С. Ассемблер в таком случае - наилучший выход (хоть даже от IAR или Atmel). Если никаких других кристаллов в будущем не предполагается применять, то можно и Алгоритм Билдер использовать
Олег13
Jan 26 2005, 08:03
IAR 3.20C в списке поддерживаемых процессоров tiny15 присутствует !
IgorKossak
Jan 26 2005, 08:46
Цитата(Олег13 @ Jan 26 2005, 11:03)
IAR 3.20C в списке поддерживаемых процессоров tiny15 присутствует !
Смотрите глубже!
Файл ioavr.h содержит более чем исчерпывающую информацию о кристаллах, поддерживаемых средой. tiny15 находится в секции "// Files supported only by the assembler".
Файл iotiny15.h содержит буквально следующее:
Код
#ifdef __IAR_SYSTEMS_ICC__
#error This compiler currently does not support the ATtiny15.
#endif /* __IAR_SYSTEMS_ICC__ */
Отсюда вывод - только ассемблер.
Alex_St
Jan 26 2005, 09:19
Цитата(aal @ Jan 26 2005, 05:29)
imagecraft tiny edition. Был такой... Он tiny поддерживал. Сам не работал в нем. Обычный imagecraft испытывал. Тогда непонравился, сейчас на авр не пишу.
Спасибо. Уже качаю. Будем пробовать. А есть ли где средство от жадности для него (он только 45 дней)?
Если в программе не будут использованы прерывания и вызовы функций, то можно и на си(см сообщение выше. опция -v0)
Конечно это убого, но если вышесказанное выполняется, то тоже вариант.
Если же необходимо реализовать сложный относительно ресурсов tiny алгоритм, то лучше всё таки на asm
А вот и лекарство. Проверено. Работает и не только для tiny!
Цитата(_Sam_ @ Jan 26 2005, 12:34)
Если же необходимо реализовать сложный относительно ресурсов tiny алгоритм, то лучше всё таки на asm
Рекомендую попробовать не асм, а Algorithm Builder
Годаздо удобнее.
Alex_St
Jan 29 2005, 15:25
2 SAMСпасибо.
Цитата(nml @ Jan 26 2005, 22:08)
Цитата(_Sam_ @ Jan 26 2005, 12:34)
Если же необходимо реализовать сложный относительно ресурсов tiny алгоритм, то лучше всё таки на asm
Рекомендую попробовать не асм, а Algorithm Builder
Годаздо удобнее.
А где его взять и естьли на него подробная дока?
IAR 3.10C тоже вроде как не поддерживает но когдя я столкнулся
c такой же траблой (tini12L тоже не поддерживается)
я поставил тип процессора -v0 закомментировал строчку в iotiny12.h которая ругалась на это и продолжал писать ..... в итоге готовая программа написанная на компиляторе не поддерживающим данный контроллер

Единственная трабла в том, что криво работали переменные разрядностью больше 1 байта(а именно сравнение)....... Вот и вся любовь
Alex_St
Feb 1 2005, 10:17
Всем спасибо.
Попробовал ImageCraft ICCTiny. Получился очень неоптимальный код, причем одинаковый для компиляции с оптимизацией и без. У IAR, правда под 2313 тот же код получился в 2.5 раза меньше.
Буду искать где купить ATTiny 13V - у него есть SRAM и его поддерживает IAR.
вот случайно наткнулся:
http://lightner.net/avr/ATtinyAvrGcc.htmlодин умелец адаптировал AVR GCC под tiny15
правда говорят, глаза бояться а руки делают
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.