Как сделать прием данных по rs-232 с прерыванием?

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Nemo on 02 Oct 2008, 13:21

Nemo wrote:Всем привет, что-то я столкнулся со странностью, не могу понять где ошибка? Почему-то после установки ИСТИНА в выполняющемся цикле он не останавливается, а делает еще один круг :shok:


Решение найдено, спасибо за просмотры :)
User avatar
Nemo
user
user
 
Posts: 97
Joined: 26 Jun 2008, 11:48
Location: Россия
LabVIEW Version: 8
Karma: 0

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Eugen Graf on 02 Oct 2008, 13:27

Я скачал твой проект, но не разобрался, т.к. это займёт очень много времени. И вообще надо бы тебе научится делать приборы, которые бы помещались на один монитор без скрола.

На счёт цикла, да, он выполняется как минимум один раз, даже если у тебя установлена ИСТИНА на невыполнение. Для того чтобы содержимое не выполнялось ещё раз, тебе надо всё содержимое засунуть в свитч кейс и подавать на него то же условное выполнение, что и на условие выполнения цикла.

Сори за мой русский, но надеюсь обьяснил доступно.
User avatar
Eugen Graf
guru
guru
 
Posts: 6502
Joined: 13 Nov 2007, 02:20
Location: Saarbrücken
Medals: 4
Activity (1) Professionalism (1) Silver (1) Black (1)
LabVIEW Version: 2009
Karma: 303
CLAD I/O VIP bloggers internet

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Nemo on 02 Oct 2008, 13:42

Я вывел ИСТИНУ из другого цикла напрямую - линией, вот.
Да, хотелось бы, научится так, что бы помещалось на мониторе - продолжаю совершенствоваться ;), а это моя первая программа, приходится тянуть, вот :)
Attachments
v 0.8.GIF
User avatar
Nemo
user
user
 
Posts: 97
Joined: 26 Jun 2008, 11:48
Location: Россия
LabVIEW Version: 8
Karma: 0

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Confocal on 17 Oct 2008, 14:09

Confocal wrote:
Confocal wrote:Установил Visa buffer size до 120, а по умолчанию - 4096. Теперь работает.

Вот скрин редактированного прибора.
Еще хотелось бы узнать для чего используют реинтрантные приборы и как их создают?

Вот какой трабл. По моему предположению после того как я настроил буфер на чтение
не сразу но перестал работать шаговый двигатель. Запускаешь прибор, координаты считает, ШД не работает. Вернее пытается работать, но надо рукой помогать (сигнал поступает). В родном ПО такая же фича. Через некоторое время может восстановиться. Если работать в родном ПО, то такого сбоя нет. Вопрос: может ли какой либо код (а именно настройка буфера) в LV давать сбой в микроконтроллер управления ШД? Он подключается через USB конвертер.
Confocal
assistant
assistant
 
Posts: 104
Joined: 15 Aug 2008, 11:55
Location: Россия, Московская область
LabVIEW Version: 8.5
Karma: 0

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Nemo on 17 Oct 2008, 14:21

нет, если ты что-то туда постоянно не отсылаешь, а если отсылаешь, то постоянные срабатывания прерывания МК, вполне возможно, будут тормозить МК.
User avatar
Nemo
user
user
 
Posts: 97
Joined: 26 Jun 2008, 11:48
Location: Россия
LabVIEW Version: 8
Karma: 0

Re: Как сделать прием данных по rs-232 с прерыванием?

Postby Confocal on 17 Oct 2008, 15:14

нет, кажется что в порте или контроллере остается сигнал и он не полностью работоспособен. Естесственно, LV полностью закрываю и когда запускаю родное ПО то происходит то о чем писал.
Confocal
assistant
assistant
 
Posts: 104
Joined: 15 Aug 2008, 11:55
Location: Россия, Московская область
LabVIEW Version: 8.5
Karma: 0

Previous

Return to Коммуникация с приборами

Who is online

Users browsing this forum: No registered users and 10 guests

cron