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

 
 
> Непонятка с MEMMAP LPC2148, или это глюк IAR или мой :)
zuy
сообщение Apr 19 2006, 06:36
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 173
Регистрация: 30-11-05
Из: San Francisco
Пользователь №: 11 593



Подключил IAR к плате через Wiggler.
Включаю отладку. MEMMAP = 1;
Я руками заполняю память 0x40000000 - 0x40000040 значением 0xFF
Потом выполняю MEMMAP=2;
И смотрю что показывает по адресам 0-0x40
Вроде как туда должна отобразиться память диапазона 0x40000000 - 0x40000040.
А получается что оно так и отобразилось, но значения 4-х байт с адреся 0x18 (вектор IRQ) остались прежними. Далее я пытаюсь руками изменять байты в памяти в диапазоне 0x40000000 - 0x40000040,
и опять же новые значения становятся видны в области 0-0x40 кроме все тех же 4-х байт, они не меняются.

Я пробовал тоже самое в Crossworks и Keil, там такого эффекта не наблюдается.
Хотел узнать это глюк IAR, у кого-нибудь еще такое наблюдается?
Или может это все таки в моем проекте грабли где-то?

В результате выполняя код из uCOS-II

#define BSP_IRQ_VECTOR_ADDR (*(INT32U *)0x00000018L)
MEMMAP = 2; /* Remap 64 bytes of int. RAM to 0x00 */
BSP_IRQ_VECTOR_ADDR = 0xE59FF018; /* LDR PC,[PC,#0x18] instruction */
BSP_IRQ_ISR_ADDR = (INT32U)OS_CPU_IRQ_ISR; /* IRQ exception vector address */

Я не вижу в IAR чтобы по адресу 0x18 внеслись изменения т.к. там все время сидит прежнее значение.

А если я в режиме симуляции в IAR буду переключать MEMMAP я должен видеть эффект? На данный момент в симуляции никакой реакции на значение MEMMAP не наблюдаю.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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