|
Посоветуйте компилятор C для MSP430 |
|
|
|
Oct 5 2006, 04:30
|
Участник

Группа: Свой
Сообщений: 36
Регистрация: 24-11-04
Из: Санкт-Петербург
Пользователь №: 1 217

|
Доброго дня всем.
Поделитесь секретом - кто какой компилятор использует для 430-х?
Попробовал IAR - среда всем хороша, отладчик неплохой. Но неудобно писать код - в компиляторе нет битового типа данных (как в HI-TECH), что делает невозможным записи вида GIE=0; - вместо этого надо писать INTCON&=~GIE; (например). Эх, привык я к PICC - не знаю, чего теперь делать.
Посмотрел на сайте HI-TECH, у них есть компилер для MSP430, но в списке процессоров нет MSP430F2013 (а именно он лежит у меня на столе).
Соответственно, посоветуйте, пожалуйста, что-нибудь еще. Ссылки для скачивания приветствуются. Ну или если HT уже поддерживает этот проц, то дайте линк на HI-TIDE и компилер. Ну и на лекарство.
Спасибо.
|
|
|
|
|
Oct 5 2006, 05:58
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37

|
Цитата(Scrambler @ Oct 5 2006, 09:30)  Доброго дня всем.
Поделитесь секретом - кто какой компилятор использует для 430-х?
Попробовал IAR - среда всем хороша, отладчик неплохой. Но неудобно писать код - в компиляторе нет битового типа данных (как в HI-TECH), что делает невозможным записи вида GIE=0; - вместо этого надо писать INTCON&=~GIE; (например). Эх, привык я к PICC - не знаю, чего теперь делать.
Посмотрел на сайте HI-TECH, у них есть компилер для MSP430, но в списке процессоров нет MSP430F2013 (а именно он лежит у меня на столе).
Соответственно, посоветуйте, пожалуйста, что-нибудь еще. Ссылки для скачивания приветствуются. Ну или если HT уже поддерживает этот проц, то дайте линк на HI-TIDE и компилер. Ну и на лекарство.
Спасибо. 1. Самый лучший компилятор для MSP - это, по моему, ИАР. 2. Заглянув в файл "....\430\doc\EW430_CompilerReference.pdf" и запустив поиск по слову "__disable_interrupt" вы найдете все, что нужно для запрета/разрешения глобальных прерываний: __disable_interrupt(); // Запретим прерывания __enable_interrupt(); // Разрешим прерывания 3. Попрагромировав для MSP, через некоторое время Вы поймете, какое же гавно этот ПИК. (На этот пункт прошу не отвечать, это религиозные чувства) 4. По поводу бинарного типа данных посмотрите мой пост http://electronix.ru/forum/index.php?showt...mp;#entry145694я использую это и для MSP и для ARM и для программ на PC.
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Oct 5 2006, 06:09
|

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

|
Цитата(Scrambler @ Oct 5 2006, 11:30)  Доброго дня всем.
Поделитесь секретом - кто какой компилятор использует для 430-х?
Попробовал IAR - среда всем хороша, отладчик неплохой. Но неудобно писать код - в компиляторе нет битового типа данных (как в HI-TECH), что делает невозможным записи вида GIE=0; - вместо этого надо писать INTCON&=~GIE; (например). Эх, привык я к PICC - не знаю, чего теперь делать.
Посмотрел на сайте HI-TECH, у них есть компилер для MSP430, но в списке процессоров нет MSP430F2013 (а именно он лежит у меня на столе).
Соответственно, посоветуйте, пожалуйста, что-нибудь еще. Ссылки для скачивания приветствуются. Ну или если HT уже поддерживает этот проц, то дайте линк на HI-TIDE и компилер. Ну и на лекарство.
Спасибо. Битовые фишки - это нестандартное. С нестандартным надо общаться осторожно и всегда помнить ограничения. Вот Вы и натолкнулись на проблему именно из-за этого. Как обойти, Вам уже подсказали - использовать макросы прерпроцессора. С ними будет работать везде и всегда одинаково.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Oct 5 2006, 14:15
|
Местный
  
Группа: Участник
Сообщений: 328
Регистрация: 1-06-06
Из: USA
Пользователь №: 17 672

|
Цитата(VAI @ Oct 5 2006, 01:58)  1. Самый лучший компилятор для MSP - это, по моему, ИАР. Компилятор, конечно, хороший, но цена примерно $3000 на одно рабочее место, сводит все на нет. "Лечение" хорошо для дома и семьи, но не для серьезного бизнеса. Атмел поступил очень мудро: выпустил бесплатную AVRStudio и пользуй любой ( читай GCC ) компилятор, а вот отладка идет в нормальной среде. Когда TI догадается повторить трюк, то MSP получит шанс их хорошего uC стать массовым...
Сообщение отредактировал IgorKossak - Oct 6 2006, 05:53
--------------------
|
|
|
|
|
Oct 5 2006, 14:47
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37

|
Цитата(pitt @ Oct 5 2006, 19:15)  Компилятор, конечно, хороший, но цена примерно $3000 на одно рабочее место, сводит все на нет. "Лечение" хорошо для дома и семьи, но не для серьезного бизнеса. Атмел поступил очень мудро: выпустил бесплатную AVRStudio и пользуй любой ( читай GCC ) компилятор, а вот отладка идет в нормальной среде. Когда TI догадается повторить трюк, то MSP получит шанс их хорошего uC стать массовым... Ну GCC есть и для MSP http://mspgcc.sourceforge.net/http://sourceforge.net/projects/mspgccесть дешевые тулсы от ImageCraft http://www.imagecraft.com/software/tdevtools.htmlесть CrossWorks for MSP430 использующий GCC, недорогой http://www.rowley.co.uk/msp430/index.htmесть и от TI TI Code Composer Essentials Evaluation v2.0 - Free 8KB IDE http://focus.ti.com/docs/toolsw/folders/pr...msp-cce430.htmlTI Code Composer Essentials Professional v2.0 - Unlimited Code Space за $500 http://focus.ti.com/docs/toolsw/folders/pr...-cce430pro.html
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Oct 6 2006, 01:17
|
Участник

Группа: Свой
Сообщений: 36
Регистрация: 24-11-04
Из: Санкт-Петербург
Пользователь №: 1 217

|
Всем спасибо за ответы, особенно VAI за обилие ссылок.  Обязательно их все просмотрю. Что же касается битового типа, то, вероятно, вы немного не так меня поняли. Я жалуюсь  не на отсутствие битового типа, а на то, что нельзя просто так обратиться к биту GIE. Надо обязательно помнить, в каком регистре он находится и оперировать уже с этим регистром. Вот именно это и неудобно.
|
|
|
|
|
Oct 6 2006, 03:26
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37

|
Цитата что нельзя просто так обратиться к биту GIE. Надо обязательно помнить, в каком регистре он находится и оперировать уже с этим регистром. Вот именно это и неудобно. А чем не нравится такое обращение к биту GIE? Попробуйте. __disable_interrupt(); // Запретим прерывания __enable_interrupt(); // Разрешим прерывания
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Oct 6 2006, 05:25
|

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

|
Цитата(pitt @ Oct 5 2006, 21:15)  Цитата(VAI @ Oct 5 2006, 01:58)  1. Самый лучший компилятор для MSP - это, по моему, ИАР.
Компилятор, конечно, хороший, но цена примерно $3000 на одно рабочее место, сводит все на нет. "Лечение" хорошо для дома и семьи, но не для серьезного бизнеса. Для серьезного бизнеса три тыщи баксов - мелочь. Хорошая техподдержка (а у IAR'а она хорошая, по себе знаю) стОит того. Когда в России будут зарплаты разработчиков-пользователей МК сравнимы, например, с европейскими, то за покупкой лицензионного софта дело не станет. А когда софт стОит 5-10 месячных ЗП, мало кто станет его покупать. Цитата(pitt @ Oct 5 2006, 21:15)  Атмел поступил очень мудро: выпустил бесплатную AVRStudio и пользуй любой ( читай GCC ) компилятор, а вот отладка идет в нормальной среде. Когда TI догадается повторить трюк, то MSP получит шанс их хорошего uC стать массовым... АСтудия - это только симулятор. Причем довольно примитивный. Оно хорош для начинающих, которым интересно посмотреть, как их команды отображаются на аппаратуре. Для отладки серьезных рабочих вещей он малопригоден. И, кроме того, напомню, что речь шла о компиляторе. Для MSP430 есть очень хороший компилятор GCC. По качеству кодогенерации он IAR'у практически не уступает (в отличие от ситуации с AVR  ) по понятным причинам. Единственное, в нем, насколько помню, не доделали С++. Т.е. сам-то компилятор все это поддерживает, но рантайм - стартап и библиотеки, - не сделаны. Впрочем, это информация у меня как минимум полугодовой давности, может уже что-то и изменилось.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Oct 6 2006, 08:39
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(VAI @ Oct 6 2006, 09:26)  Цитата что нельзя просто так обратиться к биту GIE. Надо обязательно помнить, в каком регистре он находится и оперировать уже с этим регистром. Вот именно это и неудобно. А чем не нравится такое обращение к биту GIE? Попробуйте. __disable_interrupt(); // Запретим прерывания __enable_interrupt(); // Разрешим прерывания А я использую выражения еще короче _EINT(); _DINT(): из того же самого IAR, кстати.
|
|
|
|
|
Oct 6 2006, 09:12
|
Местный
  
Группа: Свой
Сообщений: 366
Регистрация: 5-09-06
Из: Санкт-Петербург
Пользователь №: 20 107

|
Цитата(dxp @ Oct 6 2006, 09:25)  Для MSP430 есть очень хороший компилятор GCC. По качеству кодогенерации он IAR'у практически не уступает (в отличие от ситуации с AVR  ) по понятным причинам. Единственное, в нем, насколько помню, не доделали С++. Т.е. сам-то компилятор все это поддерживает, но рантайм - стартап и библиотеки, - не сделаны. Впрочем, это информация у меня как минимум полугодовой давности, может уже что-то и изменилось. если б я им еще и занимался... Вообще говоря для С++ сделано почти все, осталось только написать как его использовать. Я лично сомневаюсь в необходимости использования С++ для этой маленькой пи-ди-пишки
|
|
|
|
|
Oct 6 2006, 11:21
|
Местный
  
Группа: Участник
Сообщений: 328
Регистрация: 1-06-06
Из: USA
Пользователь №: 17 672

|
Цитата(dxp @ Oct 6 2006, 01:25)  Для серьезного бизнеса три тыщи баксов - мелочь. Хорошая техподдержка (а у IAR'а она хорошая, по себе знаю) стОит того. Когда в России будут зарплаты разработчиков-пользователей МК сравнимы, например, с европейскими, то за покупкой лицензионного софта дело не станет. А когда софт стОит 5-10 месячных ЗП, мало кто станет его покупать. Серьезный бизнес потому и серьезный, что считает деньги. И не мешайте понятия серьезный и большой. Соотношение качество/цена ( включая сопровождение, апгрейд) у GCC гораздо выше. Цитата(dxp @ Oct 6 2006, 01:25)  АСтудия - это только симулятор. Причем довольно примитивный. Оно хорош для начинающих, которым интересно посмотреть, как их команды отображаются на аппаратуре. Для отладки серьезных рабочих вещей он малопригоден. 1. Студия не только симулятор, но и отладчик, и, при всех его недостатках, инструмент, легкий в работе и позволояющий достигать результат. Категорически не согласенни ни с одним остальным словом в процитированным выше. Цитата(dxp @ Oct 6 2006, 01:25)  И, кроме того, напомню, что речь шла о компиляторе. Для MSP430 есть очень хороший компилятор GCC. По качеству кодогенерации он IAR'у практически не уступает Не спорю, но вот работать с GDB не вызывает никакого удовольствия, а наличие симулятора/отладчика тоже необходимо. Сам по себе компилятор - это мало.
--------------------
|
|
|
|
|
Oct 6 2006, 12:19
|

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

|
Цитата(pitt @ Oct 6 2006, 18:21)  Цитата(dxp @ Oct 6 2006, 01:25)  Для серьезного бизнеса три тыщи баксов - мелочь. Хорошая техподдержка (а у IAR'а она хорошая, по себе знаю) стОит того. Когда в России будут зарплаты разработчиков-пользователей МК сравнимы, например, с европейскими, то за покупкой лицензионного софта дело не станет. А когда софт стОит 5-10 месячных ЗП, мало кто станет его покупать.
Серьезный бизнес потому и серьезный, что считает деньги. И не мешайте понятия серьезный и большой. Вот именно поэтому там и выгодно взять продукт с человеческим интерфейсом, человеческой документацией и человеческой поддержкой - дабы не тратить время, кое является самым дорогим ресурсом при разработке, на освоение, мягко говоря, своеобразного пакета GCC. Если стоимость пакета не превышает половины месячной ЗП разработчика, то приобрести его (и сразу начать работать) куда рентабельнее, чем потратить те же полмесяца на изучение горбатой доки, осмысление того, что же там вообще есть и как оно по замыслу создателей должно функционировать. Конечно, один раз пройдя этот путь, дальше проще, но в смысле простоты и легкости старта GCC сливает, наверное, всем. Цитата(pitt @ Oct 6 2006, 18:21)  Соотношение качество/цена ( включая сопровождение, апгрейд) у GCC гораздо выше.  Соотношение качество/цена у GCC всегда бесконечнно велико при ЛЮБОМ качестве, т.к. цена равна нулю. А вот насчет сопровождения и апгдейда - тут GCC до IAR'а далеко. Тот же AVR-GCC до сих пор не умеет нормально организовывать косвенную адресацию при обращении к многобайтным переменным (неагрегатных типов). Как не умел 6 лет назад, так до сих пор и не умеет. Хотя сказано об этом уже было не одну сотню раз. Вот такое оно сопровождение. У MSP430-GCC до сих пор С++ не доделан. И вообще он там есть в каком-то виде только благодаря тому, что front-end у всех GCC общий. Про какую уж тут поддержку у MSP430-GCC вообще можно говорить? Насчет IAR. Я лично имел возможность пользоваться технической поддержкой IAR на двух платформах - AVR и MSP430. В течение более двух лет. Впечатления и результаты более, чем положительные. Цитата(pitt @ Oct 6 2006, 18:21)  Цитата(dxp @ Oct 6 2006, 01:25)  АСтудия - это только симулятор. Причем довольно примитивный. Оно хорош для начинающих, которым интересно посмотреть, как их команды отображаются на аппаратуре. Для отладки серьезных рабочих вещей он малопригоден.
1. Студия не только симулятор, но и отладчик, и, при всех его недостатках, Чем симулятор отличается от отладчика? Ваша любимая студия до сих пор не имеет очень удобного отладочного окошка Locals! Цитата(pitt @ Oct 6 2006, 18:21)  инструмент, легкий в работе и позволояющий достигать результат. Более пяти лет очень плотно работал с AVR и никогда не пользовался студией. И всегда достигал положительного результата - отладка нормального проекта всегда идет в живом железе, симулятор тут вещь практически бесполезная. Вы несколько переоцениваете значимость роли симуляторов процессоров при разработки софта. Цитата(pitt @ Oct 6 2006, 18:21)  Категорически не согласенни ни с одним остальным словом в процитированным выше. Это Ваше право. Только если хотите возразить, то приводите, пожалуйста, аргументы. Цитата(pitt @ Oct 6 2006, 18:21)  Цитата(dxp @ Oct 6 2006, 01:25)  И, кроме того, напомню, что речь шла о компиляторе. Для MSP430 есть очень хороший компилятор GCC. По качеству кодогенерации он IAR'у практически не уступает
Не спорю, но вот работать с GDB не вызывает никакого удовольствия, а наличие симулятора/отладчика тоже необходимо. Сам по себе компилятор - это мало. GDB - это back-end. Для него есть соответствующие front-end'ы - например, insight или ddd. По возможностям/удобству они студии не уступают. В любом случае наличие/отсутствие симулятора никак не может ощутимо влиять на популярность МК. Тут значимость имеют совершенно другие факторы - в первую очередь, возможности самого МК. Дальше идет инструментарий в лице компилятора, ассемблера, линкера. И на последнем месте симулятор.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|