![](https://electronix.ru/forum/uploads/set_resources_23/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://electronix.ru/forum/uploads/set_resources_23/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
razrab83
-
Постов
383 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Сообщения, опубликованные razrab83
-
-
Опубликовано · Изменено пользователем haker_fox
Нарушение правил 2.1.в · Пожаловаться1 hour ago, RusikOk said:если б я знал какое оно ущербное то тупо отказался бы
я в своё время переехал на eclipse и плевался... на столько ущербной и недоИде мне казался этот эклипс. на тот момент не было альтернативы... да и на CCS IDE приходилось под TMS писать... а у TI по мойму до сих пор нет альтернативы.... в эклипс даже элементарного поиска по Ctrl+F нет.... но потом нашел Ctrl+H... руки автоматом нажимали Ctrl+F для поиска, потом приходилось вспоминать и нажимать Ctrl+H.... через боль и с матами... потом привык (не куда было деться с подводной лодки)... потом стал гуглить типа "как в эклипсе run to cursor?" и тому подобные элементарные вещи... и со временем открыл для себя планету эклипс... раз в пол года гуглил "горячие клавиши eclipse" или "фишки в eclipse". Всех их конечно за раз не выучишь.... но раз за разом.. по одному-два удобству осваивал... Щяс по мне - так эта лучшая среда. ИМХО.
Модератор: перечитайте, пожалуйста, правила, особенно п. 2.1.в. Там говорится о грамматически правильно написании. В Вашем же тексте этого почти не наблюдается.
-
В 19.10.2022 в 23:06, RusikOk сказал:
если есть возможность то сразу переходи на IAR или кейл.
я от этого еклипса скоро уже валерьянку начну пить(
"Мыши кололись, плакали, но продолжали есть кактус." (С) А зачем вы используете
кубеклипс, если он вам так не нравиться? -
Опубликовано · Изменено пользователем razrab83 · Пожаловаться
Ctrl+R или ПКМ->Run to line
-
1
-
-
12 часов назад, RusikOk сказал:
пустой проэкт с инициализацией то такая фигня появляется.
вы писали
В 24.10.2022 в 23:31, RusikOk сказал:пишет No source available for "slaveRxBuf() at 0x20000716"
не понимаю при чем тут эта переменная я же просто инициализирую UART.
Т.е. вы создаете пустой проект с инициализацией UART и такая фигня появляется. А если создадите
простойпустой проект без инициализации уарта и вообще без инициализации перефирии?Как вы создаете проект у кубеИде? С "кубом" (с файлом *.ioc) или empty project? Если с кубом, то вы включаете в Pinout&Configuration пины отладки? Там нужно включит System Core->Sys->Debug/Serial Wire/JTAG или т.п.
-
9 минут назад, Сергей Борщ сказал:
не написали, какой контроллер вы отлаживаете
stm32g0xx
4 минуты назад, RusikOk сказал:при старте ядра
не понятно, что такое старт ядра? в настройках отладки можно поставить
брейкпоинт на main()сделать "run to" и дописать main() или любую др функцию. по умолчанию стоит брейк на мэйне.вы стартуете отладку (не ядро, а в иде запускаете отладчик), запускаются всякие gdb, заливка кода, старт кода (если есть run to) и код выполняется до main(). останавливается на main(). Далее делаете Run и начинается выполнение маин, которое вызывает инит вашей перифирии, например инит вашего уарта. и вот в это ините возникает HF?
Стартом ядра вы называете запуск исполнения программы с самого начала?
Если у вас инит уарат до маина, перенесите инит уарта в тело майна и там нормально прошагайте.
-
12 часов назад, RusikOk сказал:
при старте сразу же в hard fault
при старте отладки или старте с main()?
-
а вот это не поможет?
-
21 минуту назад, jenya7 сказал:
а как это сделать через QMake файл?
ни как. QMake файлу (т.е. *.pro) не указывается пути до библиотек.
вангую: когда устанавливается qt, то устанавливаюся либы, бинарники и т.п. в разные папки. также на пк устанавливается qmake. допустим либы легли в папку
/usr/lib/arm-linux-gnueabihf/, а qmake в паку /usr/bin. Когда запускаете этот qmake, то он создает makefile c путями
INCPATH = -I. -I\usr\include\qt\ -I\usr\include\qt\QtVirtualKeyboard -Irelease -I/include -I..\......<длинная колбаса>
LINKER = g++
LIBS = /usr/lib/arm-linux-gnueabihf/libQt5VirtualKeyboard.so /usr/lib/arm-linux-gnueabihf/libQt5Quick.soqmake сам знает где ёвные библы и хидеры.
Когда сами собираете Qt (установка не из репов, а онлайн инсталятор или самостоятельная сборка), то запрашивается папка установки. Допустим вы поставили Qt в /home/user/Qt5_12
в этоq папке будет qmake. Если его запустить, то он вам сделает makefile c инклудами в папку /home/user/Qt5_12/include. Ему не нужно говорить от куда брать либы/хидеры.
Можете поставить рядом в сосед. папку кроссплатформенный Qt, допустим в /home/user/Qt5_12_Raspberry. qmake из Qt5_12_Raspberry "подтянет" библиотеки/заголовки из /home/user/Qt5_12_Raspberry/lib и /home/user/Qt5_12_Raspberry/include
Запускаете нужный вам qmake - получаете нужные вам include.
-
/usr/lib/x86_64-linux-gnu/libQt5Core.so
-
3 минуты назад, Сергей Борщ сказал:
Я выделяю нужные строки и Shift+Tab.
век живи век учись!!! спс. А если нужно наоборот, тело if отодвинуть вправо на пару табов?
-
19 часов назад, artemkad сказал:
надо, к примеру после каждого числа поставить L...
нашел приминение.... автостиль заглубил тело if на пару табов. вертикально выделил и удалил. удобно. раньше руками каждый таб удалял. спс.
-
Опубликовано · Изменено пользователем razrab83 · Пожаловаться
24 минуты назад, VladislavS сказал:А вот так эклипс умеет?
не пользую auto (каюсь, отправьте меня на фронт). Но проверил auto asd = 3.14; - подсказки не выпало. может надо где-то довключать?
ps я пробовал юзать auto - очень не удобно. Я глядя на код должен точно знать её тип. мне нужно видеть float asd;. Я даже учавствовал в больших проектах (ещё до auto) где куча куча типов были типа
typedef float Lenght;
typedef Lenght Road;
typedef Road X;
а потом в коде
X asd;
меня всегда возникали проблемы с тем, что я не понимал, что это за тип переменной asd и приходилось десяток тайпдефов разматывать.
-
1 минуту назад, VladislavS сказал:
В эклипсе нельзя на постоянку включить разве?
не знаю. не пробывал. наверно у меня не было необходимости.
4 минуты назад, VladislavS сказал:В прследних версиях IAR, кстати, с автодополнениями и подсказками уже лучше.
ну хорошо! по тихоньку выбираются из 90-х. возможно скоро отпадет необходимость во внешнем редакторе текста.
-
32 минуты назад, VladislavS сказал:
В VS продвинутые автодополнения и подсказки.
в эклипсе все таки попродвинутей. показывает возвращяемое значение и аргументы.
15 минут назад, VladislavS сказал:А мне все эти свистоперделки только мешают.
согласен. кому то это наоборот это не по вкусу... но в эклипсе они не мешают, т.к. они выскакивают только по нажатию Ctrl+пробел. Если бы при наборе текста у меня бы всегда вылезали свистоперделки - я бы вообще в vi от такого IDE ушел.
ps, причем Ctrl+пробел - это зачет. всё таки грамотный дизайнер эту клавишу выбрал. Ctrl всегда под пальцем, а пробел огромный - не промажешь. Было бы гораздо неудобней какойнить Alt+Shit+P. Пробел под самый частый хоткей. ИМХО.
-
10 минут назад, VladislavS сказал:
В VS продвинутые автодополнения и подсказки.
Да, зачет. Было бы удивительно, если бы в VS его не было.
-
Опубликовано · Изменено пользователем razrab83 · Пожаловаться
10 часов назад, Arlleex сказал:чаще всего все сводится к поиску нужного контрола, взятия его имени, возвращении к месту и продолжению клацания.
если освоите автозаполнение по заглавным буквам, то забудете про "поиску нужного контрола" и отпадет потребность что-то искать и мышкой проваливаться в объявления/хидеры, и покидать места клацания.
-
Опубликовано · Изменено пользователем razrab83 · Пожаловаться
15 часов назад, artemkad сказал:Подозреваю речь про автозавершение ввода. В Npp сейчас это есть, только в настройках надо включить и настроить с какого символа предлагать варианты. Ну или это сниппеты, но они не встроены, а реализуются плагином.
Нет. Это немного не то. Посмотрите ещё раз видео.
Попробую объяснить. будет долго и нудно....
допустим у вас есть класс Gpio (или структура, не важно).
class Gpio { void GPIO_ConfigPinLock(GPIO_T* port, uint16_t pin); void GPIO_ConfigEventOutput(GPIO_PORT_SOURCE_T portSource, GPIO_PIN_SOURCE_T pinSource); void GPIO_EnableEventOutput(void); void GPIO_DisableEventOutput(void); void GPIO_ConfigPinRemap(GPIO_REMAP_T remap); void GPIO_ConfigEINTLine(GPIO_PORT_SOURCE_T portSource, GPIO_PIN_SOURCE_T pinSource); }
объявляем экземпляр класса
Gpio gpioForOutClock; //имя переменной пишем либо в кэмелСтайле, либо с прочерками, аля gpio_for_out_clock
далее.... вводим только буквы начала слова. т.е. в имени переменной слова "gpio", "For", "Out", "Clock". Вводим gF (или gO, или gFC. gCF не получится, т.к. нарушена последовательность слов "For" и "Clock"), нажимаем ctrl+пробел.
автозавершение меняет gF на gpioForOutClock. если в коде есть две переменные, например ещё gpioForInClock, то автозаполнение предлагает выбрать либо gpioForOutClock, либо gpioForInClock.
Представляете!!! Вы вы ввели два символа, а вам предлагают чуть ли не предложение выбрать из 2-х предожений. Если вы введёте gO - то выскочит однозначно gpioForOutClock. Т.е. нужно вводить символы по заглавным буквам (или по бкувам после символа "_").
вы хотите вызвать метод Gpio::GPIO_ConfigPinLock(), вы помните, что там начинаются все методы с "GPIO" и есть что-то типа "Lock". после "gpioForOutClock" жмём ".GL" и ctrl+пробел, у вас текст gpioForOutClock.GL меняется на gpioForOutClock.GPIO_ConfigPinLock(port, pin); В Nр++ автозавершение будет предлагать завершить слово после набора "gpioForOutClock.GPIO_" - причем предложит выбрать из всех методов, а их может быть 100. И то, предложит, если GPIO_ConfigPinLock встречалось в исходнеке ранее, Nр++ не будет анализировать хидер, который вложен через кучу других хидеров и предлагать вам только методы этого класса.
А eclipse предложит только методы этого класса и он проверить все заглавные буквы и поищет последовательность слов начинающихся с g и L. Я сейчас в проекте набрал gL - выскочило в автозавершении 100500 вариантов. замучиешся искать. L - это и Lock, и Lenght, и Look.... Но мне надо именно Lock,
набераешь gLo - один вариант GPIO_ConfigPinLock ()gLoс - один вариант GPIO_ConfigPinLock (). Т.е. можно например набрать gCoLi - автодополнение будет искать такое имя, которое начинается с g, в котором есть слово начинающееся с "Co", после слова с "Co" где-то должно быть слово с "Li" и выведет однозначно GPIO_ConfigEINTScreenLine. я вот об этом автодополнении. Это автозавершени (автодополнение) в эклипсе изкоропки. Иар им похвастать не может. QtCreator может. В QtCreator без него вообще ни как. Очень много рутины и весь Qt в кэмелСтайле. Есть ли такое в VS или кейле?ps может я ошибаюсь и в Np++ такое уже давно есть? Его надо как-то включить и/или плуг накатить.
15 часов назад, artemkad сказал:надо, к примеру после каждого числа поставить L...
я такое делаю примерно раз в год и через Np++. Открываю там файл, пишу макрос из 2-х нажатий (L стрелкаВниз), выполняю его n раз. Согласен, костыль! ))) Буду теперь знать про вертикальное редактирование. Спс.
-
10 часов назад, Сергей Борщ сказал:
я же говорю, не ради спора... не знал про эту кнопку. спс.
15 часов назад, VladislavS сказал:Проверил. Само как-то так сделалось : Home - Shift+End - Ctrl+X - подвести курсор на место вставки - Ctrl+V
Неправда. Хотя неизвестно в каком редакторе у вас это получилось. Я проверил в eclipse и в IAR
1)Home
2)Shift+End
3)Ctrl+X
после этого вместо удаленной строки пустая строка
4) подвести курсор на место вставки
5)Ctrl+V
после этого на экране одна строка пустая, а та строка, куда вставил - там две строки. при копепасте в буфер обмена не попадает перевод строки.
6)Нажимаем Enter
после этого после этого на экране одна строка пустая
7)подводим курсор на пустую строку
8)удаляем пустую строку (два раза Backspase)
итого: 8 операций вместо одного нажатия Ctrl+стрелка.
11 часов назад, jcxz сказал:В моей работе, кроме каких-то сложных алгоритмов, также полно кода не особо сложного, но требующего множество нажатий клавиш при редактировании: всякий юзер-интерфейс; или вписывание какого-то функционала, на ранее разработанном базисе.
ППКС. Я уже про это не стал расписывать. Такое часто возникает при написании утилит под винду/линукс для отладки/тестирования/конфигурирования железки. там такая рутина.... чувствуешь себя секретаршей. На бумажке делаешь набросок GUI и погнал кодинг. Голова уже не то что вперёд убежала... уже думает про работу в завтрашнем дне. Руки на автопилоте пишут GUI.
9 часов назад, Arlleex сказал:что кнопочников, что маус-клацкеров примерно поровну, а споры здесь - это что-то из разряда что лучше - ASM vs C, C vs C++, GCC vs no-GCC и т.д.
предлагаю холивар кнопочников vs маус-клацкеров вынести из этой темы. Есть
в эклипсев CubeIde удобные фичи по работе со строками с помощью клавиатуры. Кто не может выпустить мышь из рук - не обращайте внимания. Кому это интересно - см. видео, спрашивайте, пользуйтесь. -
5 минут назад, artemkad сказал:
Когда надо в выравненных по вертикали данных (таблицах, комментариях, дефайнах) вставить или убрать текст или символ сразу в куче строк - сильно ускоряет дело.
я либо делаю ПКМ->Refactor->Rename... (либо Alt+Shift+R, смотря где руки, на мыши или на клаве) и делаю переименование. Либо меняю хором через Find/Replace...
Может это не та потребность.... как нить попробую в будущем вертикальное выделение ещё раз.
-
7 минут назад, artemkad сказал:
Плохо искал?
Ага. Ctrl+Shitf+A. У меня нет необходимости в этом функционале. Сколько раз в разных редактора пробовал - не понимаю смысл этой операции. Хоть я его и не пользую, но тем не менее в эклипсе этот функционал есть.
9 минут назад, artemkad сказал:В чем удобство в сравнении, к примеру, с тройным кликом мышкой на строке?
3-ой клик выделяет одну строку. Я об этом не писал.
Ну я не знаю как лучше объяснить. Я смотрел всякие буржуйские уроки по QML на ютубе, я был удивлен, как ловко автор кодит. Не то что он там знает тему, а именно как он ловко текст набирает и редактирует. набрал "mF" и на экране "myFavoriteGpioPin". как он ловко меняет местами порядок строк, как он ловко меняет местами целые куски кода. Я просто был заворажен от того, как он быстро и ловко код набирает, как он в коде ныряет во всякие хидеры... на такое дно опускается по несколько вложений, и мгновенно выныривает. Причем мышку не трогает. я стал это искать в эклипсе - и нашел. Я это искал в иаре - не нашел. В нотепаде++ не нашел. Записал небольшой видео, может не на столько понятно, но думаю суть можно понять.
1 час назад, artemkad сказал:В чем удобство
вы пишете код. руки на клавиатуре... нужно две строки поменять местами. ваши действия?
3 часа назад, Arlleex сказал:Я активно пользуюсь мышкой.
я тоже ей активно пользуюсь. Но я и клавиатурой и мышкой. Совместно гораздо удобнее. И ещё, когда пишешь код, то обе руки на клавиатуре. Постоянно хватать мышь, двигать её, что-то выделять, вызывать контектсное меню и там проваливаться в подменю... это сильно утомляет... Правая рука: взял мышь, навел, отпустил мышь, набрал на клавиатуре слово, опять взял мышь, навел, кликнул, набрал текст.... и если пишешь текст и постоянно дёргаться к мыши - это не удобно. Понятно, что если ты с графикой работаешь, в альтиуме или в фотошопе, в sketchup или солиде - там мышь в 9:00 взял и в 17:00 отпустил. Но для текстового редактора очень удобно с гор. клавишами.
Посмотрите, я в 3:00 удалил лишние строки не клавишей delete (её ещё найти надо, на всех клавах она в разных местах), а ctrl+d. В этих пустых строках могло было быть по 80 пробелов в каждой. клавишей delete замучаешься удалять. Так же одним нажатием удаляется вся строка с текстом (где-то есть в видео).
курсор мыши неподвижен, только в 4:40 я взял мышь. я забыл как называется дефайн и с помощью мыши+ctrl дважды провалился в определение и посмотрел (даже не выделял слово SPI_BAUDRATE_DIV_16 и не копировал в буфер нужное), с помощью alt+стрелка вернулся обратно и добавил нужный дефайн без всякого копипаста. Обычно прогеры мышкой выделяют нужный SPI_BAUDRATE_DIV_16, потом вставляют.
-
4 минуты назад, Arlleex сказал:
Visual Studio Code и банальный Notepad++. Здесь тоже все на вкус и цвет,
Не ради спора... а так... ради "делюсь опытом/перенимаю опыт". В эклипсе есть офигенная фича "удалить строку/выделенные строки", "переместить строку/выделенные строки", "копировать строку/выделенные строки" (по дефолту Ctrl+D, Alt+стрелка, Ctrl+Alt+стрелка).
фичи очень удобные. Подобные фичи появились в QtCreator, но там нет "удалить строку", там вместо этого есть "вырезать строку в буфер" (это подбешивает). В нотепад++ этого нет. в VS и кеил не знаю. Есть ли такое в иаре? Может есть, а я не знаю?
-
1
-
-
17 минут назад, RusikOk сказал:
1) заставить cubeIDE компилить в 4 потока?
параллельная компиляция в эклипсе - из покон веков. ещё до кубИдэ было. Конечно умиляет, когда коллега на очередную версию иара фапает как ребёнок над новой игрушкой, со словами "Смотри как круто в иаре, не то что твой эклипс...." и показывает новую фичу иара, типа параллельной компиляции или навигации в редакторе. Я про себя думаю - так в эклипсе это было ещё в доисторическую эпоху.
-
1
-
-
Опубликовано · Изменено пользователем razrab83 · Пожаловаться
если нужно смотреть только за несколькими элементами массива, то можно добавить не весь массив masterRxBuf, а несколько нужных элементов, например masterRxBuf[0], masterRxBuf[1], masterRxBuf[13], masterRxBuf[1023]
-
1
-
-
В 16.03.2022 в 20:32, uni сказал:
Там можно и так настроить "тёмную" тему, ручками.
Раскрашивать руками ИАР - это дичь. Как следствие результат выглядит довольно убого. Тем более раскрашивать не всю IDE, а только редактор.
В 24.06.2022 в 09:38, uni сказал:Я несколько дней тестирую "тёмный режим" в IAR ARM 9.30.1
Поработал в этой теме.... вырвиглаз. ИМХО. Вернулся к классике.
Тема недоработанная. Менюшки, диалоги... светлые. Даже на вашем скрине белые виджеты.
STM32CubeIDE
в STM
Опубликовано · Пожаловаться
я тоже переназначал.... но часто приходилось менять ПК..... то в винде то в линуксе.... то в CCS TI, то в кокосе, то в NiosIde (всё это эклипс).... В эклипсе много того, чего нет в иаре. И например в иаре Ctrl+Shift+F - поиск по проекту, а в эклипсе это форматирование текста. Назначишь Ctrl+Shift+F - поиск по проекту. А куда назначит "форматирование"? Назначишь на другую комбинацию, а там ещё функция.... потом через год сиди вспоминай куда назначил то или иное. И в гугле найдешь Ctrl+Tab - переключение между *.cpp и *.h, но у меня уже клавиши переназначены и там что-то другое.... Вы могли переназначит "Ctrl+R", и совет с "Ctrl+R" уже бы не помог.
ps окончательно отдался в тёплоламповый эклипс после обнаружения форматирования Ctrl+Shift+F. Открываешь любой исходник, или пишешь свой, без форматирования - жмёшь Ctrl+Shift+F, и весь исходный файл форматируется со всеми отступами, со всем пробелами и табами, со всеми скобочками так - как мне удобно.