0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
1 | |
Простая, но неразрешимая (?) проблема сишной отладки на мк19.06.2015, 18:04. Показов 71835. Ответов 160
Метки нет (Все метки)
Допустим, я отлаживаю сишную программу на мк и, много раз нажав на разные кнопки на девайсе и на пк, попадаю-таки на сбойную функцию.
Казалось бы, делов то - исправить и заменить сбойную ф-цию, ну или хотя бы поставить временную заплатку, и продолжить отладку. Но продолжить невозможно - только начинать всё заново - всё перекомпилировать, всё перезалить и снова нажимать на все кнопки. И на следующей сбойной ф-ции опять всё заново, и так тупо по кругу ) Или есть варианты? update Зачеркнул - двусмысленная была фраза ) Вопрос не в том, как надо программировать, чтобы меньше отлаживаться, а всего лишь в том, как изменить программу, не выходя из сеанса отладки.
0
|
19.06.2015, 18:04 | |
Ответы с готовыми решениями:
160
LPC21xx FIO0SET FIOCLR проблема отладки. Регистры FIO0SET FIOCLR не реагируют на запись 1 в режиме отладки HELP!!! Неразрешимая ошибка! Keil 4.73 проблема отладки Проблема отладки консольного решения Проблема отладки локальных переменных |
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
26.06.2015, 18:36 | 141 |
Сообщение от flomdger
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
26.06.2015, 19:14 | 142 |
По библиотекам могу сказать одно, если работа с библиотекой херачит весь проект, то надо либо пересматривать работу с этой библиотекой, либо переписывать, либо выкидывать её.
0
|
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
26.06.2015, 20:45 | 143 |
Сообщение от flomdger
0
|
0 / 0 / 0
Регистрация: 23.06.2014
Сообщений: 831
|
|
26.06.2015, 21:08 | 144 |
Сообщение от Mykysoft
Т.е. ты хочешь сказать, что обладание группой допуска никак не сказывается на отношении обладателя (как в период аттестованности, так и в дальнейшем) на отношении к электричеству в целом. Ну Ок, я тебя понял. То-то ты так на этот вопрос возбудился, как я посмотрю :)
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
26.06.2015, 21:22 | 145 |
Сообщение от vt340
0
|
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
26.06.2015, 21:26 | 146 |
Сообщение от trymktor
0
|
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
|
|
26.06.2015, 21:27 | 147 |
Сообщение от vt340
Сообщение от trymktor
0
|
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
26.06.2015, 22:01 | 148 |
dosykus_2, я забыл ответить про библиотеки в rom - да, я знаю эту техасскую нигию ) но в стелларисваре (или теперь наверно тиваваре?) не было методов как их делать, были только - как их использовать, а использовать надо было, кажется, тупо по абсолютным адресам точек входа, въявную забитых в хидерах стандартной библиотеки
0
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
26.06.2015, 22:07 | 149 |
Сообщение от flomdger
Сообщение от flomdger
таким образом, до тех пор, пока где-то используются указатели - вероятность таких "хитрых" ошибок есть.
0
|
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
|
|
26.06.2015, 22:16 | 150 |
Сообщение от vt340
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
26.06.2015, 22:19 | 151 |
На практике говнокод будет всегда, но это не означает что "весь мир гавно". Да и разный он бывает. И из той же практики я прекрасно знаю что "много людей" к телу допускать нельзя, а также нужно следить за качеством софта. Не думаешь ли ты что все эти правила "мержить в основную ветку репозитория должен только ОДИН человек" писали просто так? Уж сколько книжек написано про "хирургические бригады", "рефакторинг" и прочее, нет же, мы считаем себя самыми умными и "а хрен с ним давайте сделаем побыстрее". Вам этот код потом сопровождать вообще-то. Я не знаю как там у вас конечно, но я такой херни стараюсь не допускать среди подчинённых. Другое дело когда приходит человек и говорит "я конечно могу переписать нормально, но это у меня займёт ещё месяц" - вот тогда уже пора чесать репу, но если я знаю что этот кусок кода будет сопровождаться, он войдёт в библиотеку и будет использоваться дальше то хрен я его пропущу в таком виде. Каждый сам кузнец собственного щасья, как говорится.
0
|
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
26.06.2015, 22:20 | 152 |
Сообщение от oomomstir
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
26.06.2015, 22:30 | 153 |
Сообщение от vt340
У армов разве нет всех фишек тех же самых? VisualGDB в своё время для меня сделало прекрасную нигию в Visual Studyo, когда я какой то арм дебажил.
0
|
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
|
|
26.06.2015, 23:03 | 154 |
Сообщение от flomdger
IntTab[0:0] : ARRAY [0..255] OF FarADDRESS; И последующее заталкивание в вектор процедуры обработчика прерывания - IntTab[11] := FarADR(IntProc); И это всё - никаких доп defyme, volatile, ассемблерных stortup-ов, ld-скриптов и т.п. )
0
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
27.06.2015, 06:00 | 155 |
Сообщение от flomdger
Сообщение от flomdger
кроме того, не верите мне - почитайте статьи про проверку разных проектов pvs-studyo, в т.ч. тех проектов, которые тоже проверяются анализаторами кода. все равно там ошибки есть. или взгляните на любой большой массовый продукт, firefox, chrome, whatever... в каждом есть ошибки несмотря на то, что пишут это всё далеко не дураки, но везде есть порча памяти и прочее. вот практика.
Сообщение от flomdger
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
27.06.2015, 07:10 | 156 |
Ну разговор изначально всё же не про указатели был. Баги они будут всегда, никуда от них не деться.
На ПК то есть куча средств чтобы отследить утечки памяти, корректность её освобождения. Тот же PVS. Я вот только одного не пойму, мы сейчас про ПК говорим или про МК? Вы используете динамическую память в контроллере? Если вы используете динамическую память в контроллере, то уж извините, здесь как говорится "сам дурак". Не мне судить нужно ли это в вашей ситуации или нет, но тогда уж конечно, получите и распишитесь. Недаром оно идёт чуть ли не первым пунктом в "списке зла". Так то конечно если рухнет какая нибудь "подсистема памяти", то это крах всего проекта, такое тестами не ловится, поэтому и существуют испытания конечного устройства.
0
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
27.06.2015, 11:45 | 157 |
да вот было, использовал и rtos, и malloc в мк. а зачем в компиляторах для мк реализуют malloc? значит надо. но это всего лишь один из примеров. гораздо проще пример с sprymtf, str* и прочими, там тоже указатели, тоже бывает портят что-то не то. так что пофиг, мк или пк, всё одинаково. везде можно взорвать реактор.
для промавтоматики захотели сделать более надежную систему, придумали языки, в которых нет указателей. и сразу там систему нельзя убить.
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
27.06.2015, 12:31 | 158 |
Сообщение от Ymk
0
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
27.06.2015, 17:48 | 159 |
Сообщение от flomdger
Сообщение от flomdger
0
|
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 97
|
|
27.06.2015, 19:02 | 160 |
Сообщение от Ymk
0
|
27.06.2015, 19:02 | |
27.06.2015, 19:02 | |
Помогаю со студенческими работами здесь
160
Наименьшее расстояние, проблема отладки Atmel Studio 6. Проблема запуска в режиме отладки Исполняемый файл для отладки, указанный в профиле отладки, не существует Подключение сишной dll Проблема с настройкой PyCharm Community Edition 2022 1.3 для отладки модулей QGIS Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |