Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Структура памяти программ






Память рабочей программы состоит из области задания кон­фигурации, массива констант (при необходимости) и рабочей программы.

Область задания конфигурации и масок обмена расположена в нача­ле памяти рабочей программы и занимает 16 слов с адресами 10000..10017. Назначение отдельных слов указанной области приведено в таблице 1

Адрес Назначение
  Маска обмена модулей вывода 0-го блока
  Маска обмена модулей вывода 1-го блока
  Маска обмена модулей вывода 2-го блока
  Маска обмена модулей вывода 3-го блока
  Маска обмена модулей ввода 0-го блока
  Маска обмена модулей ввода 1-го блока
  Маска обмена модулей ввода 2-го блока
  Маска обмена модулей ввода 3-го блока
  Адрес начала рабочей программы /НРП/
  Номер первого удаленного блока
  Наличие и номер слова прерываний
  Период запуска и номер сегмента приоритетного выполнения
  Резерв
  Резерв
  Длительность скана
  Контрольная сумма защищаемой области

Каждый двоичный разряд слова маски обмена отображает наличие модуля на соответствующем установочном месте блока ПК. Разряды младшего байта слова отображают наличие каналов К000...К017 в соответ­ствующем модуле, а разряды старшего байта, слова маски обмена отобра­жают наличие, каналов К100..К117 в этом модуле. При этом номер разря­да в байте соответствует номеру установочного места в блоке ПК. Пример

Слово входы Старший байт Младший байт
                               
К100- К117 К000 – К017
Наличие каналов 32 входа у трех модулей ввода, установленных на «0», «1», «2» местах
                                 

Соответствие разрядов маски обмена номеру установочного места

и номерам каналов модулей ввода-вывода представлено в табл.2.

Если ПК содержит удаленный блок ввода-вывода, то в слове с адресом 10011 указывается номер этого блока /от I до 3/, Если ПК не имеет удаленных блоков, то в этом слове записывается 0.

 

Номер разряда слова маски обмена Номер установочного места • Каналы
    К000…К017
    К000…К017
    К000…К017
    К000…К017
    К000…К017
    К000…К017
    К000…К017
    К000…К017
    К100...К117
    К100...К117
    К100… KII7
    К100...К117
    К100...К117
    К100...К117
    К100...К117
    К100...К117

 

В слове с адресом 10012 задается адрес слова из области отображения входов основного блока, соответствующего установленному месту модуля ввода, на который подаются сигналы прерываний, если прерывание не предусмотрено, то в это слово записывается 0. Например, если сигналы прерываний подаются на модуль, установленный на место 2, то по адресу 10012 должно быть записано слово 000102.

Длительность скана задается с дискретностью 2 ms. Таким образом для задания длительности скана 200 ms в слово по адресу 10016 необходимо записать 10010 (восьмеричный эквивалент 000144).

Контрольная сумма защищаемой области формируется автома­тически при записи ПРП. Контрольная сумма проверяется при включении ПК, при переводе ПК из режима П/Т в режим " Работа", а также периодически во время выполнения ПРП.

13.4. Структура •рабочей программы

ПРП ФК500Т состоит из инструкций языка программирования. Инструкции объединены в программные блоки и подпрограммы, представ­ляющие собой основные структурные элементы ПРП. Блоки в свою очередь могут быть организованы в сегменты.

ПРП может содержать:

1...256 блоков с номерами 000…377,

0...256 подпрограмм с номерами 000...377,

0...32 сегмента с номерами 000..37.

Сегменты с адресом 20... 37 используются только для обра­ботки запросов прерываний от модуля ввода дискретных сигналов.

Сегмент 20 обслуживает прерывание от канала K000 указанного модуля, сегмент 21 - от канала К001, и т.д.

Для задания структуры программы используются инструкции структурирования.

Порядок следования блоков, сегментов и подпрограмм в ПРП может быть произвольным.

Если в ПРП нет сегментов, то выполнение программы в каж­дом скане начинается с блока с номером 000. Для реализации ПРП, со сложной структурой в таком случае могут быть использованы инструкции вызова блоков и подпрограмм.

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

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.