Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: С из Матлаба
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Вопросы системного уровня проектирования
Саша Z
У меня проэкт включает несколько м-файлов обработки и подготовки файлов данных для дальнейшей обработки на С5402. Файлы обработки DSP - С + ассемблер (хотя ассемблер вызывается ис основного С файла, посему прозрачен в глобальном плане).
Два смежных вопроса:
1. Как вызывается из м-файла С файл ?
2. Желательно в целях автоматизации демо проэкта (на защите например), скомпоновать C/asm файлы для процессора в exe file, таким образом при его запуске программа загружается в С5402 DSK и выполняется. Предположим сделали такой exe, как из м-файла вызвать exe ?
3. В м-файле, после вызова С/exe файла ннужно обрабатывать результат работы DSP, т.е. нужно подождать окончания работы вызванного C/exe и затем продолжить работу (продолжить выполнение м-файл скрипта). Как "сказать" матлабу в м-файле, мол, подожди окончания работы вызванного C/exe и затем продолжи ?

Спасибо.
CodeWarrior1241
Hi Саша,
Цитата
1. Как вызывается из м-файла С файл ?
Посмотрите на help mcc. На форуме тоже есть примеры.

Цитата
2. Желательно в целях автоматизации демо проэкта (на защите например), скомпоновать C/asm файлы для процессора в exe file, таким образом при его запуске программа загружается в С5402 DSK и выполняется. Предположим сделали такой exe, как из м-файла вызвать exe ?
>> dos('NameOfExeFile.exe'); Например, я вызвал AppCAD из матлаб command line: dos('AppCAD.exe');
Возможно получить статус открытия ехе, и естественно надо открывать ехе находясь в её рабочей директории. Посмотрите help dos.

Цитата
3. В м-файле, после вызова С/exe файла ннужно обрабатывать результат работы DSP, т.е. нужно подождать окончания работы вызванного C/exe и затем продолжить работу (продолжить выполнение м-файл скрипта). Как "сказать" матлабу в м-файле, мол, подожди окончания работы вызванного C/exe и затем продолжи ?
Umm.... с умным видом задумался... Поидее, матлаб ждет пока the handle of the dos command отпустит промпт. По простанародному, если ты вызвал какой нибудь ехе application, матлаб выводит этот application to the front, а сама висит. Когда application закрывается, тогда скрипт продолжает работу. Так что если твоя ехе достаточно умная что бы закрыватся когда её работа оконьчина, проблем организовать "задержку" не будет.
Саша Z
Цитата(CodeWarrior1241 @ May 19 2007, 04:44) *
Hi Саша,
Посмотрите на help mcc. На форуме тоже есть примеры.

>> dos('NameOfExeFile.exe'); Например, я вызвал AppCAD из матлаб command line: dos('AppCAD.exe');
Возможно получить статус открытия ехе, и естественно надо открывать ехе находясь в её рабочей директории. Посмотрите help dos.

Umm.... с умным видом задумался... Поидее, матлаб ждет пока the handle of the dos command отпустит промпт. По простанародному, если ты вызвал какой нибудь ехе application, матлаб выводит этот application to the front, а сама висит. Когда application закрывается, тогда скрипт продолжает работу. Так что если твоя ехе достаточно умная что бы закрыватся когда её работа оконьчина, проблем организовать "задержку" не будет.


Спасибо Вадик, это уже что-то. Гляну хелпы матлаба.
Не совсем понял, что значит чтоб exe закрывался ? Я не большой спец в софте, буду благодарен ежели просветишь...
CodeWarrior1241
Цитата(Саша Z @ May 19 2007, 03:20) *
Спасибо Вадик, это уже что-то. Гляну хелпы матлаба.
Не совсем понял, что значит чтоб exe закрывался ? Я не большой спец в софте, буду благодарен ежели просветишь...

Я наверно не совсем правельно выразился - поиграйся с dos, увидишь что я имел в виду. Матлаб ждет пока ты пользуешся другой программой, когда программу (ехе) закрываеш ты возврощаешся в матлаб, и скрипт работает дальше. Мне показалось что ты именно это хотел.
Саша Z
Цитата(CodeWarrior1241 @ May 19 2007, 14:27) *
Я наверно не совсем правельно выразился - поиграйся с dos, увидишь что я имел в виду. Матлаб ждет пока ты пользуешся другой программой, когда программу (ехе) закрываеш ты возврощаешся в матлаб, и скрипт работает дальше. Мне показалось что ты именно это хотел.


ОК, спасибо, гляну в хелпы....

P.S. ты че не спишь по ночам ? smile.gif
CodeWarrior1241
Цитата(Саша Z @ May 19 2007, 06:53) *
ОК, спасибо, гляну в хелпы....
P.S. ты че не спишь по ночам ? smile.gif

Нееа, сплю, только я 20 мин назад домой пришел... Был на bаchlor party в городе yeah.gif ... А прошлой ночью на работе рано надо быть под implementation. Ща наверно валю спать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.