Перейти к публикации

передача параметров proc


Рекомендованные сообщения

простите за глупые вопросы, но нужно разбираться

создал главную программу GLAV_MPF, и подпрограмму PODPR_SPF, нужно передать DEF переменные подпрограмме,

 

Главная программа GLAV_MPF

PODPR_SPF (10,20,30)

...

M30

 

подпрограмма PODPR_SPF

PROC PODPR_MPF (INT ODIN, INT DVA, INT TRI)

...

RET

 

Ошибка, имя PODPR не определено,

когда используешь PROC, или PROC...(VAR...) кто кому передает параметры? и в какой директории лучше создавать подпрограмму?

 

 


 

 

 

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


UnPinned posts
2 часа назад, Aveovar сказал:

 

подпрограмма PODPR_SPF

PROC PODPR_MPF (INT ODIN, INT DVA, INT TRI)

...

RET

 

Ошибка, имя PODPR не определено

Здравствуйте. В главной программе, в самом начале добавьте строку

EXTERN PODPR(INT, INT, INT)

Окончания _SPF и _MPF из текстов программ уберите. 

Изменено пользователем A_1
Ссылка на сообщение
Поделиться на других сайтах
43 минуты назад, A_1 сказал:

Здравствуйте. В главной программе, в самом начале добавьте строку

EXTERN PODPR(INT, INT, INT)

Окончания _SPF и _MPF из текстов программ уберите. 

Дружище, как ты это делаешь? я весь день пробегал от книжки до станка и обратно, спасибо что отвечаешь. А файл UC.COM нужно прописывать? или эта строка его заменяет?

Ссылка на сообщение
Поделиться на других сайтах
20 минут назад, Aveovar сказал:

А файл UC.COM нужно прописывать? или эта строка его заменяет?

Про этот файл не знаю. Чтобы не писать EXTERN, попробуйте подпрограмму расположить в папке Циклы пользователя. Если эту подпрограмму планируете вызывать из разных программ.

И перезагрузите станок.

Ссылка на сообщение
Поделиться на других сайтах
Только что, A_1 сказал:

Про этот файл не знаю. Чтобы не писать EXTERN, попробуйте подпрограмму расположить в папке Циклы пользователя. Если эту подпрограмму планируете вызывать из разных программ.

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

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

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

А теперь о передаче параметров в подпрограмму. Передавать различные значения из главной программы в подпрограмму можно несколькими способами: 1. При помощи глобальных R- переменных; 2. С помощью передачи параметров через связку proc/extern; 3. Через глобальные пользовательские переменные, объявленные в главной программе. 

Кстати связку proc/extern лучше использовать в тех случаях, когда программа задумывается как универсальная подпрограмма. 

Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, ShadoWofXaoS сказал:

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

Видел такие только в PCU20

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

В  этих модулях я не очень "секу"... Весь опыт и знания накоплены при работе на стойке Sinumerik 840D sl. Ну и кое-что знаю о стойке 802D. При " углубленном" изучении структуры интерфейса стойки 840D sl и "ковырянии" в коде циклов нашёл кое-какую информацию и о файлах с расширением ".COM". Вообще же, руководств на русском языке по стойкам Sinumerik не очень-то и много, а реально полезной, эксклюзивной информации в них и того меньше. А английский я, увы, знаю плохо, так что без хороших разъяснений со стороны русскоязычных гуру освоить эту стойку на уровне профи очень и очень сложно...) 

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

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

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

Гость
Ответить в тему...

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

  Разрешено не более 75 эмодзи.

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

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

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

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




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