реклама на сайте
подробности

 
 
> Отладка устройства на TUSB3200, Научите темного
nikkov
сообщение May 14 2009, 10:05
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 217
Регистрация: 1-02-05
Пользователь №: 2 332



Просвятите пожалуйста, чем можно отлаживать в железе устройство на контроллере TUSB3200. Я работал только с АРМ-ами и АВР-ами, а вот с 51-м семейством не довелось. Производитель упоминает:

8051/8052 Emulators
http://www.nohau.com EMUL51-PC/E128–16 and POD–C32–HF–42
http://www.signum.com USP–51E and POD51FX
http://www.phyton.com PICE–51 and P051–RX/FA and A051–D40

но это все слишком дорого, нет ли чего нибудь проще?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
Палыч
сообщение May 14 2009, 12:50
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(nikkov @ May 14 2009, 13:05) *
но это все слишком дорого, нет ли чего нибудь проще?
Если это - слишком дорого, то путь, наверное, один - сделать самому. Я сам когда-то сделал подобное для МК51 фирмы Atmel/Temic. Чтобы много не заниматься разработкой ПО той части, что на персоналке - можно воспользоваться возможностями Keil uVision - Advanced Generic Debugger Interface (AGDI). По AGDI см. Application Note 145 от Keil.
Go to the top of the page
 
+Quote Post
nikkov
сообщение May 15 2009, 05:49
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 217
Регистрация: 1-02-05
Пользователь №: 2 332



Цитата(Палыч @ May 14 2009, 19:50) *
Если это - слишком дорого, то путь, наверное, один - сделать самому. Я сам когда-то сделал подобное для МК51 фирмы Atmel/Temic. Чтобы много не заниматься разработкой ПО той части, что на персоналке - можно воспользоваться возможностями Keil uVision - Advanced Generic Debugger Interface (AGDI). По AGDI см. Application Note 145 от Keil.

Т.к. я совсем не знаком с 51-м семейством, то мне не очень понятно, как зависит эмулятор от конкретного проца, кроме числа ног, конечно. Ну там объемы памяти, тоже более-менее ясно. А вот с периферией вообще темный лес, как ее должен поддерживать отладчик?!?
Go to the top of the page
 
+Quote Post
Палыч
сообщение May 15 2009, 07:33
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(nikkov @ May 15 2009, 08:49) *
Т.к. я совсем не знаком с 51-м семейством, то мне не очень понятно, как зависит эмулятор от конкретного проца...
Как Вы правильно заметили есть целое семейство МК51. Есть классический МК51. Есть другие МК этого семейства, отличающиеся от "классики" объёмом памяти, и наличием дополнительных фенечек "на борту": таймеры, "внешняя" память, SPI, АЦП, ЦАП и др.

Вам нужно отлаживать МК в устройстве. Для этого Вам в определённые моменты времени нужно многое что знать о "внутренностях" МК: какая команда выполняется, значение (содержимое) аккумулятора, слова состояния, регистров общего назначения, регистров специальных функций и др. При необходимости - что-то потребуется изменить (поменять значение)... Всё это можно сделать программными средствами - программные средства потребуются как для МК, так и для персоналки, откуда Вы будете следить за Вашим МК. Обычно с персоналкой проблем - нет. А, вот, с МК - проблемы: ресурсы МК ограничены, а кроме Вашей программы в МК должен работать ещё и отладчик. Как вариант: можно для целей отладки использовать не тот МК, который будет работать в устройстве, а более "старшей" модели, которая включает в себя всё, что есть в Вашем МК плюс ещё дополнительные ресурсы для работы отладчика. Если это Вам подходит - так и сделайте. Но, отличие отладчика от эмулятора в том, что при работе отладчика всё равно будут "отъедаться" ресурсы МК, чего нет при использовании эмулятора (например, при работе отладчика будут продолжать работать таймеры и между тиками таймеров успеет выполниться меньше команд отлаживаемой программы; работа отладчика потребует дополнительного места в стеке и памяти в ОЗУ). Для частичного решения этой проблемы можно до предедела минимизировать отладчик в МК, но чтобы не потерялся его функционал соединить МК с другим МК в который перенести часть отладчика. Кроме этого на второй МК можно возложить те функции, которых нет у отладчика по сравнению с эмулятором (например, автоматическое добавление кода отладчика к Вашей программе, сброс МК, изменение памяти программ и др.). Поскольку в плате не предусмотрено место для второго МК, то можно изготовить устройство (маленькую плату) содержашее оба этих МК и вставляемое в разъём для установки МК на плате. Собственно такое устройство я когда-то и делал...
Go to the top of the page
 
+Quote Post
nikkov
сообщение May 15 2009, 08:11
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 217
Регистрация: 1-02-05
Пользователь №: 2 332



Цитата(Палыч @ May 15 2009, 14:33) *
Как Вы правильно заметили есть целое семейство МК51. Есть классический МК51. Есть другие МК этого семейства, отличающиеся от "классики" объёмом памяти, и наличием дополнительных фенечек "на борту": таймеры, "внешняя" память, SPI, АЦП, ЦАП и др.

Вам нужно отлаживать МК в устройстве. Для этого Вам в определённые моменты времени нужно многое что знать о "внутренностях" МК: какая команда выполняется, значение (содержимое) аккумулятора, слова состояния, регистров общего назначения, регистров специальных функций и др. При необходимости - что-то потребуется изменить (поменять значение)... Всё это можно сделать программными средствами - программные средства потребуются как для МК, так и для персоналки, откуда Вы будете следить за Вашим МК. Обычно с персоналкой проблем - нет. А, вот, с МК - проблемы: ресурсы МК ограничены, а кроме Вашей программы в МК должен работать ещё и отладчик. Как вариант: можно для целей отладки использовать не тот МК, который будет работать в устройстве, а более "старшей" модели, которая включает в себя всё, что есть в Вашем МК плюс ещё дополнительные ресурсы для работы отладчика. Если это Вам подходит - так и сделайте. Но, отличие отладчика от эмулятора в том, что при работе отладчика всё равно будут "отъедаться" ресурсы МК, чего нет при использовании эмулятора (например, при работе отладчика будут продолжать работать таймеры и между тиками таймеров успеет выполниться меньше команд отлаживаемой программы; работа отладчика потребует дополнительного места в стеке и памяти в ОЗУ). Для частичного решения этой проблемы можно до предедела минимизировать отладчик в МК, но чтобы не потерялся его функционал соединить МК с другим МК в который перенести часть отладчика. Кроме этого на второй МК можно возложить те функции, которых нет у отладчика по сравнению с эмулятором (например, автоматическое добавление кода отладчика к Вашей программе, сброс МК, изменение памяти программ и др.). Поскольку в плате не предусмотрено место для второго МК, то можно изготовить устройство (маленькую плату) содержашее оба этих МК и вставляемое в разъём для установки МК на плате. Собственно такое устройство я когда-то и делал...


Все понятно, получается без эмулятора специально заточенного под конкретно этот контроллер полноценной отладки не получить. Остается только использовать вывод отладочной инфы через последовательный порт sad.gif
Go to the top of the page
 
+Quote Post
Палыч
сообщение May 15 2009, 08:33
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(nikkov @ May 15 2009, 11:11) *
получается без эмулятора специально заточенного под конкретно этот контроллер полноценной отладки не получить.
Эмулятор даёт Вам полнейший контроль над МК во время отладки в железе, отлаживаться можно и без него. Какие средства для отладки применять зависит от того - какую информацию Вы хотите получить о состоянии МК.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 13:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01413 секунд с 7
ELECTRONIX ©2004-2016