Codesys (824048), страница 66
Текст из файла (страница 66)
Естественно, кодрегулятора не попадет в импортированный проект. Для понимания работы таких блоков используйтедокументацию по данному процессору.6. Конфигурационные блоки (такие, как DB1 [S5-95U], DX0, и DX2), применяемые иногда в S5 CPU,конвертируются в бессмысленные МЭК компоненты. Чтобы понять смысл их содержимого, используйте руководство по программированию данного CPU.
В крайнем случае можно исследовать определенную данным блоком конфигурацию в системе программирования S5. Она включает настройкукоммуникаций, обработку аналоговых значений, мультипроцессорную работу и т.д. Естественно, всеэти параметры имеют смысл только в Siemens SPS.По окончании импортирования внимательно просмотрите полученный код. Не конвертированные автоматически фрагменты снабжены комментарием:(*Warning! Unconvertible STEP5/7 code shown as comment:*)Здесь же в комментарии содержится и исходный код.Обязательно проверьте адреса. При импорте создаются исходные Siemens адреса, в формате:Биты: Байтовое-Смещение.Номер-БитаНе биты: Байтовое-СмещениеДва последовательных адреса слов могут пересекаться. Так %MW32 и %MW33 имеют общий байт%MB33 (только в Siemens SPS).
В CoDeSys %MW32 и %MW33 обычно не имеют пресечения.Ваш ПЛК может иметь иерархическую модель адресации памяти, например "%MW10.0.0.Вы можетесразу переделать все адреса либо попробовать оставить их как есть. Делать это нужно очень осторожCoDeSys V2.310-86Приложение G: Сименс импорт.но! В Siemens программах попеременное обращение к одной и той же области памяти - как слову,байту или биту - является обычной практикой.
При импортировании блоков данных CoDeSys создаетWORD определения для соответствующих слов. Обращение к словам выполняется напрямую. В МЭКнет возможности объявить в общей памяти несколько пересекающихся переменных разного типа. Ноэто возможно в прямоадресуемой (M) памяти и памяти входов-выходов. Если применяли адреса типа%MX33.3, %MB33, %MW32 или %MD30, их корректное преобразование нужно выполнить вручную.Используйте список перекрестных ссылок, включающий входы, выходы и распределение памяти.Проверьте пересекающиеся области и исключите их там, где их не должно быть.CoDeSys V2.310-87Приложение H: Опции целевых системПриложение H: Опции целевых систем10.22 Системные опции целевых платформ (Target Platform)Intel 386 совместимыеПункт диалогаПояснениеPlatformТип целевой платформыSupport float processorесли активна: разрешает применять FPU команды в операциях с плавающейзапятой.Debugging in multitaskingenvironmentесли активна: генерируется дополнительный код, позволяющий проводитьотладку в многозадачной среде.Optimized jumpsесли активна: разрешена оптимизация переходов в операциях сравнения;быстрый + компактный код (особенно на 386/486); Строки, содержащиесравнения перед переходом, будут отображаться серым в режиме контролявыполнения.Optimized operations withconstantsОптимизация операций с константами (A = A + 1, A < 500 etc.); быстрый +компактный код (особенно на 386/486); Константы будут отображаться серым в режиме контроля выполнения.Optimized Loadoperations Исключаются повторные операции загрузки при множественном доступе кпеременным/константам; быстрый + компактный кодMotorola 68KCoDeSys V2.310-89Приложение H: Опции целевых системПункт диалогаПояснениеPlatformТип целевой платформы.CPUВариант 68k CPU: базовый 68000 либо CPU32 и старше.Support Float Processorесли активна: разрешает применять FPU команды в операциях с плавающейзапятой.Use 16 bit jump offsetsесли активна: переходы при вычислении логических выражений используютотносительные 16 бит смещения (более сложные выражения, но больше размер кода).не активна: 8 бит смещения .allow byte-aligned structuresесли активна: выравнивание только по четным адресам.не активна: произвольное расположение.Reserved Register 1A2,A4,A5,A6: Указанные адресные регистры зарезервированы и не используютсяИначе: регистр используется генератором кодаReserved Register 2Дополнительный зарезервированный регистр адресаBase register for librarydataРегистр для адресации статических данных в C библиотеках (перед вызовомбиблиотечной функции, загружается адресом свободной памяти).Если "None", используется A5.Output-ModeNothing = ничегоAssembler = генерируется файл "code68k.hex" в директории компиляции (См."Project/Options/Directories").Disassembler = Дополнительно создает файл дизассемблераInfineon C16xCoDeSys V2.310-90Приложение H: Опции целевых системПункт диалогаПояснениеPlatformТип целевой платформыCode / Compiler:Компилятор, использованный для построения RTS и библиотек (определяет порядок вызова C функций)Code / Stack sizeМаксимальная глубина вызовов (вложений)Code / DataМодель памяти данныхCode / FunctionsМодель памяти кодаInit.
functionsесли активна: функции включают код инициализации локальных переменныхOptimizeесли активна: оптимизация кода, если индекс элемента массива константаOutput HEX-Fileесли активна: формируется выходной HEX кодOutput BIN-Fileесли активна: формируется двоичный кодOutput MAPесли активна: формируется map-файл кодаOutput LSTесли активна: формируется листинг кодаOutput LST , of addressesесли активна: листинг включает адресаDPPs /DPP0..DPP2In InstancesВыбор DPP дляDPP0, DPP1, DPP2DPP для короткой адресации функциональных блоковLibraries /CodeTablesDataData lengthPOUsReferencesОпции для библиотекCoDeSys V2.310-91Приложение H: Опции целевых системARM и Power PCВ обеих системах пункты диалога одинаковы.Пункт диалогаПояснениеPlatformТип целевой платформыSupport float processorесли активна: разрешает применять FPU команды в операциях с плавающейзапятойFirst parameter Register(integer)Регистр, в котором передается первый целочисленный параметр при вызовеC-функцииLast parameter Register(Integer)Регистр, в котором передается последний целочисленный параметр при вызове C-функцииRegister for return values Регистр, в котором возвращается целочисленный результат C-функции(Integer)First parameter Register Регистр, в котором передается первый параметр в формате с плавающей запя(Float):той при вызове C-функцииLast parameter Register(Float):Регистр, в котором передается последний параметр в формате с плавающейзапятой при вызове C-функцииRegister for return value(Float):Регистр, в котором возвращается параметр в формате с плавающей запятой CфункцииIntel byte orderесли активна: применяется Intel порядок байтCoDeSys V2.310-92Приложение H: Опции целевых системMIPSПункт диалогаПояснениеPlatformТип целевой платформыFirst parameter Register(integer)Регистр, в котором передается первый целочисленный параметр при вызовеC-функцииLast parameter Register(Integer)Регистр, в котором передается последний целочисленный параметр при вызове C-функцииRegister for return values Регистр, в котором возвращается целочисленный результат C-функции(Integer)Max.
space on the stackЗависит от ОС: Макс. размер (в байтах) аргументов, помещаемых в стекfor arguments (Byte):'Hitachi SH'CoDeSys V2.310-93Приложение H: Опции целевых системПункт диалогаПояснениеPlatformТип целевой платформыSupport float processorесли активна: разрешает применять FPU команды в операциях с плавающейзапятойFirst parameter Register(integer)Регистр, в котором передается первый целочисленный параметр при вызовеC-функцииLast parameter Register(Integer)Регистр, в котором передается последний целочисленный параметр при вызове C-функцииRegister for return values Регистр, в котором возвращается целочисленный результат C-функции(Integer)Max. space on the stackЗависит от ОС: максимальный размер аргументов (в байтах), которые можноfor arguments (Byte)разместить в стеке.First parameter Register(Float):Регистр, в котором передается первый параметр в формате с плавающей запятой при вызове C-функцииLast parameter Register(Float):Регистр, в котором передается последний параметр в формате с плавающейзапятой при вызове C-функцииRegister for return value(Float):Регистр, в котором возвращается параметр в формате с плавающей запятой CфункцииIntel byte orderесли активна: применяется Intel порядок байт8051 совместимыеПункт диалогаПояснениеPlatformТип целевой платформыMaximum Stack-Size:(in Bytes)Максимальный размер стека (в байтах)CoDeSys V2.310-94Приложение H: Опции целевых систем10.23 Опции распределения памяти (Memory Layout).Приведенные здесь описания опции справедливы для всех платформ.Пункт диалогаПояснениеBase (Code)Automatic: автоматическое размещение сегмента кодаИначе: с указанного абсолютного адресаBase (Global)Automatic: автоматическое размещение сегмента данных (global data)Иначе: с указанного абсолютного адресаBase (Memory)Automatic: автоматическое размещение сегмента прямоадресуемой памяти (M)Иначе: с указанного абсолютного адресаBase (Input)Automatic: автоматическое размещение образа входов (I)Иначе: с указанного абсолютного адресаBase (Output)Automatic: автоматическое размещение образа выходов (O)Иначе: указанного абсолютного адресаBase (Retain)Automatic: автоматическое размещение сегмента Retain памятиИначе: указанного абсолютного адресаArea (Code)Сегментный номер для кодаArea (Global)Сегментный номер для данных (global data)Area (Memory)Сегментный номер для данных прямоадресуемой памятиArea (Input)Сегментный номер для входовArea (Output)Сегментный номер для выходовArea (Retain)Сегментный номер для Retain памятиSize (Code)Размер сегмента кодаCoDeSys V2.310-95Приложение H: Опции целевых системSize pro Segment (Global)Размер сегмента данныхSize (Memory)Размер сегмента прямоадресуемой памятиSize (Input)Размер сегмента входовSize (Output)Размер сегмента выходовSize (Retain)Размер сегмента Retain памятиTotal size of data memoryОбщие количество памяти данныхOwn retain segmentесли активна: разместить Retain в отдельном сегментеMaximum number of globaldata segmentsMaximum number of POUsМакс.