Форум программистов, компьютерный форум, киберфорум
Электроника и радиотехника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.53/393: Рейтинг темы: голосов - 393, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838

Простая, но неразрешимая (?) проблема сишной отладки на мк

19.06.2015, 18:04. Показов 73264. Ответов 160
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Допустим, я отлаживаю сишную программу на мк и, много раз нажав на разные кнопки на девайсе и на пк, попадаю-таки на сбойную функцию.
Казалось бы, делов то - исправить и заменить сбойную ф-цию, ну или хотя бы поставить временную заплатку, и продолжить отладку.
Но продолжить невозможно - только начинать всё заново - всё перекомпилировать, всё перезалить и снова нажимать на все кнопки.
И на следующей сбойной ф-ции опять всё заново, и так тупо по кругу )
Или есть варианты?

update
Зачеркнул - двусмысленная была фраза ) Вопрос не в том, как надо программировать, чтобы меньше отлаживаться, а всего лишь в том, как изменить программу, не выходя из сеанса отладки.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.06.2015, 18:04
Ответы с готовыми решениями:

LPC21xx FIO0SET FIOCLR проблема отладки. Регистры FIO0SET FIOCLR не реагируют на запись 1 в режиме отладки
LPC21xx FIO0SET FIOCLR регистры проблема отладки. Регистры FIO0SET FIOCLR не реагируют на запись 1 в режиме отладки. Если...

HELP!!! Неразрешимая ошибка!
Это не ошибка в исходном коде! Время от времени некоторые формы (до этого работавшие нормально) начинают сходить с ума, выдавая...

Keil 4.73 проблема отладки
иногда в отладке (или симуляции) не заходит в void main . закидывает в sistem_ini зависает (ждет установки частоты потом обрыв связи)...

160
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
23.06.2015, 00:27
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от oomomstir
В результате все ранее использовавшиеся функции останутся на своих местах, и my_fun_hacked будет использовать именно их.
...
6. Получили новый бинарник, который по большей части совпадает со старым, отличаясь одним указателем и одним новым куском кода в конце. Выделяем изменения, патчим флеш.
Спасибо за отличную идею! Да и вообще за поддержку темы )
Засранцев топика прощаю ))
Однако, как справедливо заметил Ymk
вручную это сделать, наверное, можно, а как это засунуть в ide?
поэтому я немного пооптимизировал сейчас, чтобы все изменения сводились только к изменению текста программы, вот работающий тестик
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
void SystemInit() {};
 
int f1 (int x) {return f1v1(x);}
int f1v1 (int x) {return x+123;}
 
int f2 (int x) {return f2v1(x);}
int f2v1 (int x) {return f1(x)+456;}
/*
int f2v2 (int x) __attribute__((section(".update")));
int f2v2 (int x) {return f1(x)+789;}
*/
 
int main() {f1(1); f2(2);}
Обращение к ф-циям через врапперы: f1,f2 - врапперы, f1v1 - версия 1 ф-ции f1, f2v1,f2v2 - версии 1 и 2 ф-ции f2.
Если раскомментировать текст ф-ции f2v2 и заменить во враппере f2 вызов f2v1 на f2v2, то новая версия добавится в конец бинарника в полном соответствии с идеей.
Флэш можно не патчить, а просто прошить всё заново - и всё укладывается в ide
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,864
23.06.2015, 00:53
Если перешивать целиком и патчить на уровне сырцов - то, пожалуй, можно обойтись без враппера, а просто переименовать старую функцию, а новой дать её имя. (и, думаю, собирать придётся без особых оптимизаций и уж точно без strip dead code)

Ну и если внесли какие-то изменения помимо добавления функции в новой секции и замены функций - опаньки.

Да, и при перепрошивке надо позаботиться о сохранении ROM и регистров....
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
23.06.2015, 08:22
Цитата Сообщение от Ymk
...
Давайте вспомним истоки нашего конфликта.

Приходит новичок спрашивает, как написать программу, чтобы у него работало: опрос кнопок, дисплей ну и всякая прочая периферия. Вы пишете, только RTOS, диспетчеры. Я говорю, что во многих случаях можно спокойно обойтись без RTOS и диспетчеров. Упомянул автоматное программирование. В ответ начался срач.
Так? Да.

Приходит новичок задает вопрос, как мне сделать то-то и то-то по электронике, электрике. Приходят люди, которые ни хрена в этом не понимают, или имеют скудные познания в этих областях и пишут всякий бред. Когда этим персонажам делают замечания, начинаются истерики, какие они крутые спецы. Выясняется, что они спецы в программировании. В ответ на это я говорил и буду говорить. Если ты лезешь в незнакомую для тебя область, возьмись за фазы. Чтобы ты прочувствовал на собственной шкуре, как опасно совать свои шаловливые ручки куда не следует.
Так? Да.

За поддержкой штанов, говоришь. Ну извини. Набежала когорта может и спецов в своей области, но ламеры в другой. И кричат, какие они крутые спецы. Вы в своей области спецы! Повторяю это снова!

И не хрен мне давить на программирование! Повторяю еще раз. Есть целый слой специалистов, которые работают только в определенной области. МК, ПЛК. И если они не пишут программы для ПК, то это нисколько не значит, что этот человек не компетентен.

Не компетентен как раз тот персонаж, который влез в обсуждение незнакомой темы и в ответ на замечания начал истерику, какой он крутой спец.

Что в вашем случае и произошло.

Мне пох.. на этот лог. И пох... как вы это расцените. Если вы из всего нашего конфликта не сделали выводов, дальнейшее обсуждение попросту бессмысленно.

Если мне на профильном форуме сделали замечание, я делаю из этого выводы. Вы никаких выводов не сделали. И продолжаете конфликт. Вместо того, чтобы придти к конструктивному диалогу.

Что это как не троллизм?
0
0 / 0 / 0
Регистрация: 17.03.2010
Сообщений: 901
23.06.2015, 09:40
Цитата Сообщение от dymyurk1978
...
Вам уже неоднократно рекомендовали посмотреться в зеркало...
Уж больно описываемые вами тролли похожи на Вас...
зы. обосрались (с "криком о помощи" ) - обтекайте. Вас теперь как профессионала никто не воспринимает - ни тут, ни там (вас же там напрямую спросили - "это с когда вы вдруг стали эмбеддером?")
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
23.06.2015, 10:17
1 - Профессионал от слова профессия.
2 - Тот кто выложил лог, во-первых сделал это как самый последний трус, спрятавшись за ником однодневкой. И не просчитал последствия.
3 - Факт, что программист ни хрена не сиыслящий ни в электрике, ни в электронике так и остался фактом. А теперь главное: в дальнейшем время все на свои места расставит. А я ведь не зря писал,не просчитаны последствия. И в дальнейшем жидко и смачно обосрется как раз тот,кто сейчас надувает щеки, вроде вас персонажей.
Так что вперед,товарищи оппоненты.
А я запасаюсь попкорном.
0
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
23.06.2015, 10:34
Цитата Сообщение от oomomstir
Если перешивать целиком и патчить на уровне сырцов - то, пожалуй, можно обойтись без враппера, а просто переименовать старую функцию, а новой дать её имя
Да, точно, так ещё проще исправлять, но это ж тогда и весь проект не только перекомпилировать, но и перетранслировать - gdb сойдёт с ума ) Хотя, он и с врапперами сойдёт, с gdb ещё отдельная сказка впереди )
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
23.06.2015, 10:36
dymyurk1978-Дартаньянc ??? :))))))

Цитата Сообщение от dymyurk1978
3 - Факт, что программист ни хрена не сиыслящий ни в электрике, ни в электронике так и остался фактом.
Электрик в эмбедде это еще хлеще.
Таких "кулибиных" предостаточно - палятся на AVR, asm, забулдыгер . А теперь еще и на драконе... :))))))
0
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
23.06.2015, 10:54
Цитата Сообщение от Ymk
а можно, чтобы не мутить с кастрацией исходника, сделать чтобы каждая функция компилилась в свою секцию, файл просто пересобрать, потом с objcopy скопировать в новый объектник только одну нужную секцию и прилинковать ее к старой версии (+патч старой функции)?
Можно не править весь проект, а держать update-абельные ) ф-ции в отдельных файлах и править только один файл
0
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
23.06.2015, 11:44
Цитата Сообщение от dymyurk1978
Если мне на профильном форуме сделали замечание, я делаю из этого выводы.
А что это за профильные форумы, по какому профилю? Я без подкола спрашиваю - просто интересно
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
23.06.2015, 12:13
Цитата Сообщение от vt340
А что это за профильные форумы, по какому профилю?
Сахара и элх . Причем эти "профильные" форумы в последнее время заполонили хомячки...
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
23.06.2015, 14:23
Dosikus, ты берега совсем попутал. Троллина ты вшивая, ты большую часть тем на этом форуме засрал. Тебе говорят, пиши по делу, и никогда ты по делу не писал, лишь бы высеры свои везде накласть. То чем я занимаюсь, я могу фактами подтвердить. Чем ты занимаешьмя? И факты в студию!
Пиздец, действительно участники форума побоятся в дальнейшем вопросы задавать, потому что вылезут программишки,сующие свои руки куда не следует и досикусы всякие, которым просто пох… , лишь в теме нагадить.
0
0 / 0 / 0
Регистрация: 17.03.2010
Сообщений: 901
23.06.2015, 14:27
Цитата Сообщение от dymyurk1978
То чем я занимаюсь, я могу фактами подтвердить.
Ну да, ты уже подтверждал фактами, что ты окуенно много знаешь про тестирование программ... :-)
Правда "факты" оказались ответами с другого форума. :-)
так что нет тебе доверия...
Хотя весьма ценен отзыв о тебе с того форума...
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
23.06.2015, 14:38
Цитата Сообщение от dymyurk1978
...
нет не так
Цитата Сообщение от dymyurk1978
...
нет не так

нормально я цитирую? :) лишь бы понятно было.
Цитата Сообщение от dymyurk1978
За поддержкой штанов, говоришь. Ну извини. Набежала когорта может и спецов в своей области, но ламеры в другой. И кричат, какие они крутые спецы. Вы в своей области спецы! Повторяю это снова!
а ты в своей, предположим. но вопрос был про что? напоминаю:
Цитата Сообщение от dymyurk1978
Приходит новичок спрашивает, как написать программу
ему программисты и говорят - как (причем, в данном случае не было никаких ртосов вроде бы). т.е. по программе ему советуют профессионалы. и тут приходишь ты - специались хз в чем и начинаешь гнобить. тиктотакой? вот и получи по сопатке, а то возомнил себя хер знает кем.

Цитата Сообщение от dymyurk1978
Не компетентен как раз тот персонаж, который влез в обсуждение незнакомой темы и в ответ на замечания начал истерику, какой он крутой спец.
т.е. ты?:) мы так и подумали:)
dymyurk1978 писал(а):
Мне пох.. на этот лог. И пох... как вы это расцените. Если вы из всего нашего конфликта не сделали выводов, дальнейшее обсуждение попросту бессмысленно.
как это не сделали? очень даже сделали:)))) теперь всё как по полочкам:)
dymyurk1978 писал(а):
Если мне на профильном форуме сделали замечание, я делаю из этого выводы. Вы никаких выводов не сделали. И продолжаете конфликт. Вместо того, чтобы придти к конструктивному диалогу.
проблема у тебя в голове. судя по всему, ты тут сидишь и не считаешь этот форум за профильный. следовательно, кто бы что тут не сказал - веры этому нет априори, тут все ламеры, поэтому ты во внимание не принимаешь ничего и выводов не делаешь. о каком таком конструктивном диалоге может идти речь, а?
dymyurk1978 писал(а):
1 - Профессионал от слова профессия.
т.е. чтобы стать профессионалом, надо просто устроиться работать по профессии? кто ты если не тролль?:)))
dymyurk1978 писал(а):
И не просчитал последствия.
о каких последствиях ты нам втираешь уже 10й раз?:))) всё что произошло - уже произошло, это конец:)
dymyurk1978 писал(а):
Пиздец, действительно участники форума побоятся в дальнейшем вопросы задавать, потому что вылезут программишки
слушай, может тебе пора того, за фазу?
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
23.06.2015, 15:28
Цитата Сообщение от dymyurk1978
То чем я занимаюсь, я могу фактами подтвердить.
Твой диагноз известен-
http://lurkmore.to/%D0%A7%D1%81%D0%B2
0
0 / 0 / 0
Регистрация: 19.02.2012
Сообщений: 304
23.06.2015, 15:34
Что ж это профессионал сидит на таком некомпетентном форуме? И хватит уже доказывать, что выложенный лог вас не волнует. Это отрицание очевидного :)
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
23.06.2015, 15:39
По полочкам.

1 - Я никогда не лез в темы, в которых не разбираюсь. У меня своя специализация, у вас своя. Какая бы она ни была.
Ситуация с RTOS, диспетчерами и КА. Спор начался тогда. Лень конкретную ссылку искать. Но найти можно. Тогда обсудили и забыли. Нет, же нужно было иногда опять поднять срач.
2 - Кто-то из вас в одной теме написал полную чушь. Я сделал замечание и привел доводы. Не понял, ладно, получай фазу. В ответ истерика. Как же, задели его величество, крутого программиста.
3 - Этот долбаный лог. Конференция эмбеддеров. Какая-то трусливая сволочь слила лог, не зная всей ситуации. Я эту конференцию давно знаю, тогда я порой задавал там вопросы по интересующим меня темам. И там своя ситуация. И лог слили, не зная всей подоплеки. То есть вы выдернули одну фразу, не ЗНАЯ ситуации. И исходите из этого.

Подводим итог, я вас не трогал, не кичился своей "крутостью". В ответ на обоснованные доводы начинаете срач. Смеете лезть в те темы, в которых не разбираетесь. В ответ на замечания начинаете срач. Или судите только со своей крайне узкой специализации.
Теперь смотрим, что защищаете вы - дилетантство и, ну надо же, задетую гордыню. Ваш профессионализм в ВАШЕЙ области никто не трогал.
Что защищаю я - чтобы дилетанты не лезли в те темы, в которых ни хрена не разбираются. Еще раз, профессионализм в вашей области никто не затрагивает. Но дилетантство в других областях видно невооруженным взглядом.
Если ты не разбираешься, то в этом нет ничего постыдного. Значит читай, что пишут другие участники и мотай на ус.
Мне не стремно признать, что есть области, в которых я не разбираюсь. Так я не лезу в эти темы. А что делаете вы? Нет чтобы мотать на ус, вы засрали все последние темы этими срачами.
В чем дело господа? Вам заняться нечем? Так восполняйте пробелы, учитесь и становитесь действительно специалистами своего дела. А что делаете вы? В ответ на замечание по делу устроили непонятно что.
Так как будем дальше сраться? Или может быть сделаем этот форум форумом специалистов, в котором участвуют люди знающие свое дело. И дают советы в тех областях, в которых действительно разбираются?
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
23.06.2015, 15:45
Цитата Сообщение от dymyurk1978
не кичился своей "крутостью".
Надо же, а фраза ниже полностью сие опровергает .

Цитата Сообщение от dymyurk1978
чтобы дилетанты не лезли в те темы, в которых ни хрена не разбираются.
Цитата Сообщение от dymyurk1978
Мне не стремно признать, что есть области, в которых я не разбираюсь.
Будь честным и признайся что ни в чем...
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
23.06.2015, 15:52
Цитата Сообщение от dosykus_2
...
Нет, с этого момента обсуждения только на фактах. Вы не сказали вашу специализацию, не привели примеров вашей работы. Все ваши действия на этом форуме - засерание многих тем.
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
23.06.2015, 15:59
dymyurk1978, Гы ... твои же слова, тебе же- "ты берега совсем попутал".
Я тебе что-то должен? Зато всем очевидно что, это тебе надо отмыться от своего-же *овна . :)))))
Вот давай восстанавливай свое ЧСВ...
Кстати , любезный, укажи мне - где я заявлял что я профи , в отличии от тебя?????????
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
23.06.2015, 16:09
Цитата Сообщение от dymyurk1978
Ситуация с RTOS, диспетчерами и КА. Спор начался тогда. Лень конкретную ссылку искать. Но найти можно. Тогда обсудили и забыли.
как я помню, этих споров было больше одного, и везде торчало чсв.
Цитата Сообщение от dymyurk1978
То есть вы выдернули одну фразу, не ЗНАЯ ситуации.
очень интересно, какой такой контекст может перечеркнуть факт "ребята помогите, меня запинывают, а я не шарю"? собственно, кроме этого факта больше ничего и не важно:)
Цитата Сообщение от dymyurk1978
Подводим итог, я вас не трогал, не кичился своей "крутостью".
ты думаешь, что другие имеют право возбухнуть только когда ты конкретно им тыкнул крутостью? это не так. ты первый начал резкие движения и разговоры про фазу (проявление чсв).
Цитата Сообщение от dymyurk1978
Что защищаю я - чтобы дилетанты не лезли в те темы, в которых ни хрена не разбираются.
ты родился профи что ли? вопросов никогда никому не задавал? все на чем-то учатся. ты прекрасно понимаешь, что тут новички, но выходишь такой и "а ну быстро взялись за фазу! вы недостойны этим заниматься!". так ты пинд*й на электроникс и живи там, че ты профи тут забыл среди ламеров?
Цитата Сообщение от dymyurk1978
Так восполняйте пробелы, учитесь и становитесь действительно специалистами своего дела. А что делаете вы? В ответ на замечание по делу устроили непонятно что.
замечание по делу: возьмись за фазу, дружок! :)))

и давай еще раз:
dymyurk1978 писал(а):
Приходит новичок спрашивает, как написать программу
ты же не программист, фигли ты вообще лезешь в то, в чем особо не шаришь? дилетант? не лезь!
dymyurk1978 писал(а):
Вы не сказали вашу специализацию, не привели примеров вашей работы.
ну вот он тоже непростой чел, тоже перегибает иногда, но он свой профессионализм узкого профиля доказал здесь ни раз. а от тебя больше прет какой-то негатив из обсираний.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.06.2015, 16:09

Проблема отладки консольного решения
В общем проблема такая, пришёл я после армии, в универе дали задание покодить на C#. Столкнулся с проблемой при компиляции любого решения в...

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

Наименьшее расстояние, проблема отладки
Наименьшее расстояние Даны координаты вершин треугольника, координаты точки D, лежащая внутри треугольника, требуется найти и вывести...

Atmel Studio 6. Проблема запуска в режиме отладки
привет. я начинающий в программировании МК и у меня появилась такая проблема: в Atmel Studio 6 когда я запускаю программу в режиме debug,...

Исполняемый файл для отладки, указанный в профиле отладки, не существует
После того как удалил папку с частью ненужных исходных кодов, вылезла эта ошибка. Восстановление файлов ситуации уже не меняет. Что делать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru