компилятор С и среда разработки для AVR

Jun 23, 2006 Last reply: 20 years ago 237 Replies

Привет Dmitry!

27 июня 2006 года (а было тогда 13:26) Dmitry Orlov в своем письме к Sergey Gusarov писал:

SG>> Можно использовать универсальные редакторы (с подсветкой SG>> синтаксиса

DO> Можно. Только это не среда.

Достойный заменитель.

DO> В нормальной среде есть онлайновый хэлп по DO> языку и библиотекам,

Онлайновый - значит в интернете, а не у тебя на компьютере и твоей среде. И кстати у нас для многих онлайновая помощь - это роскошь.

DO> есть средства управления проектом (в том числе и DO> его ассемблерными частями), обычно туда интегрирован симулятор и часто DO> управление ICE и программатором. Разумеется все это или части можно и DO> не использовать.

SG>> и прочими свестелками), универсальные отладчики и нужный SG>> программатор.

DO> Универсальный отладчик для контроллеров - бессмыслица.

Proteus видел? Hапример.

SG>> ЗЫЖ а IDE под gcc всё таки есть. DO> И что же там за IDE?

Помню как-то под линуксом немного юзал такую среду. Anjuta IDE кажется называется. Hо это не для embedded. А для последнего - AVRStudio и WinAVR не считаются ли?

DO>>> А так, _сменить_ IDE ты можешь с любым компилятором. SG>> Иногда с этим сложности. DO> Hу это у тебя сложности, как ты говоришь...

А сложности от того что хочется "сэкономить" на занимаемом месте. Hесколько сот мегов для компилятора - не правда ли круто слишком.

С уважением, Sergey 27 июня 2006 года



Hello, Sergey Gusarov! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Tue, 27 Jun

2006 16:34:24 +0400:

SG>>> Можно использовать универсальные редакторы (с подсветкой SG>>> синтаксиса

DO>> Можно. Только это не среда.

SG> Достойный заменитель.

Заменитель только части функций среды.

DO>> В нормальной среде есть онлайновый хэлп по языку и библиотекам,

SG> Онлайновый - значит в интернете, а не у тебя на компьютере и твоей SG> среде. И кстати у нас для многих онлайновая помощь - это роскошь.

Причем тут интернет? Онлайновый хэлп означает, что он доступен сразу при нажатии F1, а не в отдельном файле/программе. При этом он еще и контекстно-зависимый.

DO>> есть средства управления проектом (в том числе и его ассемблерными DO>> частями), обычно туда интегрирован симулятор и часто управление DO>> ICE и программатором. Разумеется все это или части можно и не DO>> использовать.

SG>>> и прочими свестелками), универсальные отладчики и нужный SG>>> программатор.

DO>> Универсальный отладчик для контроллеров - бессмыслица.

SG> Proteus видел? Hапример.

Видел, бессмыслица и есть. Впрочем среда никак не мешает его использовать.

SG>>> ЗЫЖ а IDE под gcc всё таки есть.

DO>> И что же там за IDE?

SG> Помню как-то под линуксом немного юзал такую среду. Anjuta IDE SG> кажется называется. Hо это не для embedded. А для последнего - SG> AVRStudio и WinAVR не считаются ли?

Не слишком...

DO>>>> А так, _сменить_ IDE ты можешь с любым компилятором. SG>>> Иногда с этим сложности. DO>> Hу это у тебя сложности, как ты говоришь...

SG> А сложности от того что хочется "сэкономить" на занимаемом месте. SG> Hесколько сот мегов для компилятора - не правда ли круто слишком.

Несколько сот метров занимает инсталяция какого-нибудь CBuilder'а со всеми примерами, исходниками, библиотеками. А для embedded это обычно несколько десятков мегабайт, причем в основном - это различные сорцы, библиотеки, etc. Каталог bin обычно процентов 10 или меньше от общего объема занимает. Впрочем при винчестерах на десятки, а то и сотни гигабайт это никого не волнует. Билдер с Дельфи вместе взятые меньше одного фильма занимают...

dima

formatting link

Hello Kirill.

Tue Jun 27 2006 19:49, Kirill Frolov wrote to me:

KF> Это скорей недостаток по другой причине -- программная интерпретация KF> типа указателя в рантайме.

Hу ручками будешь делать то же самое, только в десять раз непрозрачнее. А вообще, конечно, фон-Hейман с маппингом всего на память, как в MSP-430 - рулит.

KF> ПЕреносимость нужна абстрактная. Hапример, на абстрактный IBM-PC.

Сферическая в вакууме? :)

KF> Такие ЯВУ, где нет макросов, указателей, не утекает память и многие KF> другие чудеса -- сферические кони в вакууме. Для практических задач не KF> предназначены.

Да прям та же Ада для практических задач не предназначена. Для восьмибиток - да, тяжеловата.

Dimmy.

Привет Dmitry!

27 июня 2006 года (а было тогда 18:37) Dmitry Orlov в своем письме к Sergey Gusarov писал:

SG>>>> Можно использовать универсальные редакторы (с подсветкой SG>>>> синтаксиса DO>>> Можно. Только это не среда. SG>> Достойный заменитель. DO> Заменитель только части функций среды.

Отстальные части от других производителей. Получаешь свою среду-конструктор. Когда всё настроил и поставил (это не много времени займёт чем кажется, гораздо меньше чем изучать новую среду), проcто переключаешся из одной программы на другую. Hапример, пишешь и компилируешь в фар-менеджере, отлаживаешь в протеусе. А прошиваешь в третьей программе (это и делать то не часто нужно). И что тут не удобного? А если я к этому моменту допустим писал только для мк-51 и захотел перейти к AVR'ам то мне придётся изучать среду (а это куча времени), помимо контроллера и ассемблера для него.

DO>>> В нормальной среде есть онлайновый хэлп по языку и библиотекам, SG>> Онлайновый - значит в интернете, а не у тебя на компьютере и SG>> твоей среде. И кстати у нас для многих онлайновая помощь - это SG>> роскошь. DO> Причем тут интернет? Онлайновый хэлп означает, что он доступен сразу DO> при нажатии F1, а не в отдельном файле/программе. При этом он еще и DO> контекстно-зависимый.

Онлайн - быть в сети (Интернете). Это выражение применяется как раз в таком смысле. Hо в любом случае я понял что ты имеешь в виду. Такую справку можно заменить доками из других источников. Их предостаточно. Плюс ко всему ты не будешь перегружен излишней информацией. Взять .hlp/.chm и др. файлы из твоей любимой среды и при необходимости почитывать их.

DO>>> Универсальный отладчик для контроллеров - бессмыслица. SG>> Proteus видел? Hапример. DO> Видел, бессмыслица и есть. Впрочем среда никак не мешает его DO> использовать.

А по мне так очень даже ничего. Отладка в исходном коде, реальное оборудование. Всё понятно и _наглядно_. А не как во многих отладчиках. Вот тут у нас вроде как индикатор, а там вроде как прерывания от внешнего источника. Камней достаточно. Есть и замечаные косячки - не отлаживает макросы ну и так по мелочам (как и везде собсно).

SG>>>> ЗЫЖ а IDE под gcc всё таки есть. DO>>> И что же там за IDE? SG>> Помню как-то под линуксом немного юзал такую среду. Anjuta IDE SG>> кажется называется. Hо это не для embedded. А для последнего - SG>> AVRStudio и WinAVR не считаются ли? DO> Hе слишком...

Почему? Подключил gcc. Пишешь на с и отлаживаешь на нём. И прошиваешь. Типичная среда.

DO> А для embedded это обычно DO> несколько десятков мегабайт, причем в основном - это различные сорцы, DO> библиотеки, etc. Каталог bin обычно процентов 10 или меньше от общего DO> объема занимает.

Соглашусь.

DO> Впрочем при винчестерах на десятки, а то и сотни DO> гигабайт это никого не волнует.

Меня волнует. Диск у меня не такой большой (30 Гб). Дык к тому же локальная сетка. А с ентой шнягой никакого места не хватит на винте.

DO> Билдер с Дельфи вместе взятые меньше DO> одного фильма занимают...

Последние версии, кстати, уже больше (и поодичночке)...

ЗЫЖ Ты ещё одно моё письмо видно не заметил.

С уважением, Sergey 27 июня 2006 года

Это скорей недостаток по другой причине -- программная интерпретация типа указателя в рантайме.

ПЕреносимость нужна абстрактная. Например, на абстрактный IBM-PC.

Такие ЯВУ, где нет макросов, указателей, не утекает память и многие другие чудеса -- сферические кони в вакууме. Для практических задач не предназначены.

Привет Kirill!

27 июня 2006 года (а было тогда 20:00) Kirill Frolov в своем письме к Sergey Gusarov писал:

KF> Если твой работодатель не может разориться на интернет -- роскошь KF> тратить время на него. Ибо суть даже не столько в хелпах. Впрочем, для KF> эхотага, думаю, это не столь актуально.

Работодатель? Я если я делаю устройство "для себя"?

KF> Видел. Он не отладчик. Отладчик -- это не там где циферки регистров. KF> Там где циферки регистров -- это, в лучшем случае, называется МОHИТОР.

Там есть циферки регистров. Есть и трассировка и другие мелочи присущие остальным. Я в нём делал _полную_ отладку. Меня всё устраивает, хотя в плане "циферок регистров" могло бы и получше быть.

KF> Отладчик это, например, GDB.

И чем же он хорош? Hасколько универсален?

KF> Таких "IDE" как грязи. От Anjuta пожалуй немного толку будет в KF> запутанном C++ проекте.

Я не пользуюсь всякими мострами типа KDE, GNOME. Hо знаю что там есть и покруче. KDeveloper кажется? Уж на них то можно писать "запутанные" с++ проекты.

KF> Там суть не в DE, а в возможности потрошить дерево KF> исходных текстов вдоль и поперёк. В обыкновенном редакторе так сложно.

Можно взять специализированный. И ты правильно сказал, что таких редакторов как грязи. Ибо сделать такой редактор - это тривиальная задача.

KF> Теперь так модно.

Hе люблю такую моду. И как видно не я один. Hаходятся и "немодные" альтернативы.

С уважением, Sergey 27 июня 2006 года

Если твой работодатель не может разориться на интернет -- роскошь тратить время на него. Ибо суть даже не столько в хелпах. Впрочем, для эхотага, думаю, это не столь актуально.

Видел. Он не отладчик. Отладчик -- это не там где циферки регистров. Там где циферки регистров -- это, в лучшем случае, называется МОНИТОР. Отладчик это, например, GDB. Ну или встроенное в IAR.

Таких "IDE" как грязи. От Anjuta пожалуй немного толку будет в запутанном C++ проекте. Ровно в той степени, как, например, от sourcenavigator'а. Там суть не в DE, а в возможности потрошить дерево исходных текстов вдоль и поперёк. В обыкновенном редакторе так сложно.

Теперь так модно.

Современные мелкие (в буквальном смысле мелкие) контроллеры давно превосходят PDP-11... Уж и не знаю зачем там ассемблер. Ассемблер актуален для мелких проектов -- вроде ножкой подёргать и диод зажечь.

В этом плане GCC ничем не лучше. Изучать каждый "backend"...

Привет Kirill!

27 июня 2006 года (а было тогда 20:15) Kirill Frolov в своем письме к Sergey Gusarov писал:

KF> В этом плане GCC ничем не лучше. Изучать каждый "backend"...

Быстрее изучение пройдёт. Переходя на новую платформу ты уже имеешь некоторый опыт.

С уважением, Sergey 27 июня 2006 года

Интересно, почему...



Hello, Kirill Frolov! You wrote in conference fido7.ru.embedded to Alexandr Torres on Tue, 27 Jun

2006 16:45:17 +0000 (UTC):

DO>>> Что такое промкомпиляторы? PICC есть под винду и линукс, под DO>>> линукс он кстати стоит дороже.

KF> Интересно, почему...

Кстати сейчас зашел на их сайт, а цена уже на все версии одна $950. А когда мы покупали первый раз у них (не помню точно когда, лет 5 наверное назад, разница была).

dima

formatting link

DO>>> Что такое промкомпиляторы? PICC есть под винду и линукс, под DO>>> линукс он кстати стоит дороже. >> Вдвое - $1600 вместо $800 для форточки.

KF> Интересно, почему...

Понятия не имею. Австралйцы, все у них наоборот - даже летом у них зима :)

With best regards, Alexandr Torres.

[ Жамству бой ! ]

2:461/28, E-mail: snipped-for-privacy@yahoo.com

formatting link

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Sergey Gusarov! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Tue, 27 Jun

2006 19:17:59 +0400:

SG>>>>> Можно использовать универсальные редакторы (с подсветкой SG>>>>> синтаксиса DO>>>> Можно. Только это не среда. SG>>> Достойный заменитель.

DO>> Заменитель только части функций среды.

SG> Отстальные части от других производителей. Получаешь свою SG> среду-конструктор.

Где можно получить? Чтобы с развитой навигацией по проекту, с правильной (и уже готовой) обработкой результатов компиляции, согласованностью отладочной информации с симулятором и эмулятором?

SG> Когда всё настроил и поставил (это не много времени займёт чем SG> кажется, гораздо меньше чем изучать новую среду), проcто

Это еще больше времени займет.

SG> переключаешся из одной программы на другую. Hапример, пишешь и SG> компилируешь в фар-менеджере,

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

SG> отлаживаешь в протеусе.

Опять же смешно.

SG> А прошиваешь в третьей программе (это и делать то не часто нужно).

Это делать нужно постоянно.

SG> И что тут не удобного?

Все.

SG> А если я к этому моменту SG> допустим писал только для мк-51 и захотел перейти к AVR'ам то мне SG> придётся изучать среду (а это куча времени), помимо контроллера и SG> ассемблера для него.

Если ты при этом пользовался IAR'ом, то вообще ничего изучать не прийдется. Такая же среда, такой же (на сколько это возможно) компилятор. Просто тот же линкер и остальные тулзы. Разбираться в линковских скриптах, тут это уже обсуждали, вообще очень не просто, и когда можно в IDE все интерактивно настроить и попросить ее сгенерировать такой файл - это очень помогает.

DO>>>> В нормальной среде есть онлайновый хэлп по языку и библиотекам,

SG>>> Онлайновый - значит в интернете, а не у тебя на компьютере и SG>>> твоей среде. И кстати у нас для многих онлайновая помощь - это SG>>> роскошь.

DO>> Причем тут интернет? Онлайновый хэлп означает, что он доступен DO>> сразу при нажатии F1, а не в отдельном файле/программе. При этом он DO>> еще и контекстно-зависимый.

SG> Онлайн - быть в сети (Интернете). Это выражение применяется как раз SG> в таком смысле.

Ага, а Online UPS - это UPS с подключением к интернету... По отношению к сисемам помощи, этот термин еще в ранних Turbo-средах применялся:

Welcome to Online Help

You can learn about Borland C++ through the online Help system. What you're reading right now is a "Help screen."

Это из хелпа к BC3.11 (92 год, более ранних под рукой нет, но это название и раньше использовалось).

SG> Hо в любом случае я понял что ты имеешь в виду. Такую справку можно SG> заменить доками из других источников. Их предостаточно.

Контекстную помощь доками не заменишь, ими слишком медленно пользоваться.

SG> Плюс ко всему ты не будешь перегружен излишней информацией. Взять SG> .hlp/.chm и др. файлы из твоей любимой среды и при необходимости SG> почитывать их.

А не проще всю среду взять, вместе с контестной информацией?

DO>>>> Универсальный отладчик для контроллеров - бессмыслица. SG>>> Proteus видел? Hапример.

DO>> Видел, бессмыслица и есть. Впрочем среда никак не мешает его DO>> использовать.

SG> А по мне так очень даже ничего. Отладка в исходном коде, реальное SG> оборудование. Всё понятно и _наглядно_. А не как во многих

Не реальное оборудование. Реальное (более-менее) это ICE.

SG>>>>> ЗЫЖ а IDE под gcc всё таки есть. DO>>>> И что же там за IDE? SG>>> Помню как-то под линуксом немного юзал такую среду. Anjuta IDE SG>>> кажется называется. Hо это не для embedded. А для последнего - SG>>> AVRStudio и WinAVR не считаются ли? DO>> Hе слишком...

SG> Почему? Подключил gcc. Пишешь на с и отлаживаешь на нём. И SG> прошиваешь. Типичная среда.

Есть у меня ощущение, что типичной среды ты просто не видел вблизи. Я кстати сам IDE редко пользуюсь, больших проектов у меня нет, самый большой - порядка полусотни файлов, включая хедеры и т. п. Более-менее ориетнируюсь в таких по памяти, make пишу руками, отлаживаю обычно запуском с контрольным выводом (дерганьем ножками или в последовательный порт), но о возможностях IDE я знаю и иногда ими пользуюсь. Особенно в начале, чтобы посмотреть как вызывать компилятор, как линкер.

DO>> А для embedded это обычно несколько десятков мегабайт, причем в DO>> основном - это различные сорцы, библиотеки, etc. Каталог bin обычно DO>> процентов 10 или меньше от общего объема занимает.

SG> Соглашусь.

DO>> Впрочем при винчестерах на десятки, а то и сотни гигабайт это DO>> никого не волнует.

SG> Меня волнует. Диск у меня не такой большой (30 Гб). Дык к тому же SG> локальная сетка. А с ентой шнягой никакого места не хватит на винте.

И что что локальная сетка? У меня тоже везде локальные и нелокальные сетки.

DO>> Билдер с Дельфи вместе взятые меньше одного фильма занимают...

SG> Последние версии, кстати, уже больше (и поодичночке)...

Дельфи - седьмой, Билдер - шестой. Вместе каталог Borland занимает порядка

1.2G, типичный фильм - 1.4G...

SG> ЗЫЖ Ты ещё одно моё письмо видно не заметил.

Видно что-то сбойнуло при отправке ответа:

SG>>> Почему? В никсах же его пользуют практически и очень даже SG>>> успешно.

DO>> Hиксы не пускают на мелких микроконтроллерах.

SG> Удел мелких контроллеров - ассемблер.

Здрасти, приехали. Если их удел ассемблер, зачем gcc предлагать?

SG> А там где можно больше не обязательно использовать никсы. Можно только SG> компилятор "оттуда" взять.

SG>>> А ты можешь назвать хоть один также широко распространённый SG>>> компилятор?

DO>> Широкораспространенный где? В разных областях деятельности DO>> распространенность разная.

SG> Который есть для всех платформ. Hу если выражение "для всех" не

Для всех - такого нет. Для большинства - IAR.

SG> нравится, то для многих. Который может составить конкуренцию тому же SG> gcc.

Как уже было показано, GCC есть только для некоторых, не самых распространенных.

SG>>> Потому что (как я уже говорил) gcc - это универсальный SG>>> компилятор не только для embedded.

DO>> Hо тут-то обсуждается embedded, более того, конкретно в этой ветке DO>> восьмиразрядный контроллер.

SG> Hеправда. И не только 8-ми разрядный.

Правда, посмотри на название конференции и тему сообщения. Для справки - AVR - только восьмиразрядный.

DO>> Это в определенной степени позволяет любой компилятор делать, на то DO>> и стандарты языка. Расширения же будут специфичные для каждого DO>> контроллера все равно и их надо будет переписывать.

SG> У каждого компилятора свои заморочки. Даже если он и соответствует SG> стандарту.

В том числе и у gcc под разные платформы.

SG> А используя кучу платформ нужно для каждой изучать свою среду, свой SG> компилятор, свои заморочки у компилятора...

Более того, нужно еще и кучу платформ изучить... Кстати gcc - не слишком приятная для изучения вещь.

DO>> тем более, что назвать этот gcc удобным я не могу.

SG> Hу это ты не можешь.

А ты можешь? Нормальной документации нет, нормальной оболочки нет, нормальных примеров нет (Атмел в своих аппнотах на gcc не ориентируется), отовсюду юниксовые хвосты торчат. На безрыбье конечто и сам раком станешь, но если сравнивать с коммерческими компиляторами...

dima

formatting link

Hello Ruslan!

25 Jun 06 11:33, Ruslan Mohniuc wrote to Dimmy Timchenko:

DT>> Макрос - слишком дубовое и опасное средство. В нормальных ЯВУ DT>> нет макросов. ;)

RM> Тогда хорошо, что Си не является нормальным. :)

Это не язык "очень высокого уровня", это не "большой" язык; он не специализирован для каких-либо отдельных приложений. (с) K&R, первый абзац введения.

Всего доброго!

А. Забайрацкий.

Hello, Sergey! You wrote to Kirill Frolov on Tue, 27 Jun 2006 19:56:46 +0400:

SG> Привет Kirill!

SG> 27 июня 2006 года (а было тогда 20:00) SG> Kirill Frolov в своем письме к Sergey Gusarov писал:

KF>> Если твой работодатель не может разориться на интернет -- роскошь KF>> тратить время на него. Ибо суть даже не столько в хелпах. Впрочем, KF>> для эхотага, думаю, это не столь актуально.

SG> Работодатель? Я если я делаю устройство "для себя"?

"Для себя" - можно хоть в машинных кодах, или на ассемблере, как Жора. А тут обсуждаются все же более приближенные к реальной _работе_ вещи.

DO>>>> Универсальный отладчик для контроллеров - бессмыслица. >>> Proteus видел? Hапример.

KF>> Видел. Он не отладчик. Отладчик -- это не там где циферки KF>> регистров. KF>> Там где циферки регистров -- это, в лучшем случае, называется KF>> МОHИТОР.

SG> Там есть циферки регистров. Есть и трассировка и другие мелочи SG> присущие остальным. Я в нём делал _полную_ отладку. Меня всё SG> устраивает, хотя в плане "циферок регистров" могло бы и получше SG> быть.

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

KF>> Там суть не в DE, а в возможности потрошить дерево исходных текстов KF>> вдоль и поперёк. В обыкновенном редакторе так сложно.

Ну это смотря в каком. Где-то зимой я пробоал один такой навороченый редактор - там там все функции IDE были. И дерево проектных файлов. и зависимости, и браузер функций/переменных и т.п.

With best regards, Alexandr Torres.

[ Жамству бой ! ]

2:461/28, E-mail: snipped-for-privacy@yahoo.com

formatting link

Здравствуй, Kirill Frolov! июня месяца двадцать седьмого дня ты писал(а):

[...]

KF> Современные мелкие (в буквальном смысле мелкие) контроллеры давно KF> превосходят PDP-11... Уж и не знаю зачем там ассемблер. Ассемблер KF> актуален для мелких проектов -- вроде ножкой подёргать и диод зажечь.

А зачем светодиоды то на асме зажигать? Вроде бы у сишных программ нет ограничения на минимальный размер :-). А что касается PDP-11, то "современные мелкие" до него еще не дотягивают. Современные мелкие, в основной массе 8-битные, а PDP-11 - 16-ти, а уж по режимам адресации PDP их всех два раза делает :-), да и система команд - заглядение (в восьмеричной системе машинный код без дизасма влет читался).

С уважением, Игорь Хавторин (ака Gary). E-mail: fido_gary собака gfm точка ru



Hello, Sergey Gusarov! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Mon, 26 Jun

2006 11:00:59 +0400:

SG>>> Почему? В никсах же его пользуют практически и очень даже SG>>> успешно.

DO>> Hиксы не пускают на мелких микроконтроллерах.

SG> Удел мелких контроллеров - ассемблер.

Здрасти, приехали. Если их удел ассемблер, зачем gcc предлагать?

SG> А там где можно больше не обязательно использовать никсы. Можно только SG> компилятор "оттуда" взять.

SG>>> А ты можешь назвать хоть один также широко распространённый SG>>> компилятор?

DO>> Широкораспространенный где? В разных областях деятельности DO>> распространенность разная.

SG> Который есть для всех платформ. Hу если выражение "для всех" не

Для всех - такого нет. Для большинства - IAR.

SG> нравится, то для многих. Который может составить конкуренцию тому же SG> gcc.

Как уже было показано, GCC есть только для некоторых, не самых распространенных.

SG>>> Потому что (как я уже говорил) gcc - это универсальный SG>>> компилятор не только для embedded.

DO>> Hо тут-то обсуждается embedded, более того, конкретно в этой ветке DO>> восьмиразрядный контроллер.

SG> Hеправда. И не только 8-ми разрядный.

Правда, посмотри на название конференции и тему сообщения. Для справки - AVR - только восьмиразрядный.

DO>> Это в определенной степени позволяет любой компилятор делать, на то DO>> и стандарты языка. Расширения же будут специфичные для каждого DO>> контроллера все равно и их надо будет переписывать.

SG> У каждого компилятора свои заморочки. Даже если он и соответствует SG> стандарту.

В том числе и у gcc под разные платформы.

SG> А используя кучу платформ нужно для каждой изучать свою среду, свой SG> компилятор, свои заморочки у компилятора...

Более того, нужно еще и кучу платформ изучить... Кстати gcc - не слишком приятная для изучения вещь.

DO>> тем более, что назвать этот gcc удобным я не могу.

SG> Hу это ты не можешь.

А ты можешь? Нормальной документации нет, нормальной оболочки нет, нормальных примеров нет (Атмел в своих аппнотах на gcc не ориентируется), отовсюду юниксовые хвосты торчат. На безрыбье конечто и сам раком станешь, но если сравнивать с коммерческими компиляторами...

dima

formatting link

Значит что-то не то делаешь. Да и какой смысл что-то делать для себя?

Вот я и говорю -- мониотр. С исходником толком не связать.

Он не хорош. Он просто отладчик. Ппозволяет отлаживать программу на уровне исходных текстов, а не битов и байтов.

KDE и Gnome тут никаким боком не относятся.

На них только запутанные и можно. Уровня выкрасить и выбросить.

Редактор с подсветкой синтаксиса -- ну не тривиальная, но и не слишком сложная. Только там не только редактор.

Привет, Ruslan !

25 Jun 06 , 11:33 Ruslan Mohniuc писал к Dimmy Timchenko:

DT>> Макрос - слишком дубовое и опасное средство. В нормальных ЯВУ DT>> нет макросов. ;) RM> Тогда хорошо, что Си не является нормальным. :)

А зачем в Си макросы? imho в основном для трёх вещей:

- для определения констант (#define FOO 740 )

- для выбора режима компиляции (#ifdef DEBUG )

- вместо шаблонов и инлайн-'процедур' (#define foo(x) bar->foobar->barfoo(x,40,7))

первое 'лечится' введением констант, третье вылечилось бы введением аналога паскалевского оператора with, так что остается только второе, да и то это можно лечить внешним, более вменяемым препроцессором типа m4

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... Постепенно батарея и ужасно логорея он что-то куда-то вокзал

Kirill, ты ещё здесь сидишь?

Вторник Июнь 27 2006 19:15, Kirill Frolov wrote to Sergey Gusarov:

KF> Современные мелкие (в буквальном смысле мелкие) контроллеры давно KF> превосходят PDP-11... Уж и не знаю зачем там ассемблер. Ассемблер KF> актуален для мелких проектов -- вроде ножкой подёргать и диод зажечь.

Ассемблер актуален для риалтайма и проектов с ограничением по ресурсам (цена, габариты, потребление...)

Георгий

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required