Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Програмирование на С для MSP430
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
SGP
Уважаемые All обращаюсь к вам с просьбой. Начал новый проект на новом для меня процессоре msp430f449. И есть сильное желание сделать его на Си, так как ресурсов по производительности и памяти предостаточно. У меня есть некоторый опыт написания програм на ассемблере в основном под 8051, но на си досих пор я не писал. Поделитесь каким нибудь рабочим проектом под IAR430 или дайте ссылку. Хотелось бы чтобы он был из нескольких файлов, чтобы была работа с портами и отдельными битами, чтобы было показана работа с периферией и самое главное побольше коментариев. На сайте TI те примеры которые я нашел на ассемблере, а примеры IAR уж очень простенькие. Те примеры которые удолось найти в интернете некомпилируются, не хватает знаний чтобы их портировать под msp430. Заранее всем спасибо зо ответы.
aal
Зайди на сахару ру.
Там был компилер aq4309xn_4k.exe и aq4302Kn_4k.exe
(У него нет ограничения по размеру кода).
Из иаровского комплекта возьми программатор или программатор отдельный (сейчас назвать немогу - поищи в интернете). У них нет лимита на размер кода.
Примеры из иара работают. Проверял. Первую прогу с их использованием и писал. Проект, увы, с минимум коментариев, дать могу.
dxp
Цитата(SGP @ Mar 21 2005, 16:35)
Уважаемые All обращаюсь к вам с просьбой. Начал новый проект на новом для меня процессоре msp430f449. И есть сильное желание сделать его на Си, так как ресурсов по производительности и памяти предостаточно.


Правильное желание. smile.gif

Цитата(SGP @ Mar 21 2005, 16:35)
У меня есть некоторый опыт написания програм на ассемблере в основном под 8051, но на си досих пор я не писал.  Поделитесь каким нибудь рабочим проектом под IAR430 или дайте ссылку.


У, тут не с этого надо начинать. Начинать надо с изучения С. Взять для начала классиков "Язык программирования С" Ричи и Кернигана.

Цитата(SGP @ Mar 21 2005, 16:35)
Хотелось бы чтобы он был из нескольких файлов, чтобы была работа с портами и отдельными битами, чтобы было показана работа с периферией и самое главное побольше коментариев.


Нормальный "боевой" код обычно пишут так, чтобы он был самодокументированным. Т.е. комментарии там ставят обычно для пояснения неочевидных моментов. Остальной код и так должен хорошо читаться - это же не ассемблер. smile.gif

Работа с портами и битами на С делается очень просто: порт - это, обычно, просто объект в памяти. Синтаксически работа с портом выглядит точно так же, как и работа с любой переменной. Например:

P5OUT = 0x01; // загрузить в порт
P4OUT |= 0x80; // установить в 1 старший бит порта
P3OUT &= ~0x01; // установить в 0 младший бит порта

Выражение P1IN & 0x02 возвращает 0 если второй бит в порту был равен 0 и число 0x02 в противном случае.

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

Цитата(SGP @ Mar 21 2005, 16:35)
На сайте TI те примеры которые я нашел на ассемблере, а примеры IAR уж очень простенькие.


Нормальные там примеры, они, как раз, иллюстрируют основные операции при работе с периферией - настройка, управление. А чего Вы хотите?

В общем, хочется посоветовать в первую очередь обратить внимание на сам язык, его концепции, подходы - т.е. используемые парадигмы программирования. Когда эти вещи достигнут определенного уровня понимания, все станет на свои места. Уж работа с портами и битами вопросов вызывать точно не будет. smile.gif
AlexandrY
По ссылке на стр. 58 найдете статью. Приложение к ней можно скачать, там найдете несколько рабочих прикладных проектов для IAR. Есть и такие, что компиляться на триальной версии IAR.
Комментировать старался изо всех сил.
http://www.soel.ru/podshivka/2005-1.htm
В статье указано какой проект к чему.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.