|
Си для AVR |
|
|
|
Jan 15 2007, 22:26
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 12-01-07
Из: Крым
Пользователь №: 24 378

|
Здравствуйте , Уважаемые форумчане ! Я на этом форуме пока новенький . С AVR работаю с самого их рождения . На asm сделал огромное кол-во проэктов , и вот теперь хочется посмотреть что же такое Си , и в самом ли деле он так хорош для контроллеров ( и не только ) , сколько о нём восторженных отзывов . Из своего опыта хочу сказать - если программа хорошо продумана идеологически и логически , то всё остальное - дело техники ( и уж если на asm есть глюки , то виноват не asm , а руки ) . Поэтому хочется самому убедиться в его преимуществах ( и естественно недостатках ) . В связи с этим вопрос первый - поделитесь пожалуйста вылеченным IAR ( хочется начать с этого пакета ) , и подскажите пожалуйста хорошую книжку по Си ( желательно конечно на русском , в крайнем случае на английском ), желательно адаптированную для контроллеров , и уж если для AVR , то вообще хорошо . Заранее всем спасибо .
|
|
|
|
|
 |
Ответов
(15 - 29)
|
Sep 2 2007, 19:36
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Т.Достоевский @ Sep 2 2007, 22:18)  Перенесите... А почему Вы решили "переносить" какие-то свои личные проблемы с GCC,IAR,PCAD,.... на других? У меня, например, никаких проблем с портированием 'C' исходников с платформы на платформу (в отличие от ASM) /компилятор не возникает.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 2 2007, 20:15
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(Т.Достоевский @ Sep 2 2007, 21:33)  Если Вы не планируете написать windows под АВР, забудте про С НАВСЕГДА! А какие вообще у Вас лично претензии к Си. А то голословное утверждение да ещё в такой ветке отпугивает начинающих. Пожалуйста аргументируйте. Если разбирать более низкий пост о портировании программ, то он не выдерживает никакой критики. 1) Сопровождать программу и вносить в неё изменения на Си - в десятки раз легче. 2) Переносимость с камня на камень - в десятки раз легче. 3) Переносимость с компилятора на компилятор не такая уж и сложная. В тоже время вас никто не заставляет переходить с компилятора на компилятор. Тот же IAR или GCC поддерживает одновременно множество камней. 4) Отладка на Си тоже проще. 5) Результирующий код как правило не намного уступает.
|
|
|
|
|
Sep 2 2007, 20:31
|
Профессионал
    
Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387

|
Цитата Если Вы не планируете написать windows под АВР, забудте про С НАВСЕГДА! Гы  Никогда не писал программ для AVR на ассемблере. А что такое windows?
--------------------
aka Vit
|
|
|
|
|
Sep 2 2007, 21:17
|

Местный
  
Группа: Свой
Сообщений: 479
Регистрация: 8-05-07
Из: г. Ставрополь. Северный Кавказ. Россия
Пользователь №: 27 606

|
Цитата(SasaVitebsk @ Sep 3 2007, 00:15)  А какие вообще у Вас лично претензии к Си. А то голословное утверждение да ещё в такой ветке отпугивает начинающих. Пожалуйста аргументируйте. Аргументирую. Я сам больше схемотехник. Использую в своих изделиях 5 микроконтроллерных архитектур. И по времени столько же сколько автор поста. Однако с языками высокого уровня возникают определённые сложности. 1: Все компиляторы, это комерческие проэкты расчитанные на выкачивание максимального количества денег. (В том числе и бесплатые) Отсюда совешенная неуверенность, что через год Вы сможете БЫСТО добавить что нибудь в Вашу програму. 2: Пока что не встречал компилятора генерирующего хотя бы жалкое подобие асмовской программы. В основном код в РАЗЫ больше. 3 Перенести микроконтроллерый код с одной платформы на другую гораздо проще и главное быстрее чем разбираться с тонкостями компилятора. Которые к тому же отличаются от версии к версии. Ещё раз повторюсь микроконтроллерного. Речь не идет о многомегабайтном проэкте который врядли применим к AVR. По поводу пункта 1. Вполне возможно что компилятор старой версии и захочет работать под вистой 2. Но на новое железо, ХР вы скорее всего поставить не сможите. Теперь лирическое отступление извиняюсь за ИМХО создаётся впечатление что для присутствующих сдесь микроконтроллеры есть самоцель, а не простая микросхема установленная в ряду среди других таких же микросхем. И если Вы занимаетесь не только программированием а пытаетесь сделать целиком устройство которое что-то дёргает или там чем то в такт чему то моргает, то у Вас скорее всего не будет времени заниматься копанием в тухлой документации компилятора. Вообщем если Вы 20 лет успешно пишете на асме, то целиком переходить на С надо только при очень веских к тому основаниях. Если Вы всё-таки решились перейти на С то после каждой копиляции обязательно гляньте в отладчик. В иаре размер кода очень сильно зависит о положения операторов. И при определённом опыте компилятору можно очень помочь с генерацией опимального кода. Не брезгуйте применять те же методы по упаковке или ускоению которые вы применяли на асме. Действуют буквально так-же, на любом уровне оптимизации!!! Конкретно к С претензий у меня нет никаких.
Сообщение отредактировал Т.Достоевский - Sep 2 2007, 21:18
|
|
|
|
|
Sep 2 2007, 22:01
|

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

|
Цитата(Stariy Alex @ Sep 3 2007, 00:35)  PS. Залить на фтп? Komu na mylo? pdf с bookmark'ами? Залейте, пригодится. Спасибо  Цитата(Т.Достоевский @ Sep 3 2007, 00:17)  Аргументирую. Отвечу смайликами на ваши аргументы. Цитата 1: Все компиляторы, это комерческие проэкты расчитанные на выкачивание максимального количества денег. (В том числе и бесплатые) Отсюда совешенная неуверенность, что через год Вы сможете БЫСТО добавить что нибудь в Вашу програму. Цитата 2: Пока что не встречал компилятора генерирующего хотя бы жалкое подобие асмовской программы. В основном код в РАЗЫ больше. Цитата 3 Перенести микроконтроллерый код с одной платформы на другую гораздо проще и главное быстрее чем разбираться с тонкостями компилятора. Ага, конечно. Вы хотите сказать, что можно вот так вот запросто взять 100k исходников на asm под x51 и запустить на AVR? А проект написанный на plain C вызовет сложности с переносом из-за компиляторов? Смешно... Может быть вы схемотехник от Бога, но зачем же ж вот так рубить с плеча, и городить невесть-что в теме где вы "ноль в сиянии". Цитата Если Вы всё-таки решились перейти на С то после каждой копиляции обязательно гляньте в отладчик. В иаре размер кода очень сильно зависит о положения операторов. А вы не задумывались, что не всегда нужно получить минимальный размер кода? Иногда проще взять толстый кристал.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|