Чтение определенного бита в слове WORD внутри функции FC

Промышленные Логические Контроллеры SIMATIC S7-200/300/400
volotovskyd
Posts: 84
Joined: Mon Aug 13, 2012 2:23 pm

Чтение определенного бита в слове WORD внутри функции FC

Post by volotovskyd »

Здравствуйте.
STEP-7 v.5.6
Создал функцию FC. Язык редактирования FBD.
Задал переменную IN с символьным именем statustag типа WORD.
Задача прочитать определенный бит в этом слове. Подскажите какой синтаксис нужен. Например statustag.DBXy.z или что-то типа этого.
Спасибо.
alligahor
Posts: 2
Joined: Wed May 16, 2012 3:20 pm

Re: Чтение определенного бита в слове WORD внутри функции FC

Post by alligahor »

Три варианта:
1. Спросить у чатжпт, я попробовал, он объяснил, со схемами, объяснениями и конечно же с некоторыми неточностями, но в целом всё ОК - рабочее
2. Использовать команды AND и маску
3. Использовать структуру из 16 битов и сделать туда MOVE этого значения - тогда можете напрямую работать с битами
sania
Site Admin
Posts: 1390
Joined: Sat Aug 13, 2005 6:15 am

Re: Чтение определенного бита в слове WORD внутри функции FC

Post by sania »

можно так

Code: Select all

l statustag // in var
t lw0 //temp var

a l0.3 // bit 3 or your bit
= out  //out var or your logic