|
Как повысить скорость хода соединения? |
|
|
|
Jan 28 2008, 03:05
|
Группа: Новичок
Сообщений: 4
Регистрация: 27-01-08
Пользователь №: 34 460

|
Добрый день! Проблема такая: Есть симулятор контроллера (Atmel 89S8252), есть 2 виртуальных COM-Port'а и есть MatLab. Проблема в том, что MatLab посылает данные существенно быстрее, чем симулятор их принимает и посылает обратно MatLab'у (кроме этого, он ничего с ними не делает). Не могли бы вы посоветовать, как можно увеличить скорость быстродействия МК?
Сообщение отредактировал R.S.Nemesis - Jan 28 2008, 03:34
|
|
|
|
|
 |
Ответов
(1 - 4)
|
Jan 28 2008, 15:35
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата(R.S.Nemesis @ Jan 28 2008, 06:05)  Добрый день! Проблема такая: Есть симулятор контроллера (Atmel 89S8252), есть 2 виртуальных COM-Port'а и есть MatLab. Проблема в том, что MatLab посылает данные существенно быстрее, чем симулятор их принимает и посылает обратно MatLab'у (кроме этого, он ничего с ними не делает). Не могли бы вы посоветовать, как можно увеличить скорость быстродействия МК? учитывая интерпритаторность матлаба, я не верю, что какой либо контролер может работать медленнее него. Видать проблема интерпритарности симулятора кристалла, можно попробовать 1. другие программные продукты-симуляторы, 2. можно попробовать написать свой софтварный проект - симулирующий контроллер (не весь, а конкретную вашу программу), 3. ввести задержки в матлабе, чтобы сравнять скорость, или 4. попробовать на настоящем кристале. (я бы так сделал, купив подходящий старкит, или 3 вариант). И может быть поможет, но очень с малой вероятностью, задать другие приоритеты выполнения процесса матлабу и симулятору в винде, поставить матлабу низкий приоритет, а симулятору высокий, может это позволит сравнять скорость. Так как матлаб своим интерпретатором может сильно отжирать ресурсы системы, и тормозить процессы симулятора.
|
|
|
|
|
Jan 29 2008, 04:14
|
Группа: Новичок
Сообщений: 4
Регистрация: 27-01-08
Пользователь №: 34 460

|
Цитата(Golikov A. @ Jan 28 2008, 18:35)  учитывая интерпритаторность матлаба, я не верю, что какой либо контролер может работать медленнее него. Видать проблема интерпритарности симулятора кристалла, можно попробовать 1. другие программные продукты-симуляторы, 2. можно попробовать написать свой софтварный проект - симулирующий контроллер (не весь, а конкретную вашу программу), 3. ввести задержки в матлабе, чтобы сравнять скорость, или 4. попробовать на настоящем кристале. (я бы так сделал, купив подходящий старкит, или 3 вариант).
И может быть поможет, но очень с малой вероятностью, задать другие приоритеты выполнения процесса матлабу и симулятору в винде, поставить матлабу низкий приоритет, а симулятору высокий, может это позволит сравнять скорость. Так как матлаб своим интерпретатором может сильно отжирать ресурсы системы, и тормозить процессы симулятора. 1. А что вы могли бы посоветовать? 3. С этим имеются некоторые трудности, т.к. страдает качество самого процесса. Как ни странно, разность приоритетов, в каком-то смысле, помогает: тормозится вся система, а также - сам процесс обмена информацией, однако, отдача и приём при этом более-менее синхронизированы. Хотя, конечно, хочется более корректного способа.
|
|
|
|
|
Jan 29 2008, 10:42
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата(R.S.Nemesis @ Jan 29 2008, 07:14)  1. А что вы могли бы посоветовать? 3. С этим имеются некоторые трудности, т.к. страдает качество самого процесса.
Как ни странно, разность приоритетов, в каком-то смысле, помогает: тормозится вся система, а также - сам процесс обмена информацией, однако, отдача и приём при этом более-менее синхронизированы. Хотя, конечно, хочется более корректного способа. 1. к сожалению ничего, не силен в ассортименте. Просто ИАР и Кеил симулят по разному, и так на глаз ИАР вроде бы побыстрее справляется, плата за это невозможность онлайн смотреть изменение переменных, только в супер медленном анимированном режиме. Может в этой области покопаться... 3. Ну это же симуляция, смысл проверить корректность работы, а не скоростные характеристики, если я что-то в чем-то понимаю. Предложенный вариант разных приоритетов, как раз косвенно введение задержек в матлаб процессы. Если цель симуляции, что-то более чем просто проверить работает или нет алгоритм, я бы пошел и купил старкит с микросхемой, причем даже не обязательно этой, близкого семейства, и на нем бы все и тестировал, а отлаживал бы через порт, через сообщения из кристалла. Перенос программы в пределах семейства, не очень сложная задача...
|
|
|
|
|
Jan 31 2008, 04:19
|
Группа: Новичок
Сообщений: 4
Регистрация: 27-01-08
Пользователь №: 34 460

|
Цитата(Golikov A. @ Jan 29 2008, 13:42)  1. к сожалению ничего, не силен в ассортименте. Просто ИАР и Кеил симулят по разному, и так на глаз ИАР вроде бы побыстрее справляется, плата за это невозможность онлайн смотреть изменение переменных, только в супер медленном анимированном режиме. Может в этой области покопаться...
3. Ну это же симуляция, смысл проверить корректность работы, а не скоростные характеристики, если я что-то в чем-то понимаю. Предложенный вариант разных приоритетов, как раз косвенно введение задержек в матлаб процессы.
Если цель симуляции, что-то более чем просто проверить работает или нет алгоритм, я бы пошел и купил старкит с микросхемой, причем даже не обязательно этой, близкого семейства, и на нем бы все и тестировал, а отлаживал бы через порт, через сообщения из кристалла. Перенос программы в пределах семейства, не очень сложная задача... 1. IAR - он же, вроде как, с COM-портами не работает? 3. Проблема в том, что важны именно скоростные характеристики, просто так, всё работает достаточно корректно. Правда, с приоритетами кое-что выходит, но при этом тормозит не только MatLab он и вся ОС, что становится несколько неудобным, да и желаемой ссинхронизации не достигается. Хотя, в таком, неудобном для МатЛаб, режиме, всё идёт намного слаженнее.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|