Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2019-сен-19 22:34

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 37 ] 
Автор Сообщение
 Заголовок сообщения: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2016-фев-05 11:42 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Репозиторий (неофициальный) содержит пакет для GNU ARM Eclipse и Keil MDK 5.

Пакет собран на основе:
Milandr MCU 1986x Standard Peripherals Library
Milandr MCU 1986x Standard Peripherals Library Documentation
Milandr MCU 1986x flashing with J-Link

По структуре аналогичен Software pack для Keil MDK 5, исправлен ряд ошибок.

Установка пакета в Eclipse
Код:
Eclipse Menu → Window → Preferences → C/C++ → Packages → Repositories → Add...
Eclipse Menu → Window → Preferences → C/C++ → Packages → Repositories → Add...

Type       CMSIS Pack
Name       Milandr
URL        https://raw.githubusercontent.com/in4lio/mdr1986x-pack-repo/master/index.pidx

Отображение регистров периферийных устройств

Основные изменения

09.02.2016
Проверен на совместимость с Keil MDK 5.

12.02.2016
Добавлен CMSIS Driver для Keil MDK 5, написанный R Max.

03.03.2016
Добавлен JFlash.

14.03.2016
Изменена версия библиотеки 1.4.2

22.03.2016
Исправлен индексный файл репозитория.

24.05.2017
Изменен формат индексного файла (GNU ARM Eclipse plug-ins v3.4.1).

...
Обновляется регулярно... если не обновляется -- репозиторий содержит скрипт для сборки пакета;-)


Последний раз редактировалось kravitz 2017-май-24 13:19, всего редактировалось 4 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2016-окт-07 20:00 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Обновлена утилита JFlash: добавлена поддержка микроконтроллеров 1986ВЕ1 и 1986ВЕ3.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2016-дек-13 11:15 
Не в сети

Зарегистрирован: 2012-авг-27 15:49
Сообщения: 17
Спасибо за пак!

Вопрос к R Max: в паке последняя версия ваших драйверов CMSIS? И под какую версию CMSIS они разрабатывались?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2016-дек-14 14:46 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
newbie писал(а):
Спасибо за пак!
Вопрос к R Max: в паке последняя версия ваших драйверов CMSIS?

Пожалуйста)
Из того, что R Max выкладывал на форум - последняя.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-07 14:54 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
а как этим пользоваться?

Я установил этот пакет в эклипс. Теперь на перспективе Pack появился Milandr. Инсталировал 11/01/2016, Actual Standart Peripherals Librory. В окошке outline вижу MDR1986BExx|Device/Startup->startup_MDR1986VE3.c, даже в текстовом редакторе открыл. Есть куча драйверов для периферии. Как этим пользоваться? При создании нового проекта должен быть выбор Project C/C++ for ARM Cortex-M MDR1986VE3 или что-то подобное. такого нет. Есть Project C/C++ for ARM Cortex-M. Создаю проект.... создается куча папок и файлов... в них есть startup.c, в нем в первом коментарии
// This file is part of the ВµOS++ III distribution.
Что за ВµOS++? Где стартап для миландра? Как с этим пакетом работать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-09 14:52 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Цитата:
Есть куча драйверов для периферии. Как этим пользоваться?

Пакет содержит стандартную библиотеку устройств, CMSIS драйверы от R Max,
примеры, заточенные под Keil (других нет), а так же файлы описания
периферийных регистров.
Как использовать описание регистров здесь.
Библиотеки подключать к проекту и использовать...
Про планы по поддержке пакетов в GNU ARM Eclipse читайте здесь.

Цитата:
При создании нового проекта должен быть выбор Project C/C++ for
ARM Cortex-M MDR1986VE3 или что-то подобное. такого нет.

Для того чтобы создавать проект для MDR1986VE3 нужен шаблон
(специальный плагин, не пакет). Шаблон поке еще никто не создал (не выложил)...

Цитата:
Есть Project C/C++ for ARM Cortex-M. Создаю проект.... создается
куча папок и файлов...
Где стартап для миландра? Как с этим пакетом работать?

Можно, например, создать проект на основе STM32F3xx C/C++ Project, а затем
поправить настройки проекта и заменить cmsis, stdperph, ldscripts, startup
на миландровские.
Стартап для миландра (MDR1986VE3): ${packs_path}\Milandr\MDR1986BExx\1.4.2\Libraries\CMSIS\CM1\DeviceSupport\MDR1986VE3\startup\gcc\startup_MDR1986VE3.S


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-10 14:18 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
спасибо за ответ. Но пока ни чего не выходит. создал проект используя шаблон STM32F1xx C/C++ Project. удалил из проекта не нужные файлы, добавил нужный cmsis, stdperph, ldscripts, startup. какие ещё нужно сделать настройки?
сейчас проект выглядит следующим образом, см рисунок. При компиляции получаю ошибку

Код:
Building target: teslaM_103.elf
Invoking: Cross ARM GNU C++ Linker
arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -Og -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-move-loop-invariants -Wall -Wextra  -g3 -T "D:\Work\transformEnergy\workspase\teslaM_103\ldscripts\MDR32F9Qx.ld" -nostartfiles -Xlinker --gc-sections -L"../ldscripts" -Wl,-Map,"teslaM_103.map" -o "teslaM_103.elf"  ./system/MDR32F9Qx_StdPeriph_Driver/src/USB_Library/MDR32F9Qx_usb_CDC.o ./system/MDR32F9Qx_StdPeriph_Driver/src/USB_Library/MDR32F9Qx_usb_device.o  ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_adc.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_arinc429r.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_arinc429t.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_audio.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_bkp.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_can.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_comp.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_dac.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_dma.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_dsp.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_ebc.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_eeprom.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_i2c.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_iwdg.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_keypad.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_led.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_port.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_power.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_rst_clk.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_sdio.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_ssp.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_timer.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_uart.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_usb.o ./system/MDR32F9Qx_StdPeriph_Driver/src/MDR32F9Qx_wwdg.o  ./system/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.o  ./system/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.o  ./src/main.o   
./system/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.o: In function `Reset_Handler':
D:\Work\transformEnergy\workspase\teslaM_103\Debug/../system/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.S:256: undefined reference to `_start'
collect2.exe: error: ld returned 1 exit status
makefile:61: recipe for target 'teslaM_103.elf' failed
make: *** [teslaM_103.elf] Error 1


ругается на __START. почему?
Не могли бы Вы помочь/подсказать, как под eclipse с gcc, запустить холоворд? Я всё ПО поставил, плагины, стратапы, библиотеки и тулчейны есть. Но подружить их не получается. Я бы со своей стороны мог бы сделать пошаговую инструкцию с скриншотами для настройки IDE, тулчейнов, окружения до отладки холоворда.


Вложения:
Комментарий к файлу: вот тут ошибка
Снимок2.PNG
Снимок2.PNG [ 25.64 КБ | Просмотров: 9241 ]
Комментарий к файлу: Так выглядит проект
Снимок1.PNG
Снимок1.PNG [ 19.68 КБ | Просмотров: 9241 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-10 14:32 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1325
Откуда: Тула
попробуйте исправить так:
Код:
#ifndef __START
#define __START   main
#endif

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-10 17:00 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
или так...


Вложения:
Комментарий к файлу: preprocessor options
screenshot1.png
screenshot1.png [ 46.72 КБ | Просмотров: 9235 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-10 17:12 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
Не могли бы Вы помочь/подсказать, как под eclipse с gcc, запустить холоворд?


Если не заработает, на следующей неделе могу собрать и выложить пример.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-13 07:36 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
Добавил в свойства проекта __START=main - проект собрался. но отладка не работает. Грузится в процессор программа.... и не запускается... по стартапу вроде шагает от вектора сброса, но шагает хаотически. Такое чувство, что процессор выполняет какой-то код, а еклипс кажет совершенно другой код.

Буду ждать примера холоворда. Заранее благодарен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Проект для GNU ARM Eclipse
СообщениеДобавлено: 2017-фев-14 19:03 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Добавил пример использования SEGGER RTT (Real Time Transfer)

Нужно будет README написать))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-20 06:03 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
Спасибо за пример. Вы пишете, что ${cross_prefix}gdb${cross_suffix} нужно исправить на ${cross_prefix}gdb-py${cross_suffix}. В вашем примере тоже указано ${cross_prefix}gdb-py${cross_suffix}. При запуске отладки выскакивает сообщение
Цитата:
Could not determine GDB version after sending: arm-none-eabi-gdb-py --version, response:

И отладка не запускается. Почему? Почему нужно gdb менять на gdb-py? Почему эксипс не находит arm-none-eabi-gdb-py?

ps Убрал '-py" - отладка заработала.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-20 06:44 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
2) Процессор 32-разрядный микроконтроллер на базе процессорного ядра ARM Cortex-M3. В вашем проекте стоят настройки cortex-m1. Более того, папака CMSIS/CM3 исключена из сборки, Папка CMSIS/CM1 включена в сборку. Почему?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-20 11:28 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
2) Процессор 32-разрядный микроконтроллер на базе процессорного ядра ARM Cortex-M3. В вашем проекте стоят настройки cortex-m1. Более того, папака CMSIS/CM3 исключена из сборки, Папка CMSIS/CM1 включена в сборку. Почему?

Потому что, в проекте 3 конфигурации BE1 для 1986BE1, BE3 для 1986BE3, BE9x для 1986BE9x.
Переключитесь на BE9x. Микроконтроллеры 1986BE1 и 1986BE3 это Cortex-M1.


Последний раз редактировалось kravitz 2017-фев-20 11:40, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-20 11:39 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
Спасибо за пример. Вы пишете, что ${cross_prefix}gdb${cross_suffix} нужно исправить на ${cross_prefix}gdb-py${cross_suffix}. В вашем примере тоже указано ${cross_prefix}gdb-py${cross_suffix}. При запуске отладки выскакивает сообщение
Цитата:
Could not determine GDB version after sending: arm-none-eabi-gdb-py --version, response:

И отладка не запускается. Почему? Почему нужно gdb менять на gdb-py? Почему эксипс не находит arm-none-eabi-gdb-py?

ps Убрал '-py" - отладка заработала.

arm-none-eabi-gdb-py потому что, скрипт загрузки программы в MCU через J-Link написан на Python. Как его настроить писал здесь. Есть другие способы загрузить программу, например OpenOCD.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-27 06:34 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
Не идет отладка.... миландр меня делает.... не могу ни как противостоять...

Помогите пожалуйста....

I. Запуск вашего примера
1) скачал ваш пример (git clone), импортировал в эклипс. собрал.
2) дебаг не заработал. у меня процессор 1986ВЕ93У. Изкоробки не должно работать. рихтую под свой процессор.
2.1) добавил в сборку CM3, убрал CM1
2.2) в свойствах проекта C/C++ build->Cross ARM C Compiler->Preprocessor меняю дефайн на USE_MDR1986VE9x
2.3) в свойствах проекта C/C++ build->Cross ARM C Compiler->Inclides меняю пути
Код:
"${workspace_loc:/${ProjName}/source/MDR32F9Qx_StdPeriph_Driver/inc}"
"${workspace_loc:/${ProjName}/source/CMSIS/CM3/CoreSupport}"
"${workspace_loc:/${ProjName}/source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/inc}"
"${workspace_loc:/${ProjName}/source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup}"

собрал проект
3)Дебуг. Открываю окно Debuger. Там появились две конфигурации: mdr1986x_RTT и mdr1986x_RTT BE3. Я так понял нужна конфигурация mdr1986x_RTT. подправил название под свои пути, получилось см скриншоты. На вкладке Startup отметил галки Set breakpoint at: main и Continue. Жму Debug. Побежал текст в кансоли.... и остановился на первой строчке в main(). Вроде счастье... но стал шагать по шагам и обнаружил, что шагаю по пустому... см скрин Снимок4: в окошке дизасемблера нет кода. Как будь-то код не залилися в процессор.
Что я делаю не так?

Вот лог из кансоли JLinkGDBServerCL.exe
Цитата:
SEGGER J-Link GDB Server V6.10d Command Line Version

JLinkARM.dll V6.10d (DLL compiled Oct 6 2016 22:10:47)

-----GDB Server start settings-----
GDBInit file: none
GDB Server Listening port: 2331
SWO raw output listening port: 2332
Terminal I/O port: 2333
Accept remote connection: localhost only
Generate logfile: off
Verify download: on
Init regs on start: on
Silent mode: off
Single run mode: on
Target connection timeout: 0 ms
------J-Link related settings------
J-Link Host interface: USB
J-Link script: none
J-Link settings file: none
------Target related settings------
Target device: Cortex-M3
Target interface: SWD
Target interface speed: 2000kHz
Target endian: little

Connecting to J-Link...
J-Link is connected.
Firmware: J-Link ARM V8 compiled Nov 28 2014 13:44:46
Hardware: V8.00
S/N: 158000503
Feature(s): RDI,FlashDL,FlashBP,JFlash,GDBFull
Checking target voltage...
Target voltage: 3.24 V
Listening on TCP/IP port 2331
Connecting to target...Connected to target
Waiting for GDB connection...Connected to 127.0.0.1
Reading all registers
Read 4 bytes @ address 0x00000000 (Data = 0x20008000)
Read 2 bytes @ address 0x00000000 (Data = 0x8000)
Target interface speed set to 1000 kHz
Resetting target
Halting target CPU...
...Target halted (PC = 0x000000A6)
R0 = 00000000, R1 = 00000000, R2 = 00000000, R3 = 00000000
R4 = 00000000, R5 = 00000000, R6 = 00000000, R7 = 00000000
R8 = 00000000, R9 = 00000000, R10= 00000000, R11= 00000000
R12= 00000000, R13= 20008000, MSP= 20008000, PSP= 00000000
R14(LR) = FFFFFFFF, R15(PC) = 000000A6
XPSR 01000000, APSR 00000000, EPSR 01000000, IPSR 00000000
CFBP 00000000, CONTROL 00, FAULTMASK 00, BASEPRI 00, PRIMASK 00
Reading all registers
Read 4 bytes @ address 0x000000A6 (Data = 0x4D984898)
Read 2 bytes @ address 0x000000A6 (Data = 0x4898)
Select auto target interface speed (2000 kHz)
Flash breakpoints enabled
Semi-hosting enabled (Handle on BKPT)
Semihosting I/O set to TELNET Client
SWO disabled succesfully.
SWO enabled succesfully.
Read 4 bytes @ address 0x000000A6 (Data = 0x4D984898)
Read 2 bytes @ address 0x00000000 (Data = 0x8000)
Read 2 bytes @ address 0x00000002 (Data = 0x2000)
Read 2 bytes @ address 0x00000004 (Data = 0x00A7)
Read 2 bytes @ address 0x00000006 (Data = 0x0000)
Read 2 bytes @ address 0x00000008 (Data = 0x001D)
Read 2 bytes @ address 0x0000000A (Data = 0x0000)
Read 2 bytes @ address 0x0000000C (Data = 0x001D)
Read 2 bytes @ address 0x0000000E (Data = 0x0000)
Read 2 bytes @ address 0x00000010 (Data = 0x001D)
Read 2 bytes @ address 0x00000012 (Data = 0x0000)
Read 2 bytes @ address 0x00000014 (Data = 0x001D)
Read 2 bytes @ address 0x00000016 (Data = 0x0000)
Read 2 bytes @ address 0x00000018 (Data = 0x001D)
Read 2 bytes @ address 0x0000001A (Data = 0x0000)
Read 2 bytes @ address 0x0000001C (Data = 0xE7FE)
Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
Halting target CPU...
...Target halted (PC = 0x000000A6)
Read 4 bytes @ address 0xE000ED00 (Data = 0x412FC230)
Reading 8192 bytes @ address 0x08000000
Reading 2916 bytes @ address 0x08002000
Executed SetRTTAddr 0x20100000
Read 4 bytes @ address 0xFFFFFFFF (Data = 0x00800000)
Read 2 bytes @ address 0xFFFFFFFF (Data = 0x0000)
Read 4 bytes @ address 0xFFFFFFFF (Data = 0x00800000)
Read 2 bytes @ address 0xFFFFFFFF (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
Read 2 bytes @ address 0x000011B2 (Data = 0x0000)
R0 = 00000000, R1 = 00000000, R2 = 00000000, R3 = 00000000
R4 = 00000000, R5 = 00000000, R6 = 00000000, R7 = 00000000
R8 = 00000000, R9 = 00000000, R10= 00000000, R11= 00000000
R12= 00000000, R13= 20008000, MSP= 20008000, PSP= 00000000
R14(LR) = FFFFFFFF, R15(PC) = 000000A6
XPSR 01000000, APSR 00000000, EPSR 01000000, IPSR 00000000
CFBP 00000000, CONTROL 00, FAULTMASK 00, BASEPRI 00, PRIMASK 00
Reading all registers
Read 4 bytes @ address 0x000000A6 (Data = 0x4D984898)
Read 2 bytes @ address 0x00000000 (Data = 0x8000)
Read 2 bytes @ address 0x00000002 (Data = 0x2000)
Read 2 bytes @ address 0x00000004 (Data = 0x00A7)
Read 2 bytes @ address 0x00000006 (Data = 0x0000)
Read 2 bytes @ address 0x00000008 (Data = 0x001D)
Read 2 bytes @ address 0x0000000A (Data = 0x0000)
Read 2 bytes @ address 0x0000000C (Data = 0x001D)
Read 2 bytes @ address 0x0000000E (Data = 0x0000)
Read 2 bytes @ address 0x00000010 (Data = 0x001D)
Read 2 bytes @ address 0x00000012 (Data = 0x0000)
Read 2 bytes @ address 0x00000014 (Data = 0x001D)
Read 2 bytes @ address 0x00000016 (Data = 0x0000)
Read 2 bytes @ address 0x00000018 (Data = 0x001D)
Read 2 bytes @ address 0x0000001A (Data = 0x0000)
Read 2 bytes @ address 0x0000001C (Data = 0xE7FE)
Setting breakpoint @ address 0x000011B2, Size = 2, BPHandle = 0x0001
Starting target CPU...
...Breakpoint reached @ address 0x000011B2
Reading all registers
Read 4 bytes @ address 0x000011B2 (Data = 0x00000000)
Removing breakpoint @ address 0x000011B2, Size = 2
Read 4 bytes @ address 0x400D804C (Data = 0x00000000)
Read 4 bytes @ address 0x400D804C (Data = 0x00000000)
Read 4 bytes @ address 0x00000000 (Data = 0x20008000)
Read 4 bytes @ address 0x400D804C (Data = 0x00000000)
Read 4 bytes @ address 0x00000000 (Data = 0x20008000)
Reading 12 bytes @ address 0x400D803C
Performing single step...
...Breakpoint reached @ address 0x000011B4
Reading all registers
Read 4 bytes @ address 0x000011B4 (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011B6
Reading all registers
Read 4 bytes @ address 0x000011B6 (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011B8
Reading all registers
Read 4 bytes @ address 0x000011B8 (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011BA
Reading all registers
Read 4 bytes @ address 0x000011BA (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011BC
Reading all registers
Read 4 bytes @ address 0x000011BC (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011BE
Reading all registers
Read 4 bytes @ address 0x000011BE (Data = 0x00000000)
Performing single step...
...Breakpoint reached @ address 0x000011C0
Reading all registers
Read 4 bytes @ address 0x000011C0 (Data = 0x00000000)
Reading 64 bytes @ address 0x000011C0
Reading 64 bytes @ address 0x00001200
Reading 64 bytes @ address 0x00001240
Reading 64 bytes @ address 0x00001180


II Второй путь, собственно к которому я иду - это создание проекта для миландровского процессора для работы в эклипсе. Как это сделать? Как это делаете вы?
Например:
1)В Eclipse открываем File->New->C++ Project
2)Выбираем Project Type->Empty Project, Toolchains Cross ARM GCC
3)....
4)...
5)Добавляем в проект .../CM3/...
6)Указываем пути ....
7) указываем define USE_MDR1986VE9x
и т.д.

Я могу сам написать (даже хочу) пошаговую инструкцию. Но пока ни чего не получается. Не могу ни ваш проект запустить в отладчике, ни свой с нуля создать.


Вложения:
Снимок4.PNG
Снимок4.PNG [ 136.44 КБ | Просмотров: 6992 ]
Снимок3.PNG
Снимок3.PNG [ 101.57 КБ | Просмотров: 6992 ]
Снимок2.PNG
Снимок2.PNG [ 103.76 КБ | Просмотров: 6992 ]
Снимок1.PNG
Снимок1.PNG [ 74.37 КБ | Просмотров: 6992 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-27 14:24 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
Не идет отладка.... миландр меня делает.... не могу ни как противостоять...
дебаг не заработал. у меня процессор 1986ВЕ93У. Из коробки не должно работать. рихтую под свой процессор.

Должно работать из коробки, я же писал выше: в проекте 3 конфигурации BE1 для 1986BE1, BE3 для 1986BE3, BE9x для 1986BE9x.
Переключитесь на BE9x, после этого проверьте, что папка CM3 включена в сборку, тестировал на 1986BE92.

UPDATE
Скачал проект с github, импортировал, проверил - отладка работает, вам нужно убедиться, что программа записывается в EEPROM.


Последний раз редактировалось kravitz 2017-фев-27 17:43, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-27 14:39 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Загрузка программы из консоли работает?
Код:
JFlash.bat myprog.bin

Что в логе "JFlash.log"?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 11:42 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
kravitz писал(а):
Загрузка программы из консоли работает?
Код:
JFlash.bat myprog.bin

Что в логе "JFlash.log"?

нет файла JFlash.log, есть вывод в кансоль. Вроде загрузка из кансоли работает


Вложения:
Снимок.PNG
Снимок.PNG [ 35.84 КБ | Просмотров: 6953 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 12:08 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
kravitz писал(а):
Должно работать из коробки, я же писал выше: в проекте 3 конфигурации BE1 для 1986BE1, BE3 для 1986BE3, BE9x для 1986BE9x.
Переключитесь на BE9x, после этого проверьте, что папка CM3 включена в сборку, тестировал на 1986BE92.

заного импортировал проект. переключился на BE9x. Странная структура каталого.... есть mdr1986x_RTT/source/CMSIS/CM1 - включена в компиляцию, mdr1986x_RTT/source/CMSIS/CM3 - исключена из компиляции.... mdr1986x_RTT/BE9xsource/CMSIS/CM3 - включена. Зачем нужна СМ1? Два раза включена папка MDR32F9Qx_StdPeriph_Driver.... почему? Две папки source, RTT....
Открыл main.c.... эклипс показывает что определён дефайн USE_MDR1986VE3.... открываю свойства проекта.... смотрю что там C/C++ build->Cross ARM C Compiler->Preprocessor->Define symbols, а там USE_MDR32F9Q2_Rev1 - что это за дефайн? Где USE_MDR1986VE9x?

инклуде на СМ3, и вроде нужные файлы при сборке цепляются
Код:
Building file: ../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.S
Invoking: Cross ARM GNU Assembler
arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -Wshadow -Wredundant-decls  -g3 -x assembler-with-cpp -D__STARTUP_CLEAR_BSS -D__START=main -D__STACK_SIZE=0x1000 -D__HEAP_SIZE=0x0100 -MMD -MP -MF"source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.d" -MT"source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.o" -c -o "source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.o" "../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.S"
Finished building: ../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/gcc/startup_MDR32F9Qx.S

Building file: ../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -Wshadow -Wredundant-decls  -g3 -DUSE_MDR32F9Q2_Rev1 -DUSE_RTT -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source\CMSIS\CM3\CoreSupport" -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source\CMSIS\CM3\DeviceSupport\MDR32F9Qx\inc" -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source\CMSIS\CM3\DeviceSupport\MDR32F9Qx\startup" -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source\MDR32F9Qx_StdPeriph_Driver\inc" -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source\RTT" -I"D:\Work\transformEnergy\workspase\mdr1986x-pack-repo-master\source\Example_Projects_Eclipse\mdr1986x_RTT\source" -std=gnu11 -Wno-comment -MMD -MP -MF"source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.d" -MT"source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.o" -c -o "source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.o" "../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.c"
Finished building: ../source/CMSIS/CM3/DeviceSupport/MDR32F9Qx/startup/system_MDR32F9Qx.c


Вложения:
Снимок3.PNG
Снимок3.PNG [ 68.03 КБ | Просмотров: 6952 ]
Снимок2.PNG
Снимок2.PNG [ 56.04 КБ | Просмотров: 6952 ]
Снимок1.PNG
Снимок1.PNG [ 28.62 КБ | Просмотров: 6952 ]
Снимок.PNG
Снимок.PNG [ 20.31 КБ | Просмотров: 6952 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 12:45 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
дебаг заработал, заливка тоже заработала.

теперь как сделать проект с чистого листа?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 13:04 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
нет файла JFlash.log, есть вывод в кансоль. Вроде загрузка из кансоли работает


JFlash.log должен появиться при загрузке/отладке из Eclipse.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 13:16 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Папка BE9x создается Eclipse'ом перед сборкой соответствующей конфигурации, в нее содержатся генерируемые файлы.
После импорта и компиляции проект должен выглядеть так:


Вложения:
RTT_1.jpg
RTT_1.jpg [ 380.85 КБ | Просмотров: 6947 ]


Последний раз редактировалось kravitz 2017-мар-09 15:42, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-фев-28 13:45 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
juvf писал(а):
теперь как сделать проект с чистого листа?

Как мне кажется, самый простой вариант использовать готовый пример:
переименовать, ненужное удалить и т.д.

Для первого проекта я использовал New Project | C++ Project | STM32F10x,
затем перевел его на MDR32F9x. Теперь начинаю новый проект с этой заготовки,
примерно с того, что выложил. Используя Project wizard вы получите почти
тоже самое, только для STM32))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-мар-01 08:44 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1325
Откуда: Тула
juvf писал(а):
заного импортировал проект. переключился на BE9x. Странная структура каталого.... есть mdr1986x_RTT/source/CMSIS/CM1 - включена в компиляцию, mdr1986x_RTT/source/CMSIS/CM3 - исключена из компиляции.... mdr1986x_RTT/BE9xsource/CMSIS/CM3 - включена. Зачем нужна СМ1? Два раза включена папка MDR32F9Qx_StdPeriph_Driver.... почему? Две папки source, RTT....
Открыл main.c.... эклипс показывает что определён дефайн USE_MDR1986VE3.... открываю свойства проекта.... смотрю что там C/C++ build->Cross ARM C Compiler->Preprocessor->Define symbols, а там USE_MDR32F9Q2_Rev1 - что это за дефайн? Где USE_MDR1986VE9x?

инклуде на СМ3, и вроде нужные файлы при сборке цепляются

USE_MDR32F9Q2_Rev1 нормальный дефайн. Вам больше подойдёт USE_MDR32F9Q3_Rev1, но не принципиально. Сделайте выложите скрин файла MDR32F9Qx_cohfig.h.
Скорее всего тупит сам эклипс, т.к. USE_MDR1986VE9x определено в MDR32F9Qx_cohfig.h в строке ~54.

ЗЫ. кОнсоль.
ЗЗЫ. сам иногда делаю так: в условный project_config.h включаю содержимое MDR32F9Qx_lib.h, MDR32F9Qx_board.h и MDR32F9Qx_config.h, редактируя под себя. В сборке, разумеется, этих файлов нет. Для реальных проектов правильнее так, а не как миландровцы для своих примеров сделали.

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-мар-01 12:19 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
prostoRoman писал(а):
USE_MDR32F9Q2_Rev1 нормальный дефайн. Вам больше подойдёт USE_MDR32F9Q3_Rev1, но не принципиально. Сделайте выложите скрин файла MDR32F9Qx_cohfig.h.
Скорее всего тупит сам эклипс, т.к. USE_MDR1986VE9x определено в MDR32F9Qx_cohfig.h в строке ~54.

В примере (проекте) о котором идет речь, определения USE_MDR32F9XX вынесены в настройки, так как проект содержит несколько конфигураций под разные процессоры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-май-15 16:39 
Не в сети

Зарегистрирован: 2016-апр-04 11:26
Сообщения: 7
реп не работает =(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-май-15 20:02 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
После обновления Eclipse/Plugins и у меня не работает... Завтра буду разбираться. Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-май-16 09:29 
Не в сети

Зарегистрирован: 2016-апр-04 11:26
Сообщения: 7
как мне кажется, дело в гитхабе


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-май-16 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Immortal_Buka писал(а):
как мне кажется, дело в гитхабе


И в гитхабе тоже, но после того как я поправил URLs, плагин выдает ошибку при разборе XML.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-май-16 13:52 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Исправил. Работает.

В настройка репозитория Eclipse Menu → Window → Preferences → C/C++ → Packages → Repositories → Milandr
укажите URL: https://raw.githubusercontent.com/in4lio/mdr1986x-pack-repo/master/index.idx

Лучше предварительно очистить папку Packages\.cache

UPD
README исправил

UPD2
Для GNU ARM Eclipse, начиная с версии 3.4.1, следует использовать индексный файл
https://raw.githubusercontent.com/in4lio/mdr1986x-pack-repo/master/index.pidx


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-авг-28 09:13 
Не в сети

Зарегистрирован: 2016-сен-02 14:18
Сообщения: 2
Первый раз в Eclipse,
установил Eclipse IDE for C/C++ Developers Version: Neon Release (4.6.0)

Пытаюсь установить пакет для GNU ARM Eclipse и Keil MDK 5.

//Установка пакета в Eclipse
//Код:
//Eclipse Menu → Window → Preferences → C/C++ → Packages → Repositories → Add...

но в Menu → Window → Preferences → C/C++
нет подменю Packeges

Что нужно добавить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-авг-28 14:01 
Не в сети

Зарегистрирован: 2016-апр-04 11:26
Сообщения: 7
Поставить плагин, либо keil, либо gnu mcu


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-авг-28 16:26 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Да, установить плагин GNU ARM Eclipse. Который, кстати, теперь GNU MCU Eclipce...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2017-авг-29 17:01 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
ARM Cortex-M C/C++ IDE and Toolchain with Eclipse Oxygen


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Пакет для GNU ARM Eclipse CMSIS Packs Manager
СообщениеДобавлено: 2018-дек-26 10:42 
Не в сети

Зарегистрирован: 2015-сен-15 09:32
Сообщения: 25
kravitz писал(а):
Для первого проекта я использовал New Project | C++ Project | STM32F10x,
затем перевел его на MDR32F9x.
Почему в сетингах вашего примера нет настроек для Cross ARM GNU C++ Compiller?
Как заставить файлы *.cpp компилироваться компилятором g++?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 37 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB