реклама на сайте
подробности

 
 
> как сделать, чтоб асм не ругался
Gemm
сообщение Aug 26 2008, 08:58
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 61
Регистрация: 2-08-05
Из: Коломна
Пользователь №: 7 283



Начал поднимать data cache-MMU в железке на базе SAM9263. Компилер - IAR 5.1. Нашел на атмеле примерный проектик с драйстоун тестом, где кеши активно используются, но немножко не под мой компилятор smile.gif . И вот такая конструкция не компилится по причине того, что в асмовской инструкции я не могу использовать свою переменную ctl. Хотя это неправильно, она же регистровая...

Не хотелось бы ломать красивый код, а настроить свой асм, чтоб он понимал такой синтаксис.

И еще вопрос, если кто занимался - у at91rm9200 и at91sam9263 принципиально чем-то отличается работа с MMU и дата кешем?

__inline unsigned int AT91F_ARM_ReadControl()
{
register unsigned int ctl;
__asm("MRC p15, 0, ctl, c1, c0, 0");
return ctl;
}


Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rst7
сообщение Aug 26 2008, 09:08
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Есть специальная функция в IAR'е
Цитата
__MRC
Syntax:
unsigned long __MRC(__ul coproc, __ul opcode_1, __ul CRn, __ul
CRm, __ul opcode_2);
Parameters:
coproc The coprocessor number 0..15.
opcode_1 Coprocessor-specific operation code.
src The value to be written to the coprocessor.
CRn The coprocessor register to write to.
CRm Additional coprocessor register; set to zero if not used.
opcode_2 Additional coprocessor-specific operation code; set to zero if not used.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 26 2008, 11:45
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Rst7 @ Aug 26 2008, 13:08) *
Есть специальная функция в IAR'е

Странная какая-то функция: MRC - это чтение регистра сопроцессора, а здесь
Цитата
CRn The coprocessor register to write to.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 23:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01361 секунд с 7
ELECTRONIX ©2004-2016