Змінюй хід війни! Допомагай ЗСУ!

Электрофлуд :)

  • Автор теми Автор теми RUH
  • Дата створення Дата створення
P.S. К стати, System Workbench for STM32 поехала пости сразу.
Но упёрлась в Open OCD. Пока не пойму где у неё конфиг reset_config и что ему туда написать, чтобы он понял, что ножки RST ему ни кто ни когда не предоставит.
Пока что
TARGET: STM32F103C8Tx.cpu - Not halted
in procedure 'program'
in procedure 'reset' called at file "embedded:startup.tcl", line 490
in procedure 'ocd_bouncer'

** Unable to reset target **
shutdown command invoked
 
P.S. К стати, System Workbench for STM32 поехала пости сразу.
Но упёрлась в Open OCD. Пока не пойму где у неё конфиг reset_config и что ему туда написать, чтобы он понял, что ножки RST ему ни кто ни когда не предоставит.
Кури OpenOCD... насколько знаю,ему по-сараю ножка RST, там либо JTAG либо SWD.
Да возьми JLink и работай по SWD.
 
Кури OpenOCD... насколько знаю,ему по-сараю ножка RST, там либо JTAG либо SWD.
Да возьми JLink и работай по SWD.

Хочу ST-link, он маленький. Жлинк - гроб здоровый, хотя и он есть.

P.S. Жлинк, вроде, продумало ловушку для китаелюбов и где-то должна валяться фирмварь, превращающая СТ-линк в Жлинк лайт :)
 
P.P.S.
Ага. ОпенОЦД на самом деле проблем не создавал, их создавал этот самый вёркбенчЬ.
Там надо в дебаг сеттингс перебить галочку с авто на юзер дефайнед - тогда он перестанет писать туда ересь, и поменять там
reset_config с того, что он туда воткнул на reset_config none

Если не подключена ножка сброса (у меня не подключена).
Где ему сказать, чтобы он не генерировал бред - не знаю, наверное тоже где-то у него в конфигах можно, но быстрее вручную забить.
 
Продолжаем антигуманные эксперименты над STM32 средствами кривого и не очень халявного софта.
Герой последнего часа выглядит так
fjbcf2.webp

Его можно установить "из коробки" средствами еклипсового маркетплэйса (это такая же херня, как и аппсторы разные и плэйсторы, только с блэкджеком и ****ами для Элипса).

Прошлый герой нуждался в указании на репозиторий, чтобы его поставить.
Этот гораздо сильнее сблизился с эклипсом и опубликовался прямо в нём.

Зачем он это сделал? Да *** его знает.
Работает ли он из коробки? Да ну *****!

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



Надо сказать, что другой его проект (это голый, я думал, что голый будет по лучше работать...), который типа "Хэллоу Ворлд" вызывал всего 3 ошибки, и они были... ну не в стартапе, хотя-бы. Там чувак просто за игрался передиранием из BuOS (причём наглым, заголовок в файле такой:
/*
* This file is part of the ВµOS++ distribution.
* (
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
)
* Copyright (c) 2014 Liviu Ionescu.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
...
ну, вы поняли, ни какой uOS в этом проекте нет, это блинк лэд) и что-то напутал с типами, по этому, десь отака ***ня, малята
0gafea.webp



На этом я заканчиваю свой стихийный Unpacking армовских приблуд под еклипс на сегодня. Разбираться и править косяки данного комплекта желания нет абсолютно, по этому но отправляется куда? Правильно - на ***, а следующий сеанс разврата будет посвящён второй приблуде, имеющейся на сегодня дл STM32 под эклипсом -
as6.png

Его я уже сегодня ставил и даже добился от него отладки.
Этот вёркбенч - развитие старого и тоже известного проекта, старое название которого я чёт потерял.
И он, хотя-бы, не имеет багов в свежесозданном пустом проекте и гордо дебажит мэйнлуп (правда, теряется при пошаговой отладке, почему-то, но по халту - стоит где положено).
 
P.S. И первая так-себе новость - отсутствует набор инструкций ARM
1jbcjc.webp


Или они что-то знают и у STM32 не ARM, а Thumb II, или... ну или-или.

Ан нет, у STM32 действительно Тумба 2. То есть - это предыдущий вёркбенч считал, что у него есть ARM.
Этот знает точно.

И ещё положительный момент - он уже поддерживает HAL (это которое от STM куба, который сам по себе баганый, но, как бы, развивается) и поддерживает обновление SPL, чего небыло в CooCox (ну, да кокос и почил уже).
Выглядит это так
ac1cba.webp


Как не странно, в результате получаем
Generating binary and Printing size information:
arm-none-eabi-objcopy -O binary "TestAS6.elf" "TestAS6.bin"
arm-none-eabi-size "TestAS6.elf"
text data bss dec hex filename
1216 1080 1092 3388 d3c TestAS6.elf

Ниужэле он работаит?
Не, где-то же должен быть *****, это же фриварь.
Завтра постараюсь найти.
Ну, кроме тех, которые сегодня имел с ресетом в SWD, но они слишком быстро починились, даже не оставили в душе достаточно ****а, чтобы метнуть в авторов. Даж боюсь, что исправят быстро, так как у них на сайте хватает именно такой траблы. Но там ещё и линуксоиды... это сложнее. Под виндой я минут 10 искал всего, где шо и почему не патчится.
 
Мне эта чудо-трава реально не даёт закончить её :D
Это ж ржака...
Где у Эклипса ерэйз/врайт чип?
Может под таким значком?
attachment.webp
Или под таким, похожим на еразер из графических редакторов?
attachment.webp
(да нет же, последний это... внимание... Search!!!! Ну правда же, вылитая лупа?)

Нееет :) Прожиг чипа у эклипса ТУТ
jc6gfd.webp


В меню под ПКМ по проекту.
Не, я, конечно, целенаправленно, понимая, что это опенсорс, просто методично перебирал всё, но у людей со слабой психикой такое положение контролсов может вызвать когнитивный диссонанс :)
 

Вкладення

  • hummer.webp
    hummer.webp
    328 байт · Перегляди: 150
  • eraser.webp
    eraser.webp
    298 байт · Перегляди: 264
  • attachment.webp
    attachment.webp
    328 байт · Перегляди: 50
Мммм, а EmBitz не? Обязательно половые ********ия?
 
Мммм, а EmBitz не? Обязательно половые ********ия?

Эклипс, как бы, стандарт половых ********ий.
Он кроссплатвормен (и да, они заморочились, и сам по себе эклипс действительно фигачит одинаково и там и там). и его за это любят те, о ком я уже писал - любители линукса.
То есть, ты можешь ваять под виндой, а потом просто тот же проект запустить под линухом и продолжить (ну, это если нервов хватит побороть косяки под линём).

Тут у меня ещё темка была, про STM32 и всё, на чём под него пишут - надо туда будет скросспостить и там продолжить.
Ревизия у меня. Вот, решил унпакингами поделиться. Кокос **** окончательно, ворованый кейл - моветон. Надо ж как-то соответствовать современным веяниям.
Ни как клипсу пропустить не мог.
 
Вот с этого момента поподробнее. У тебя или у НЕ ТВОЕЙ фирмы? Если второе, пусть идут ***** строем и покупают лицензионное ПО.

У меня.
Если покупать только лицензионное ПО - круг доступных "не моих фирм" значительно сужается.
Ну... и самому же интересно. Я клипсу последний раз юзал году эдак в 2007м, думал, мало ли, вдруг что-то изменилось в лучшую сторону :D
 
Решил посмотреть что там мелкомягкие предлагают для андроида за ксамарин.
Так и не понял что мне надо поставить на телефон - в папке релиза одни .dll, апк только в папке дебаг.
ХЗ шо копировать.

P.S. Так, в порядке ознакомления. Собирает долго шопиздец. Если просуммировать время сборки - за время написания одного приложения сложнее "хэлоу ворд" можно успеть выучить яву.
 
Мммм, а EmBitz не? Обязательно половые ********ия?

о. Хочешь объясню почему Мбитз нито, чтобы не, но не совсем тру?

Взял я проект под него, темплейт USB-HID и перегоняю в эклипс.
Так вот... он нихера не собирается - там инклуды не сквозные.
Мбитз прощает ошибки, но код получается потом у некоторых - ****амотный. Портни под другой IDE - и ногалицо обеспечена.

(Это, включая потерю stdint.h, когда не компилится из за того, что стдинт - не сквозной и uint8_t - в ЮСБ отсеке уже не виден. А в ЕмБитз - почему-то, виден, хотя не должно так быть).

Эклипс, всёж, более корректен в плане стандарта. ну, на столько, на столько корректны его приблуды. он отсебятину нести не умеет. А битз - несёт.
Хотя и неплох. И прощение ошибок - иногда не минус, а плюс. но с последствиями.
 
Description Resource Path Location Type
undefined reference to `SystemInit' startup_stm32.s /hid_c/startup line 79 C/C++ Problem

С main проблем, слава богу, не возникло.
Но при импорте проекта возникла проблема с инициализацией из ассемблерного стартапа.
/* Call the clock system intitialization function.*/
bl SystemInit
/* Call static constructors */
bl __libc_init_array
/* Call the application's entry point.*/
bl main
SystemInit, как и положено лежит в system_stm32f10x.c, файл этот в системе есть и в других местах ошибок не вызвал (может потому, что вызвал сразу в стартапе?)

Где его хочет видеть ассемблер?

P.S. Встречал решение, где люди его просто комментируют, но это ж неправильно. По идее, этот вызов должен быть до main.
Или пофиг и засунуть его в main?
пока не соображу в чём подъёбка будет в таком подходе.
 
ОК, объяснил. Но ты ж вроде для себя вариант ищешь? И понимаешь что к чему. Почему нет тогда?

Потому, что несовместим с эклипсом.
Не всегда приходится работать на чём хочешь. иногда заказчик выставляет требования, и ему надо фриварный эклипс.
Не часто же удаётся продавать прошивку поштучно, и далеко не всем удаётся. А заказчик может хотеть (и многие хотят) исходник в эклипсе, потому, что выше уже была тема - какое-то ****утое веяние работать под десктопным линуксом и ЭмБитза под линух - недЪ.
Соответственно мозгоебля с импортом и его косяками ни кому может оказаться не нужна.

Вот почему в эмбитз стартам системинит видит, а тот же проект в эклипсе - нет?

P.S. В эклипсе я ж могу под виндой писать и не бибать себе мозги, а кастомер пусть хоть убьётся об линукс - проект одинаков.
 
Ага, нашлась потеряшка - просто файл не скопировал. system_stm32f10x.с
 
Не всегда приходится работать на чём хочешь. иногда заказчик выставляет требования, и ему надо фриварный эклипс.

В таком случае просто передавать заказчику исходники. А там пусть сам портирует их куда угодно, хоть в блокноте пусть ***рит и в командной строке компилирует.
ХЗ, ни разу не встречал такого ****атизма. Работаю в чем удобно.
 
Тагс. отставим лирику. У меня глаз замылился, не могу понять
jff3gh.webp

Причём, файлы подключены и по F3 прекрасно показывает эту функцию.
Шо за?... андефинид?
 
Назад
Зверху Знизу