Jump to content
    

Пропал курсор отладки на листе программы

Здравствуйте!

Ранее в режиме отладки, в листе программы был курсор показывающий текущую строку.

Теперь куда-то запропастился, остался лишь в дизассемблере (На скрине, завершение загрузки (Ctrl+D)).

Подскажите пожалуйста, как вернуть пропажу?

 

2024-11-10_14-54-23.thumb.png.a584c9c709dd7b00075d2025dad9c979.png

Share this post


Link to post
Share on other sites

Выполнение остановлено на инструкции, которая не соответствует началу какой-либо строки исходника в Си.

Share this post


Link to post
Share on other sites

50 минут назад, Александр77 сказал:

Подскажите пожалуйста, как вернуть пропажу?

Чтобы появились связи исходник+дизасм, нужно полностью перекомпилить проект и перезагрузить.

А также проверить наличие галки "Include debug information in output".

 

PS: Странный какой-то код (последовательность ассемблерных команд) у ТС в начале main: 4шт. 32-битных команд подряд?... весьма странно....  :unknw:

Интересно - а куда направлен этот выход:

image.png.808d520aacc5e5e096ceb1b523eae31f.png

:wink:

Share this post


Link to post
Share on other sites

1 час назад, AndyBig сказал:

Выполнение остановлено на инструкции, которая не соответствует началу какой-либо строки исходника в Си.

Какое выполнение - оно не началось еще ведь, т.к. картинка сразу после загрузки в МК.

 

1 час назад, jcxz сказал:

Чтобы появились связи исходник+дизасм, нужно полностью перекомпилить проект и перезагрузить.

Вроде не раз перекомпилировал и перезагружал (в МК). Результат тот же. Наверное не так компилирую (Rebuild All, Compile, Make) чего-то видимо не хватило...

1 час назад, jcxz сказал:

А также проверить наличие галки "Include debug information in output".

Установлена в линковщике

1 час назад, jcxz сказал:

Интересно - а куда направлен этот выход:

Никуда. Этот кусок честно скопипастил, как элемент ожидания установки признака включения тактового узла.

 

Еще раз попробовал предварительно очистить с последующим ребилдом - заработало.

Спасибо за подсказки.

Share this post


Link to post
Share on other sites

7 минут назад, Александр77 сказал:

Какое выполнение - оно не началось еще ведь, т.к. картинка сразу после загрузки в МК.

Оно именно остановлено. На инструкции, которую компилятор считает первой в main(). А началось выполнение естественно - с начала кода - с reset-вектора, прописанного в таблице прерывания.

7 минут назад, Александр77 сказал:

Вроде не раз перекомпилировал и перезагружал (в МК). Результат тот же.

Судя по вашим картинкам, компилятор не видит связи между исходниками и результирующим кодом. И поэтому не может их сопоставить. Обычно связь восстанавливается после полной пересборки.

Чего уж вы там навертели с файлами/путями или ещё чем-то - вам виднее.  :unknw:

Может какие-то пути кириллицей написали. Может файлы в проект включили с полными путями (вместо относительных), а затем переместили проект. Или ещё чего наделали.

9 минут назад, Александр77 сказал:

Никуда. Этот кусок честно скопипастил, как элемент ожидания установки признака включения тактового узла.

А если таймаут случится - куда будет выход? А если таймаута в принципе не будет - зачем этот код вообще?

Share this post


Link to post
Share on other sites

47 minutes ago, Александр77 said:

Еще раз попробовал предварительно очистить с последующим ребилдом - заработало.

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

Share this post


Link to post
Share on other sites

2 часа назад, AndyBig сказал:

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

Оптимизация действительно была High,  вывод отладочной  установлен и не менялся.

3 часа назад, jcxz сказал:

Чего уж вы там навертели с файлами/путями или ещё чем-то - вам виднее.  :unknw:

Может какие-то пути кириллицей написали. Может файлы в проект включили с полными путями (вместо относительных), а затем переместили проект. Или ещё чего наделали.

Путей кириллицей стараюсь избегать лет уже под 20.

 

3 часа назад, jcxz сказал:

А если таймаут случится - куда будет выход? А если таймаута в принципе не будет - зачем этот код вообще?

Наверное Вы правы и этот кусок лишний.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...