Перейти к содержанию
    

Просмотр переменных "на лету" в CooCox 1.7.7

Поставил CooCox посмотреть что оно такое. В целом есть положительные моменты и даже очень хорошо для бесплатной среды. Однако хотелось бы видеть переменные по ходу отладки во время выполнения программы а не после ее остановки. Это как-то делается? Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

хотелось бы видеть переменные по ходу отладки во время выполнения программы а не после ее остановки.

Не понял, видеть содержимое прям на лету? или вы о вводе отладочных cсообщений через jtag?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Использовал CooCox 1.7.5 - в нем такой возможности не было. Думаю, что просмотр переменных на лету через jtag, во время выполнения программы, как в keil'e, может влиять на выполнение самой программы. Поэтому это и не реализовано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

думаю что-то типа автоапдейта значения переменных в кейле интересует.

Да, именно это.

Вот GDB отладчик, GDB сервер, C/C++ GDB Hardware Debugging plugin это предоставляет такую возможность?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тоже бьюсь над проблемой отладки Real-time в CooCox с помощью ST-link, на одном форуме ответили что в Keil эта возможность есть, то есть смотреть переменные (но думаю и их редактировать) без останова программы, а вот братья китайцы похоже еще не научились это делать. Есть вариант STMStudio, но еще не пробывал ей пользоваться не ставиться на Win7 x64.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

BvDV, да ну, никогда такого не было, нужно паузу жать чтоб такое работало, как Вы написали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Установил всё же STMStudio, работает через файл *.elf, но не все переменные передаёт бывает, если используем структуру, то обрезанные переменные (т.е. типа uint8 tmp:1;), вбиваем вручную, в *.elf их нету почему-то.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В кейле и стмстудии все работает. Вот в кокосе видно только после останова. Если в кокосе можно прочитать после останова то и на лету это сделать тоже не должно быть проблемой. Житаг он что при останове что на лету всеравно житаг.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Это конечно такая функция... обычно переменные меняются так быстро что следить за ними в риал тайм трудно. Но можно придумать случай, когда хорошо так поглядеть не останавливая время от времени программу. Как поля меняет интерфейс работы с компьютером, например, то есть программа крутиться, вы команды шлете и смотрите все ли поля адекватно меняются, это удобнее чем ставить и снимать брек поинт.

 

Как вы сами понимаете это сделано просто тупым опросом. В кокосе переменные обновляются на каждой остановке (это подходит 99% людей), в кейле они сделали просто таймер внутри кейла, который запрашивает переменные периодически (интервал задается в настройках вроде бы). То есть это не технические ограничения, а просто в кокосе ребята не подумали что так может кому то понадобится и все. И нечего убиваться, нет такой функции вроде как и все...

 

Кстати в иаре был режим непрерывного запуска после брекпоинта. То есть программа доходила до брека, останавливалась, обновляла поля, и запускалась сразу же дальше. Нет ли чего подобного в кокосе, это решило бы данную проблему

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

smk, может и так только я ST-link использую :).

Aaron, а как по другому то софт отлаживать, объясните, если ПИД регулятор крутиться с частотой 50кГц и надо его настраивать в динамике например, а подключить SCI, CAN, USB нету возможности, да или просто не хочу писать софт на ПК для этой цели?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

да о чем вы все?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...