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

 
 
 
Reply to this topicStart new topic
> HBI-0056B
wanderlust
сообщение Apr 27 2010, 15:30
Сообщение #1





Группа: Участник
Сообщений: 9
Регистрация: 25-08-07
Пользователь №: 30 056



Здравствуйте.

Имеется Core Module HBI-0056B на базе ARM7TDMI. Стоит задача изменить рабочие частоты для процессора и PCI шины. Делается это (теоретически) вот таким куском кода:

Код
UNLOCK_VALUE EQU 0xA05F
LOCK_VALUE   EQU 0xFFFF
HDR_OSC      EQU 0x10000008
HDR_LOCK     EQU 0x10000014
CLK50        EQU 0x0015C000
CLK20        EQU 0x00120000

SC_OSC       EQU 0x11000004
SCLOCK       EQU 0x1100001C
CLK_AP_30    EQU 0x70
CLK_AP_26    EQU 0x60


ENTRY
LDR r0,=HDR_LOCK
LDR r1,=UNLOCK_VALUE
STR r1,[r0]
LDR r2,=HDR_OSC
LDR r1,=CLK50
STR r1,[r2]
LDR r1,=LOCK_VALUE
STR r1,[r0]

LDR r0,=SCLOCK
LDR r1,=UNLOCK_VALUE
STR r1,[r0]
LDR r2,=SC_OSC
LDR r1,=CLK_AP_30
STR r1,[r2]
LDR r1,=LOCK_VALUE
STR r1,[r0]

END


В последнем сегменте кода, который начинается с загрузки значения SCLOCK в третьей сторке выскакивает exception (Cause: Data Abort). Я так подозреваю, что связано это с тем, что пишеться значение не туда куда надо (могу и ошибаться, т.к. профан). В процесе написания программы использовались ARM Integrator/AP User Guide и ARM CM7TDMI User Guide.

Может у кого-то есть опыт, в какую сторону надо копать?

Спасибо.
Go to the top of the page
 
+Quote Post

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

 


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


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