Программирование ARM в IAR

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Программирование ARM в IAR

Сообщение Cadavre »

Здравствуйте! Недавно начал работать с AT91RM9200 через JTAG в среде IAR. Требуется писать программы на C/C++ для данного контроллера. Работу начал с примера, где уже подключена библиотека <at91rm9200.h>. Только вот возник вопрос: чтобы писать\читать в регистры, нужно иметь дело со структурами данных типа:
T91C_BASE_PIOB->PIO_PER |= ( 0xFFFFFFFF ) ; /* pio enable for LED */
где мне найти мануал по таким структурам, данным и типам? в справке IARа такого нет. Неужели придётся ковыряться в *.h файле? :(
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

а чо, о существовании такого сайта как www.atmel.com не слышал ? -))
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

И причем тут вобще IAR?
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Re: Программирование ARM в IAR

Сообщение Cadavre »

на сайте atmel.com толкового ничего не нашёл. может быть кто посоветует что-нибудь почитать по программированию на C++ для ARM?
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

Cadavre писал(а):на сайте atmel.com толкового ничего не нашёл.

Серьезно чтоли ? И это не нашлось ? -)))
http://www.atmel.com/dyn/resources/prod ... oc1768.pdf
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Re: Программирование ARM в IAR

Сообщение Cadavre »

Satyr, спасибо, конечно, но это немного не то. Это даташит, а не руководство по C/C++ для АРМов. Я в этом деле ещё новичок и не совсем ориентируюсь, поэтому на форуме и задал вопрос, чтобы постараться найти ответ. Будьте немного попроще в общении, коллега :wink:
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

Cadavre писал(а):Satyr, спасибо, конечно, но это немного не то. Это даташит, а не руководство по C/C++ для АРМов.

А C/C++ там абсолютно такой же как на x86 и всем остальном.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

Только твой вопрос же не про C, а конкретно про внутренние регистры и переферию контроллера, не так ли ? -))

Cadavre писал(а):где мне найти мануал по таким структурам, данным и типам? в справке IARа такого нет. Неужели придётся ковыряться в *.h файле? :(


Вот именно она в том мануале и описана.
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Re: Программирование ARM в IAR

Сообщение Cadavre »

:)) Дабы наконец состоялись понятки, я напишу кусок кода:

/* general preparations */
AT91C_BASE_AIC->AIC_IDCR = 0xFFFFFFFF ; /* reset the aic, disable all interrupts */
AT91C_BASE_AIC->AIC_ICCR = 0xFFFFFFFF ; /* clear all interrupts */
AT91C_BASE_AIC->AIC_EOICR = 0 ; /* unstack one level */
AT91C_BASE_PMC->PMC_PCER |= ( 1UL<<AT91C_ID_PIOB ) ; /* enable piob */
AT91C_BASE_PMC->PMC_PCER |= ( 1UL<<AT91C_ID_TC2 ) ; /* enable tc2 */


Грамотный программист знает, что структуры в С выглядят как вышеупомянутое, например: struct AT91C_BASE_AIC{...Поля...} или как поле AT91_ID_ODR... Всё это хранится в заголовочном файле (*.h). Вопрос в том и состоит: ГДЕ найти описания к данным определениям? копаться в *.h файле будет трудно, поэтому и должен быть где-то более читабельный мануал (с содержанием, примерами).
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

Cadavre писал(а)::)) Дабы наконец состоялись понятки, я напишу кусок кода:

[color=#0080BF]/* general preparations */
AT91C_BASE_AIC->AIC_IDCR = 0xFFFFFFFF ; /* reset the aic, disable all interrupts */

Дабы наконец дошло - http://www.atmel.com/dyn/resources/prod ... oc1768.pdf , страница 257

Все эти структуры - лишь символические имена для регистров переферии процессора, которые описаны в даташите на процессор. Это пустышка, чисто для удобства. Это не настоящая структура.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Программирование ARM в IAR

Сообщение Satyr »

к IARу эти структутры не имеют никакого отношения. Если выбрать в свойствах IAR EW for ARM другой процессор, то все структуры будут соверешнно иные с другими названиями и содержимым.
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Re: Программирование ARM в IAR

Сообщение Cadavre »

Так вот я и ищу мануал, в котором бы было соответствие СИМВОЛИЧЕСКОЕ_ИМЯ <=> РЕГИСТР! Трудность в том, что в этих симв. структурах вводятся очень длинные аббревиаруты, не говоря уже о константах, которые, порой, нужно очень долго искать... :dont_know: Данный мануал сократил бы время поиска в разы. Наверняка такой должен быть от разработчика.
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
lsdy
Открыл глаза
Сообщения: 78
Зарегистрирован: Пн апр 05, 2010 22:30:53

Re: Программирование ARM в IAR

Сообщение lsdy »

это ж зависит от разработчика IDE,к сожалению главный помощник хедлер файл
Аватара пользователя
Cadavre
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Чт май 14, 2009 17:06:19
Откуда: Москва, Зеленоград
Контактная информация:

Re: Программирование ARM в IAR

Сообщение Cadavre »

Спасибо за ответ. Значит придётся работать с хедером :roll:
У меня чёрный пояс по кулинарии. Могу убить одной котлетой :)
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»