Миландр

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

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




Начать новую тему Ответить на тему  [ Сообщений: 29 ] 
Автор Сообщение
СообщениеДобавлено: 2013-окт-21 15:15 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июл-01 17:42
Сообщения: 32
Откуда: Москва, Декстроплат
CooCox IDE это удобная среда разработки без ограничения на размер кода, FreeWare.

Сегодня удалось скомпилировать проект без ошибок, но проверить работу сейчас нет возможности.
Загвоздка в настройке была в том что для CooCox IDE требуется стартап фаил написанный на СИ, а не на ассемблере как это сделано в большинстве проектов.
При подсовывании среде startup_MDR32F9Qx.s, тот начинает сообщать много ошибок. Танцы с бубном длились 5 часов без отрыва от стула.
Я ассемблер не понимаю вообще, но по стартапу STM32F10х на си и асм удалось переделать фаил из startup_MDR32F9Qx.s в startup_MDR32F9Qx.c в котором почти полностью всё на си.
Ничего сложного в переделке не оказалось. В прикреплении есть 4 стартапа 2 на си для CooCox IDE и 2 на асм для кеила, стартапы для STM32F10х и MDR32F9Qx.
Можете сравнить их и если найдёте ошибки то пишите.

Какие проблемы сейчас:
Я удалил кеил4.70 и попытался установить кеил5.00 и тут меня пустило в разочарование, пакет установился с ошибками, а вернутся к кеил4.70 нет возможности.
Поэтому мне сейчас нечем прошивать MDR32F9.

Для прошивки через ST-Link нужен алгоритм который скомпилирован в ELF фаил. Как его делать я не знаю.
В прикреплении в папке STLINK_ELF есть сам алгоритм и исходники для алгоритма STM32F10х.
На всякий случай, в папке STLINK_FLM алгоритм и исходники для прошивки MDR32F9Qx от кеила.

Сам проект для coocox с простейшим примером лежит в папке milandrTEST4.
В под папке milandrTEST4>debug лежит HEX фаил для прошивки(скорее всего не правильный).


Сейчас продолжаю работу , результаты работы буду выкладывать тут.
Если у вас есть какието предложения или есть свой способ использования этой среды под 1986ВЕ, выкладывайте здесь.


Вложения:
танцыВОКРУГ1986ВЕ.zip [552.85 КБ]
Скачиваний: 543

_________________
Сергей. Разработчик печатных плат с отечественными и импортными компонентами.
Для связи: diktatorus@gmail.com http://vk.com/id36323838 http://vk.com/mcuru http://vk.com/dekstroplat
Изображение
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-окт-21 18:15 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июл-01 17:42
Сообщения: 32
Откуда: Москва, Декстроплат
При попытке прошивания флеша 1986ве92 , отображается следующая ошибка.

Код:
C:\CooCox\CoIDE>"C:/CooCox/CoIDE/bin\coflash.exe" program STM32F103RB "C:/CooCox/CoIDE/workspace/milandrTEST4/milandrTEST4/Debug/bin/milandrTEST4.elf" --adapter-name=ST-Link --port=SWD --adapter-clk=1000000 --erase=all --driver="C:/CooCox/CoIDE/flash/STM32F10x_MD_128.elf" 
Erase:    Done
Program:    Done
Verify:    Failed
Error: Verify fails
Program Download Failed !


Частично алгоритм верный, чего-то там надо подправить, и будет доступный всем бесплатный софт для программирования 1986ВЕ92.

_________________
Сергей. Разработчик печатных плат с отечественными и импортными компонентами.
Для связи: diktatorus@gmail.com http://vk.com/id36323838 http://vk.com/mcuru http://vk.com/dekstroplat
Изображение


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-окт-25 04:37 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июл-01 17:42
Сообщения: 32
Откуда: Москва, Декстроплат
Частично работает Debugger.
CooCox останавливает выполнение программы которая зашита в флеш, и начинает грузить код в озу, переходит к какойто метке и на этом всё.
Всё начинает работать с тормозами.


Восстановил Keil , причём 5 версия стала нормально шить мк, не знаю как.
Сунул прошивку полученную в CooCox кейлу, после прошивки код не выполнялся(возможно ошибка в коде).

Работа в этом направлении без поддержки будет идти медленно.

_________________
Сергей. Разработчик печатных плат с отечественными и импортными компонентами.
Для связи: diktatorus@gmail.com http://vk.com/id36323838 http://vk.com/mcuru http://vk.com/dekstroplat
Изображение


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-окт-25 08:41 
Не в сети

Зарегистрирован: 2013-фев-14 08:40
Сообщения: 20
Цитата:
Работа в этом направлении без поддержки будет идти медленно.

Я сомневаюсь что кому-то интересно менять Keil на непонятно что.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-окт-25 14:03 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июл-01 17:42
Сообщения: 32
Откуда: Москва, Декстроплат
Например это будет интересно тем кто будет делать прошивки для коммерческих продуктов.
Кеил ведь не бесплатный, а 32кб версия только для ознакомления(не комерческого использования).

CooCox набирает популярность, поэтому не все слышали об этой среде.

_________________
Сергей. Разработчик печатных плат с отечественными и импортными компонентами.
Для связи: diktatorus@gmail.com http://vk.com/id36323838 http://vk.com/mcuru http://vk.com/dekstroplat
Изображение


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-ноя-27 08:04 
Не в сети

Зарегистрирован: 2013-ноя-27 07:58
Сообщения: 1
ULHEDER, вчера тоже решил попробовать CooCox. Собрал алгоритм для него из исходников кейла и stm. Стирание работает нормально.
Запись вроде тоже полностью работает. Сделал в кейле bin и прошил его через CoFlash.
Собрал проект в кокосе и записал в микроконтроллер - работает. Пока что не работает только отладка. Надо переделать elf файл который за это отвечает. Но пока не знаю как


Вложения:
Комментарий к файлу: Алгоритм для CooCox
MDR32F9x_128.rar [3.25 КБ]
Скачиваний: 427
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-ноя-27 12:25 
Не в сети

Зарегистрирован: 2013-ноя-27 12:19
Сообщения: 5
Откуда: Пермь
Добрый день, посмотрите пожалуйста статейку..
http://we.easyelectronics.ru/Direct/spa ... ex-m3.html
Жду Ваших комментариев. Спасибо!

И пропагандирую участвовать в конкурсе -
Изображение


Последний раз редактировалось Direct 2013-ноя-27 13:04, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2013-ноя-27 12:36 
Не в сети

Зарегистрирован: 2009-май-22 09:01
Сообщения: 1297
Откуда: АО "ПКК Миландр"
Direct писал(а):
Добрый день, посмотрите пожалуйста статейку..
http://we.easyelectronics.ru/Direct/spa ... ex-m3.html
Жду Ваших комментариев. Спасибо!


Отлично! У меня в свое время разобраться с этим не получилось. Так что в двойне рад.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Можно про стек поподробнее...
СообщениеДобавлено: 2014-окт-01 12:01 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
-=Sergei=- писал(а):
ЧумА писал(а):
Допустим, в startup я заказал стек объемом 0х400. Смотрю отчет линкера:
STACK 0x20000008 Section 1024 startup_mps.o(STACK)
Загружаюсь с JTAG-ом А. И в точке main вижу содержимое R13 = 0x20000408, т.е. похоже на правду. Причем, используется MSP, а
PSP = 0. Вопрос, что тут не так и требует правки? Или надо подгрузить что-то (на будущее) в PSP? Или JTAG обходит загрузчик?


Автоматически генерируемые Keilом инициализации перед входом в main корректно востанавливают указатель стека, но по ходу выполнений этих инициализаций используется стек заданный в бутовом ПЗУ равный 0х20000200. Его правда хватает сейчас, но например при каких либо изменениях в Кейле может и не хватить. Либо при использовании другого компилятора.

Посмотреть это можно если в режиме отладки нажать RST и затем пройти в пошаговом режиме из бутового ПЗУ и проследить за SP.


Я использую gcc в среде CooCox. Адаптировал его для прошивки/стирания flash памяти. Все работает, в самой IDE выбираю генерик арм кортекс м3 и вручную в настройках ставлю нужные адреса и размеры ram/rom памяти. Всё бы ничего, только отладка не работает. Пишет, что не может найти границы инструкции (нет доступа к памяти в некотором совсем начальном адресе). Точно такой же проект в кейле, соответственно настроенном под gcc, никаких проблем не вызывает. Отладка, прошивка и т.д. работают без нареканий. Пробовал разные значения стека в стартаповом файле: ошибка не исчезает. Что я должен учесть в своих исходниках или может настройках линкера/компиллятора? Можно общими фразами, типа "выставить размер стека таким-то". По всей видимости моя среда/компиллятор ничего не исправляет автоматически.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-01 13:02 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 505
В "Кайле" между startup-ом и main-ом есть прослойка, которой передаются параметры стека указанные в startup. Прослойка стартует с текущим (заданным в BOOT ROM (?)) значением указателя стека. Вроде, никто не мешает загрузить указатель стека заранее в startup-е.
ИМХО всё это на отладку "Кокосом" не влияет, возможно, дело в том, что "миландровский" flash начинается не с 0-го адреса. Тут обсуждалась та проблема (сдаётся, что до конца не решенная), что софтовый симулятор "Кайла" не позволяет отлаживаться с "миландровскими" настройками границ flash-а. Причём, поведение очень даже напоминает описанное Вами для "Кокоса".
Если не лень, пожалуйста, опишите настройку прошивки под "Кокос".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-01 16:13 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
ЧумА
нет, не лень :) специально поделюсь готовым *.elf для прошивки. Очень хочется наладить отладку. Файл закидывается в C:\CooCox\CoIDE\flash, его же и выбираем в закладке Download меню Configuration


Вложения:
MDR32F9x_128.zip [3.27 КБ]
Скачиваний: 256
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-01 17:02 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 505
Спасибо! Теперь вопросы от "особо одарённых":
1 У "Кокоса" была отдельная программа-программатор :). Для неё elf, наверное, также подходит?
2 Программирование ведётся методом - загрузили elf в RAM, стартовали его, далее программирование через него (т.е. аналогично FLM для Кейла)?
3 Olinex-овские адаптеры поддерживаются?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-01 19:31 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
ЧумА
На здоровье :) отвечу по пунктам:
1. Да, elf-ами они программируются.
2. Да, механизм записи во flash подробнее расписан тут (в кейле имхо также делается, т.е. по тому же принципу)
3. Не знаю, не сталкивался с такими. Поддерживаются вот эти


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-01 21:09 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июл-01 17:42
Сообщения: 32
Откуда: Москва, Декстроплат
Похоже CooCox IDE тоже уже можно добавлять в список сред программирования :) :idea: .
Всё ближе и ближе к массовому использованию чипа среди радиолюбителей.

YURIY Вы автор этого elf файла?
Я как-то пытался сделать , но ничего не вышло. Даже можно сказать просто коснулся темы...

Этот фаил надо куда-то закинуть в тему где его найдут, в эту тему я зашёл совершенно случайно(не на ту тему клацнул мышкой)...

_________________
Сергей. Разработчик печатных плат с отечественными и импортными компонентами.
Для связи: diktatorus@gmail.com http://vk.com/id36323838 http://vk.com/mcuru http://vk.com/dekstroplat
Изображение


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-02 07:38 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
ULHEDER
Да, автор я :) покопался в кейле, покопался в кукоксе и после возни с make файлом удалось его создать :)
Выложил в открытом доступе с целью привлечь разработчиков к проблеме отладки в этой среде. Я, просто, к ней здорово привык :) их CoOS спокойно мигает светодиодами с задержкой 50 мс на отладочной плате с 1986ВЕ91Т :) Перенести рабочий проект с stm'а на него пока из-за отладки не получается. А в какой теме его лучше найдут?.. Можно и туда закинуть :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-02 08:05 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 505
YURIY писал(а):
ЧумА
3. Не знаю, не сталкивался с такими. Поддерживаются вот эти

Точно, поддерживаются FTDI devices, т.е. и всякие "Olimex ARM-USB..." http://www.coocox.org/CoLinkGuide/FTDI.htm


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-02 08:22 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 505
"Всё украдено до нас" (с) :(


Вложения:
Спариваем CoIDE и российский Cortex M3.pdf [195.76 КБ]
Скачиваний: 742
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2014-окт-02 08:34 
Не в сети

Зарегистрирован: 2014-сен-17 12:19
Сообщения: 37
Откуда: СПб
ЧумА
Огромное Спасибо!
надо попробовать :) пусть хоть с батником, главное чтобы работало. Кстати, возможно также решается проблема просмотра регистров периферии. Мне там сказали, что среда вполне поддерживает svd файлы (возможно потребуется такой же трюк с подстановкой). Опробовать пока не удалось. Видимо простая замена переименованного миландровского svd также при запуске обновлялась на дефолтную. В любом случае, спасибо за информацию! Есть над чем поработать :)

Upd: отладка по инструкции заработала! :) только что проверил!
___________
(к модераторам: можно обсуждение вывести в отдельную ветку, а то мы отклонились от темы :) )


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-фев-20 19:05 
Не в сети

Зарегистрирован: 2019-фев-20 17:36
Сообщения: 5
Если кто-то еще интересуется этой темой, то предлагаю рассмотреть мой вариант программирование МК Миландр в среде CooCox IDE http://hamlab.net/mcu/milandr_coocox.html


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-мар-25 15:20 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
Попробовал: поставил CoIDE v.1.7.8, запустил Конфигуратор CooCoxIDE v.20190219.1325, задал в настройках путь в папку установки CoIDE, программа действительно переходит на вкладку Микроконтроллеры, но все списки пустые :-( Пробовал задавать другие пути (уровнем выше, уровнем ниже) - тогда она честно говорит, что база данных не найдена. Размер файла ICoodat.dll 4971кБ, дата 05.02.2015, файл явно не пустой. Что я делаю не так?

_________________
Странник


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-мар-25 15:36 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
вдогонку: вкладка Компоненты пустая, на вкладке Алгоритмы есть новые алгоритмы отладки и программирования, списки существующих пустые и кнопки переноса из новых в существующие ожидаемо не работают.

Я ещё CoSmart v1.2.5 поставил, но он ни про Миландр, ни даже про ST ничего не знает. И кстати в папке CoSmart\bin тоже есть такой файл (правда чуть покороче и на год старее), но и тут Конфигуратор базу видимо находит (не ругается), но списки на вкладке Микроконтроллеры тоже пустые.

_________________
Странник


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-13 09:22 
Не в сети

Зарегистрирован: 2019-фев-20 17:36
Сообщения: 5
stranderer писал(а):
Попробовал: поставил CoIDE v.1.7.8, запустил Конфигуратор CooCoxIDE v.20190219.1325, задал в настройках путь в папку установки CoIDE, программа действительно переходит на вкладку Микроконтроллеры, но все списки пустые :-( Пробовал задавать другие пути (уровнем выше, уровнем ниже) - тогда она честно говорит, что база данных не найдена. Размер файла ICoodat.dll 4971кБ, дата 05.02.2015, файл явно не пустой. Что я делаю не так?


В какой каталог установлена CoIDE? Нет ли в пути к каталогу русских символов? К сообщению прикрепляю скрин моей версии IDE, а также пропатчену базу данных. Попробуйте подбросить мою базу данных в каталог bin.


Вложения:
Комментарий к файлу: Версия, которая установлена у меня
CooCoxVer.PNG
CooCoxVer.PNG [ 39.15 КБ | Просмотров: 985 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-13 09:23 
Не в сети

Зарегистрирован: 2019-фев-20 17:36
Сообщения: 5
В предыдущем сообщении что-то неправильно сделал и файл базы не прикрепился


Вложения:
Комментарий к файлу: Пропатченая база данных CooCox IDE
ICoodat.rar [1.19 МБ]
Скачиваний: 29
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-13 09:30 
Не в сети

Зарегистрирован: 2019-фев-20 17:36
Сообщения: 5
Попробуйте удалить файл config.dat в каталоге с конфигуратором. И если не трудно, пришлите свой файл базы данных


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-13 13:23 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
Да, спасибо, про русские буквы я прочитал, поэтому все программы от CooCox ставил в подпапки E:\Programs\CooCox ну или как-то похоже. к сожалению вот прямо сейчас не могу ничего выслать, потому что это всё у меня на работе, а я дома в отпуске, но думаю, что смогу зайти на днях, тогда и свой файл возьму, и Ваши попробую...

_________________
Странник


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-16 09:17 
Не в сети

Зарегистрирован: 2019-фев-20 17:36
Сообщения: 5
Если что программа проверялась под Windows 7 x64. В других ОС я не тестировал. Вы можете попробовать открыть файл базы данных в SQLiteStudio и посмотреть содержимое.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-18 13:09 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
Спасибо, попробую, как только доберусь до работы...

_________________
Странник


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-20 13:53 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
Посмотрел: CoIde у меня установлена в папке E:/PROGRAMS/CooCox/CoIDE. Когда на вкладке Настройки Конфигуратора задаю эту папку, то хоть с моей базой, хоть с Вашей всё работает (точнее НЕ работает) одинаково: открывается вкладка Микроконтроллеры с пустыми списками. Версия CoIDE у меня вроде та же. Может Конфигуратор какой-то неправильный?
В приложенном архиве мои базы из CoIDE и CoSmart, а также окна About из CoIDE и Конфигуратора.
Грустно, конечно, что проект CooCox умер, приходится работать с Фитоновской средой CodMaster-ARM, которая хоть и отечественная (и потому сильно дешевле всяких Keil-ов), но с сентября 2013-го развиваться перестала


Вложения:
CooDat.zip [2.75 МБ]
Скачиваний: 57

_________________
Странник
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2019-май-20 14:00 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 100
Откуда: Новосибирск
PS
Удаление config.dat не помогает. Компа с Семёркой у нас нет, а в Десятке 64-разрядной работает вот так...

_________________
Странник


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

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


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

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


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

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