Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
09.02.2009, 12:44
|
#101
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Если исходники править не только по синтаксису а по алгоритму то получим тест-сравнение мастерства програмистов а не сравнение качества кодирования компиляторов.
Хотя ИМХО сравнение это смысла не имеет.
Большинство людей наверняка предпочитает УДОБНЫЕ кресла а не "правильные физиологически".
Пожалуй большинство людей предпочитают добавлять дым во вдыкаемый воздух и еще платит за это.
CVAVR на мой взгляд УДОБЕН НАЧИНАЮЩЕМУ - поэтому я и рекомендую его использовать.
И качать для старта всего то рекомендованый
CVAVR 2 Мб + 4 Мб симулятор VMLAB + 4 Мб курс.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
09.02.2009, 13:28
|
#102
|
Прописка
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Трое суток без инета, ну вы ребята даете :P . Судя по тому что сказано намного выше нужно выбирать компилятор с самого начала проекта. Т.к. переделывать весь проект после его написания и появления "глюков" в самом конце занятие считаю трудоемким и например мне в данной ситуации непосильным (сильно ограничен во времени). Хотя на днях поставил WinAVR и попробовал откомпилить малюсинький код, моей радости не было конца, но когда загнал туда код из CodeAVR настроение испортилось. Посему вопрос нет ли какого либо менее болезненного перехода с одного компилятора на другой может можно просто какието плагины прикрутить или библиотеки вспомогательные?
|
|
|
|
09.02.2009, 13:39
|
#103
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Если вы пишите на Си то на любом компиляторе будет работать.
Если вы используете синтаксис конкретного компилятора, то его конечно придется редактировать при переходе на другой компилятор.
Например в IAR __flash const
в CVAVR просто flash
Естественно придется править.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
09.02.2009, 17:48
|
#104
|
Почётный гражданин KAZUS.RU
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Сообщение от avr123-nm-ru
|
Если вы пишите на Си то на любом компиляторе будет работать.
Если вы используете синтаксис конкретного компилятора, то его конечно придется редактировать при переходе на другой компилятор.
Например в IAR __flash const
в CVAVR просто flash
Естественно придется править.
|
А говорят СИ платформено независимый ))) Зависим от комилтятора... АГА.. поди разбери.. где си а где синатаксис компилятора.. Если начинаеш только с Си работать ....
а нужно типа так:
#ifdef CVAVR
flash//компилируется если определить CVAVR
#endef
#ifdef IAR
__flash const//компилируется если определить IAR
#endef
#ifdef WINAVR
__flash const//компилируется если определить WINAVR
#endef
тогда код будет независимый ))))
|
|
|
|
09.02.2009, 18:04
|
#105
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Сообщение от woroba
|
Вообще наша задача не в написании нового алгоритма.
А в сравнении двух компиляторов. И по этому для чистоты теста нужно просто переписать мой проект под GCC. Сохраняя алгоритм (какой бы кривой он не был).
|
Можно и так. Но без гарантии работоспособности. Мне проверять не на чем, а свои проверенные многократно методы применить не удастся. Но все равно тогда нужно подробное описание существующего алгоритма и назначения всех нелокальных переменных.
Сообщение от woroba
|
Сам же девайс работает уже не первый год и не одном экземпляре.
Или вы хотите по своему алгоритму написать оба проекта? Если так то сажусь писать подробное описание алгоритма.
Вот схема с номиналами.
|
Про оба не понял. Я говорил про этот конкретный проект. Второй это кто? По поводу многолетнего использования девайса - я же не настаиваю, чтоб Вы заменили прошивку на мою. Она будет предложена по GPL - делайте с ней что хотите.
Прикрепленный файл: 9500825.rar
|
|
|
|
09.02.2009, 18:16
|
#106
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Сообщение от picavr
|
А говорят СИ платформено независимый )))
|
Попробуйте найти в С упоминание о флеш или еепром. Их там нет, язык создавался во времена, когда отсутствовала Гарвардская архитектура и было единое адресное пространство. Сейчас все усложнилось и у АВР уже три адресных пространства. Вот чтобы с ними можно было работать и ввели расширения языка. Есть два подхода этого, один требует только спецификации типа памяти и дальнейшя работа идет как с обычной переменной(ИАР, CV). Второй реализует работу с этими областями через библиотечные функции. Мне больше импонирует второй - сразу видно что потребуются большие ресурсы времени, чем на простое присваивание.
Код:
|
// CV синтаксис
MyEepromVar = 0xFEFA;
// GCC
eeprom_write_word(&MyEepromVar, 0xFEFA); |
Что тот, что другой варианты займут около 10 миллисекунд. Но второй напоминает об этом нагляднее.
|
|
|
|
09.02.2009, 19:22
|
#107
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от picavr
|
А говорят СИ платформено независимый ))) Зависим от комилтятора...
|
Компилятор это ж не платформа. Компилятор это творчество тех кто его написал.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
09.02.2009, 20:59
|
#108
|
Гражданин KAZUS.RU
Регистрация: 13.06.2005
Адрес: РК г.Павлодар
Сообщений: 866
Сказал спасибо: 99
Сказали Спасибо 216 раз(а) в 140 сообщении(ях)
|
Сообщение от kison
|
Можно и так. Но без гарантии работоспособности.
Про оба не понял. Я говорил про этот конкретный проект. Второй это кто?
|
Работоспособность не требуется.
А на счет обоих я имел ввиду ваш вариант алгоритма и для CV и для GCC.
Прикрепленный файл: 9500825.rar
__________________
Не ошибается лишь тот, кто ни чего не делает!
|
|
|
|
09.02.2009, 21:03
|
#109
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Сообщение от woroba
|
Вот схема с номиналами.
|
Эти номиналы мне не нужны. А нужных опять нет. Нужны R17,R18,C9,C8,IC3,IC4. Остальные не важны.
Прикрепленный файл: 9500825.rar
|
|
|
|
09.02.2009, 21:12
|
#110
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Сообщение от woroba
|
Работоспособность не требуется.
|
Т.е. требуется простая тупая адаптация под другой компилятор?
Сообщение от woroba
|
А на счет обоих я имел ввиду ваш вариант алгоритма и для CV и для GCC.
|
Я не готов переписывать под CV библиотечные функции GCC. Как из своих библиотек, так и из стандартных. Это ИМХО бессмысленно. Так что предложение касается только одного варианта под winavr.
Прикрепленный файл: 9500825.rar
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:41.
|
|