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

 
 
> Что лучше взять для AVR?, Программить на С.
High Voltage
сообщение Nov 22 2005, 10:28
Сообщение #1


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

Группа: Новичок
Сообщений: 105
Регистрация: 28-09-05
Из: Москва
Пользователь №: 9 040



Что лучше и где взять, чтобы совмещать Асс и С/С++ под AVR? Никак не пойму, можно ли в AVR Studio писать на С/С++?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Георгий
сообщение Nov 25 2005, 11:42
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 269
Регистрация: 17-11-05
Из: Киров-Москва
Пользователь №: 10 957



А где она описана, какой хедер надо подключить?
И если компилер так бездумно оптимизирует, получается его надо перепроверять?!


--------------------
Обычно последним смеется тот, кто хуже соображает!
Go to the top of the page
 
+Quote Post
dxp
сообщение Nov 25 2005, 12:02
Сообщение #3


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(Георгий @ Nov 25 2005, 17:42) *
А где она описана, какой хедер надо подключить?
И если компилер так бездумно оптимизирует, получается его надо перепроверять?!

Не нужно его постоянно проверят. Нужно немножко подучить язык. У Вас цикл ничего не делает и компилятор его выкидывает, т.к. с его точки зрения (с точки зрения языка) с циклом или без - результат работы программы один и тот же. Но без цикла она работает быстрее и ее размер меньше. Поэтому компилятор и выкидывает этот цикл. Напишите в цикле код, который делает полезную работу и компилятор ничего выкидывать не будет.

Если хочется подавить подобные оптимизации, то можно использовать прямое указание компилятору не оптимизировать, объявив одну из переменных как volatile. Тогда компилятор не будет иметь права делать какие-либо предположения о поведении этой переменной и вынужден будет честно сгенерировать код для нее, даже если этот код ничего с точки зрения компилятора не делает.

Формирование задержки этим способом имеет то неудобство, что сложно предсказать, во сколько тактов реально выльется цикл. Для задания точной задержки в пакете EWAVR имеется специальная intrinsic функцию __delay_cycles(). При ее вызове компилятор сам организует код, формирующий указанную задержку. Чтобы она работала, нужно подключить заголовок inavr.h, иначе компилятор не видит прототипа и ругается.

Т.ч. почитайте, во-первых, доку по С, во-вторых, доку на компилятор - она очень внятная. Удачи.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
G}{OST
сообщение Nov 25 2005, 12:15
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 48
Регистрация: 6-05-05
Пользователь №: 4 784



Цитата(dxp @ Nov 25 2005, 15:02) *
Цитата(Георгий @ Nov 25 2005, 17:42) *

А где она описана, какой хедер надо подключить?
И если компилер так бездумно оптимизирует, получается его надо перепроверять?!

Не нужно его постоянно проверять.

Постоянно-то не надо, а вот время от времени - очень даже полезно smile.gif Оптимизатор довольно корявый у ИАРа. И от версии к версии разные глюки.


--------------------
cul8r!
* #ru_embedded - эмбеддерский чат
Go to the top of the page
 
+Quote Post
dxp
сообщение Nov 25 2005, 14:32
Сообщение #5


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(G}{OST @ Nov 25 2005, 18:15) *
Цитата(dxp @ Nov 25 2005, 15:02) *

Цитата(Георгий @ Nov 25 2005, 17:42) *

А где она описана, какой хедер надо подключить?
И если компилер так бездумно оптимизирует, получается его надо перепроверять?!

Не нужно его постоянно проверять.

Постоянно-то не надо, а вот время от времени - очень даже полезно smile.gif Оптимизатор довольно корявый у ИАРа. И от версии к версии разные глюки.

Глюки есть у всех. У ИАРа отличный компилятор и замечательный оптимизатор - лучший в своем классе. Всегда работаю с максимальным уровнем оптимизации, проблемы бывали, но не фатальные и не связанные именно с максимальным уровнем оптимизации. Как раз на максимальном уровне глюков меньше, чем на средних. Работаю с ИАРом с 1998 года, ни разу не пожалел.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Nov 25 2005, 15:28
Сообщение #6


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(dxp @ Nov 25 2005, 16:32) *
...
Глюки есть у всех. У ИАРа отличный компилятор и замечательный оптимизатор - лучший в своем классе. Всегда работаю с максимальным уровнем оптимизации, проблемы бывали, но не фатальные и не связанные именно с максимальным уровнем оптимизации. Как раз на максимальном уровне глюков меньше, чем на средних. Работаю с ИАРом с 1998 года, ни разу не пожалел.

Аналогично.
Начинал с версии 1.30.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- High Voltage   Что лучше взять для AVR?   Nov 22 2005, 10:28
- - G}{OST   Цитата(High Voltage @ Nov 22 2005, 13:28)...   Nov 22 2005, 10:35
- - starter48   Цитата(High Voltage @ Nov 22 2005, 16:28)...   Nov 22 2005, 10:35
- - High Voltage   А так чтобы для русского человека. Скачал, кр*кнул...   Nov 22 2005, 10:48
|- - starter48   Цитата(High Voltage @ Nov 22 2005, 16:48)...   Nov 22 2005, 10:59
- - High Voltage   Спасибо! Будем париться. P.S.: Про ломалку я ...   Nov 22 2005, 11:16
- - BVU   Все зависит от того сколько много Вы делали проект...   Nov 22 2005, 12:18
- - ikX   Цитата(High Voltage @ Nov 22 2005, 14:28)...   Nov 22 2005, 13:06
- - AndyBig   Эх... Есть одно неудобство у IAR после VC . Он не ...   Nov 22 2005, 16:28
|- - dxp   Цитата(AndyBig @ Nov 22 2005, 22:28) Эх.....   Nov 23 2005, 07:54
- - High Voltage   Писать я писал много на Ms VS 5.0, 6.0, 7.0 (.NET)...   Nov 22 2005, 16:38
- - JeDay   Попробуй ICC AVR. Мож понравится... http://www.ima...   Nov 22 2005, 20:33
- - sav6622   Прекрасно можно писать в С в самой среде AVRStudio...   Nov 23 2005, 07:44
- - lazycamel   Цитата(High Voltage @ Nov 22 2005, 14:28)...   Nov 23 2005, 07:46
- - MicronSys   Я использую WinAvr + VMLAB получается хорошая свя...   Nov 23 2005, 11:35
|- - noah   Цитата(MicronSys @ Nov 23 2005, 14:35) Я ...   Dec 15 2005, 08:02
- - Vict59   Использую IAR C 2.28 (написания кода) + AVRstudio ...   Nov 24 2005, 06:12
- - Георгий   А есть ли какая-то литература (желательно русская)...   Nov 24 2005, 13:22
- - dimka2001   Лучше всего codevision!!!   Nov 24 2005, 14:51
- - haker_fox   ЦитатаА есть ли какая-то литература (желательно ру...   Nov 25 2005, 00:32
- - Георгий   Спасибо. Видимо, пока у меня будет наоборот, быстр...   Nov 25 2005, 05:10
|- - IgorKossak   Цитата(Георгий @ Nov 25 2005, 07:10) ...В...   Nov 25 2005, 09:07
- - Георгий   В WinAVR-е было удобно контролировать, что компили...   Nov 25 2005, 10:01
- - Георгий   Столкнулся с непоняткой компиляции IAR-а. Исходник...   Nov 25 2005, 11:02
|- - IgorKossak   Цитата(Георгий @ Nov 25 2005, 13:02) ...П...   Nov 25 2005, 11:24
|- - IgorKossak   Цитата(G}{OST @ Nov 25 2005, 14:15) ... О...   Nov 25 2005, 12:35
||- - G}{OST   Цитата(IgorKossak @ Nov 25 2005, 15:35) Ц...   Nov 25 2005, 12:52
- - MALLOY2   Цитата(G}{OST @ Nov 25 2005, 15:52) Цитат...   Nov 25 2005, 13:07
|- - BVU   Ну и дела здесь...! До сегодняшнего дня (до да...   Nov 25 2005, 13:23
- - Георгий   Я согласен, что "одна из лучших", но это...   Nov 25 2005, 13:36
- - High Voltage   Не могу понять. Поставил сначала WinAVR 20050214, ...   Nov 26 2005, 22:16
- - High Voltage   Не могу понять. Поставил сначала WinAVR 20050214, ...   Nov 26 2005, 22:17
- - High Voltage   Вышлите мне лечилку пожалуйста на IAR EWAVR 4.11a ...   Nov 26 2005, 22:27
- - High Voltage   Почему тема не обновляется?   Nov 27 2005, 20:16
- - Георгий   Все же IAR классная штука! Разобрался с основа...   Nov 28 2005, 05:45
- - Rash   Цитата(Георгий @ Nov 28 2005, 09:45) Все ...   Nov 28 2005, 07:11
- - Георгий   ЦитатаОптимизация поставь хотя бы medium и MOV R2...   Nov 28 2005, 07:24
- - Rash   ЦитатаЭто как раз в Release варианте с полной опти...   Nov 28 2005, 07:31
- - Георгий   Так я и говорю, что в релизной прошивке этот код в...   Nov 28 2005, 07:32
- - haker_fox   ЦитатаТак я и говорю, что в релизной прошивке этот...   Nov 28 2005, 07:39
- - Георгий   К сожалению, нет. Этот модуль я перелопатил практи...   Nov 28 2005, 07:58
- - Георгий   Вопрос по опциям ИАРа - char можно сделать по умол...   Nov 28 2005, 11:03
- - Rash   Цитата(Георгий @ Nov 28 2005, 15:03) Вопр...   Nov 28 2005, 11:12
- - Георгий   Так я так и делаю, только в последнем примере не c...   Nov 28 2005, 11:50
- - IgorKossak   Георгий, обычно программисты стремятся к независим...   Nov 28 2005, 12:41
|- - dxp   Цитата(IgorKossak @ Nov 28 2005, 18:41) Ч...   Nov 29 2005, 06:41
- - Георгий   Я думаю, что Вы правы , спорить не буду. В тонкос...   Nov 28 2005, 13:08
|- - ReAl   Цитата(Георгий @ Nov 28 2005, 16:08) Я ду...   Nov 28 2005, 17:04
- - Rich   Народ, подскажите новичку: скачал последнюю AStudi...   Mar 10 2006, 19:04
|- - defunct   Цитата(Rich @ Mar 10 2006, 21:04) Народ, ...   Mar 11 2006, 04:26
- - beer_warrior   Несколько лет назад, когда начинал работать с gcc ...   Mar 10 2006, 20:46


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 17:40
Рейтинг@Mail.ru


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