Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STM32f217 симулятор в MDK-ARM Keil
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Acvarif
Пытаюсь разобраться с stm32f217. Перво-наперво решил создать небольшой проектик (дергание ногами) под Keil + STM32F4xx_StdPeriph_Driver (STM32F4xx_StdPeriph_Driver наверняка подойдет и для F2xx)
Для этого очистил от лишнего демку STM32F4-Discovery_FW_V1.1.0 (взял только (IO_Toggle) и все что к нему прилагается) В Keil все компилится нормально. Но попытка запустить симулятор пишет:

Load "...\\KeilArmPrj\\STM32F4-Discovery_FW_V1.1.0\\Project\\Peripheral_Examples\\IO_Toggle\\MDK-ARM\\IO_Toggle\\IO_Toggle.AXF"
*** error 65: access violation at 0x0000000C : no 'read' permission

Хотелось бы сначала проследить как все крутится в симуляторе.
Подскажите пожалуйста в чем тут хитрость.

Спасибо.
Acvarif
Похоже, что с симуляцией stm32 в Keil проблемы для f4xx http://www.keil.com/dd/chip/6103.htm. Попробую перейти на камень пониже.
Читал на форуме, что для симуляции stm32 нужно ROM писать с 0 и подсоединять еще ini файл.

Подскажите, кому не лень подробнее эту процедуру...
-JonnS-
Ini фаил присоединяется в:
"Project"->"Option for target..."->"Debug"
в поле "Initializatoin File:"
В аттаче ini файл для STM32F1xx, надеюсь поможет.
Sanya_kv
В IAR проблем с отладкой STM32F2xx, STM32F4xx нет. Все регистры нормально выводятся.
Сейчас перехожу на Eclips&IAR, там все ещё красивее. До этого сидел на Keil.
Eclips&IAR освоил за пару дней. Вот мой опыт:
http://electronix.ru/forum/index.php?s=&am...t&p=1008220.
Acvarif
Цитата
Ini фаил присоединяется в:
"Project"->"Option for target..."->"Debug"
в поле "Initializatoin File:"
В аттаче ini файл для STM32F1xx, надеюсь поможет.


Спасибо. Файл помог. Но очевидно из-за бага симулятора он застревает на этом месте (файл system_strm32fxx.c).
Пришлось немного подкорректировать (только для симулятора)

Код
/* Wait till HSE is ready and if Time out is reached exit */
  do
  {
    HSEStatus = RCC->CR & RCC_CR_HSERDY;
    StartUpCounter++;
//  } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT));
  } while(StartUpCounter <= 10);


Цитата
В IAR проблем с отладкой STM32F2xx, STM32F4xx нет. Все регистры нормально выводятся.
Сейчас перехожу на Eclips&IAR, там все ещё красивее. До этого сидел на Keil.
Eclips&IAR освоил за пару дней. Вот мой опыт:
http://electronix.ru/forum/index.php?s=&am...t&p=1008220.


Спасибо. Очень интересно. Надо попробовать.

По ходу еще одна загвоздка. Может кому приходилось.

Можно ли как-то загрузить код для stm32fxx не во Flash, а во внешнюю RAM (512 Кб)? (платка от Starterkit http://www.starterkit.ru/html/index.php?na...view&id=62)
До конца не уверен, но наверняка такой механизм должен быть. Или ошибаюсь?
Каждый раз стирать и прошивать при отладке флешку - на сколько же ее хватит?
_Артём_
Цитата(Acvarif @ Dec 21 2011, 13:36) *
Каждый раз стирать и прошивать при отладке флешку - на сколько же ее хватит?


Ну думаю тысяч так на 9, 10(как минимум) раз её хватит...

AndreyKar
Цитата(Acvarif @ Dec 21 2011, 14:36) *
Можно ли как-то загрузить код для stm32fxx не во Flash, а во внешнюю RAM (512 Кб)?

Можно с помощью *.ini файла, смотрите в примерах Кейла, что-то типа RAM.ini. Ещё надо подправить адреса в настройках проекта для ROM и RAM (ROM перенести в адреса RAMa).
Acvarif
Цитата(AndreyKar @ Dec 23 2011, 14:06) *
Можно с помощью *.ini файла, смотрите в примерах Кейла, что-то типа RAM.ini. Ещё надо подправить адреса в настройках проекта для ROM и RAM (ROM перенести в адреса RAMa).


Спасибо. Вроде нашел.

Код
/******************************************************************************/
/* RAM_Function.INI: RAM_Function Debug Initialization File                               */
/******************************************************************************/
/* This file is part of the uVision/ARM development tools.                    */
/* Copyright (c) 2005-2006 Keil Software. All rights reserved.                */
/* This software may only be used under the terms of a valid, current,        */
/* end user licence from KEIL for a compatible version of KEIL software       */
/* development tools. Nothing else gives you the right to use this software.  */
/******************************************************************************/

MAP 0x80000000,0x8000FFFF READ EXEC         // External ROM
MAP 0x80010000,0x8001FFFF READ WRITE EXEC   // External RAM


Знать бы еще начальный адрес внешней SDRAM на sk-stm32f217 было-бы совсем хорошо.
Придется вычислять....

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.