ViKo 1 21 ноября, 2012 Опубликовано 21 ноября, 2012 · Жалоба Как создать простейшую функцию, которую можно вызвать при отладке микроконтроллера STM32? Вот пример из помощи: /*---------------------------------------------------------------------- Toggle I/O Pin ----------------------------------------------------------------------*/ SIGNAL void toggle_IO_pin() { int i; PORT0 = 0x0; for (i = 0; i < 20; i++) { PORT0 = (PORT0 ^ 0x01); swatch(0.5); } } DEFINE BUTTON "Toggle P0.0", "toggle_IO_pin()" Как задать порт для Cortex? На все мои варианты выдается ответ: GPIOE &= ~0x04; /* clear PORTE bit 2 */ __^ *** error 34, line 26: undefined identifier Оно вообще работает для Cortex, или остановилось на 8051? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 21 ноября, 2012 Опубликовано 21 ноября, 2012 · Жалоба Для STM32F207 можно увидеть следующие виртуальные регистры: TRAPS, TRIGFLT, STCLK, XTAL, CLOCK Подозреваю, что это всё. Не понимаю. :laughing: P.S. А для STM32F103 есть куча, в том числе PORTA...PORTD. Ага... ну не суки ли! Может в Keil 4.60 добавилось регистров? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 60 21 ноября, 2012 Опубликовано 21 ноября, 2012 (изменено) · Жалоба мда-а-а пипец. проверил на 4.6 такая же фигня. Придётся мне возвращаться на 8051 Изменено 21 ноября, 2012 пользователем x893 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Edit2007 3 22 ноября, 2012 Опубликовано 22 ноября, 2012 · Жалоба Для 51-х тоже не все так гладко. У Silabs например для 320-х регистры прописаны и функции работают, а для 040-х нет, хотя обе серии достаточно древние (Keil 4.23). Ага... ну не суки ли! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Edit2007 3 22 ноября, 2012 Опубликовано 22 ноября, 2012 · Жалоба Может SFR-файл неверно указан (или не находит его). В отладчике через View->Sistem Viewer перефирия видна? Если нет то в свойствах проекта на вкладке "Target" нужно попробовать указать полный путь до sfr-файла. Не факт что поможет, но ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Falkon_99 0 24 ноября, 2012 Опубликовано 24 ноября, 2012 · Жалоба В STM Cortex все через макросы, описание которых находится в файлах CMSIS. Например для STM32F100 это файл stm32f10x.h Для сброса бита порта пишут так GPIOE->ODR &= ~GPIO_ODR_ODR4; Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 24 ноября, 2012 Опубликовано 24 ноября, 2012 · Жалоба Для STM32F207 можно увидеть следующие виртуальные регистры: TRAPS, TRIGFLT, STCLK, XTAL, CLOCK Подозреваю, что это всё. Не понимаю. :laughing: P.S. А для STM32F103 есть куча, в том числе PORTA...PORTD. Ага... ну не суки ли! Может в Keil 4.60 добавилось регистров? Я не очень понял, о каких регистрах и какой "видимости" идет речь? Если речь идет о видимости в дебаггере, то у меня Keil 4.23 - все регистры F103 и F407 видны, полагаю что с 207-м аналогично. Только для F103 они все в Peripherals, а для F4 там только регистры ядра, а все остальное, включая порты, во View->System Viewer. Или Вы не об этом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба В System Viewer периферийные регистры видны. Но это не то. В Symbol Window можно увидеть виртуальные регистры. Их можно использовать, например, для имитации что-то на входах портов. Или для приема по USART. Так вот, для STM32F2XX их там очень мало. В отличие от STM32F103. И подмена файлов stm32f2xx.sfr не помогает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Понял. Да, у меня тоже самое как у Вас. P.S. Есть вопрос - у меня в Кейл 4.32 с F407 не работает симулятор. С железом через JTAG/SWD - без проблем, как толко переключаю в симулятор и жму ^D, в окне Command пишет: *** error 65: access violation at 0x0000000C : no 'read' permission В окне дизасма стоит на нулевом адресе, в данных: 0000 MOVS r0,r0 В окне Си-текста можно принудительно поставить (по правой кноке - Set Program Counter) куда угодно (в окне дизаа при этом реальный код). Но ни по шагам ни как - ничего не работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Нужные адреса можно задать командой map. Которую можно записать в ini файле. Который можно подключить во время симуляции. Место для него есть в настройках. Нулевые адреса в map прописаны были сразу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Почему ничего этого не надо было для F103 ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 10 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Подозреваю, что это всё. Не понимаю. :laughing: Разработчики на своем сайте Вас честно предупредили: Complete peripheral simulation is not available at this time.Чего же Вы еще хотите ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Разработчики на своем сайте Вас честно предупредили: Чего же Вы еще хотите ? Это если искать. Нашел, просветился. Хочу, чтобы было available now! Или "Оставь надежды..."? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Хочу, чтобы было available now! Или "Оставь надежды..."? Почему бы просто не взять среду, где они уже "available now" и отлаживать в ней. Неужели нет ни одной Ide с поддержкой периферии STM32F2XX? Не верю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 25 ноября, 2012 Опубликовано 25 ноября, 2012 · Жалоба Почему бы просто не взять среду, где они уже "available now" и отлаживать в ней. Неужели нет ни одной Ide с поддержкой периферии STM32F2XX? Не верю. А я не уверен, что существует среда, кроме Keil, где на порт STM32 можно подать какие-нибудь данные снаружи. Если кто подскажет, спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться