技术论坛

STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下

作者 主题
侠士

经验值: 1867
发帖数: 330
精华帖: 0
主题:【求助】STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 楼主 2021-01-08 13:48:13

STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下




低调做人,高调做事
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1666979&b_id=4&s_id=0&num=9

奇侠

经验值: 8094
发帖数: 1308
精华帖: 6
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 1楼 2021-01-08 15:55:13

应该有专门的库,,,,,,安装软件的时候可能会带着,,,具体那个我也不太清楚,,,,,,,




养活一团春意思,撑起两根穷骨头
以下网友喜欢您的帖子:

  
至圣

经验值: 43582
发帖数: 15779
精华帖: 61
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 2楼 2021-01-09 13:05:58

用不着转呀!,直接db1中定义bool量,用move指令赋值过去就行了。

stl编程:

L DB2.DBW8

T DB1.DBW0


活到老,学到老!为了生活学习吧!
以下网友喜欢您的帖子:

  
至圣

经验值: 43582
发帖数: 15779
精华帖: 61
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 3楼 2021-01-09 13:18:23




看我做的测试。


活到老,学到老!为了生活学习吧!
以下网友喜欢您的帖子:

  
至圣

经验值: 17403
发帖数: 1003
精华帖: 1
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 4楼 2021-01-09 15:14:09

     L     #IN1

      SRD   1

      A     >0

      =     #OUT0


      L     #IN1

      SRD   2

      A     >0

      =     #OUT1


      L     #IN1

      SRD   3

      A     >0

      =     #OUT2

    *

    *

    * 

      L     #IN1

      SRD   16

      A     >0

      =     #OUT15

要定义输入变量IN1和16个输出变量,中间那些程序请自己按照这个规律补上;不知道该怎么对输出的变量进行循环赋值,只能写16段相同功能的替换了;

模拟的结果:




一个人在战斗
以下网友喜欢您的帖子:

  
至圣

经验值: 17403
发帖数: 1003
精华帖: 1
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 5楼 2021-01-12 08:51:23

之前回复的程序量比较大,后来想了想,既然用了FB块,那就好办点了;程序是针对一个字转成16个位的;因为输出的变量在2.0开始的,所以就直接读取这个地址了,对输出的变量进行循环赋值;

//程序

          L     P#2.0

          T     #TEMP2

          L     16

A001: T     #TEMP1

          L     #IN1

          SRD   1

          T     #IN1

           A     >0

          =     DIX [#TEMP2]

          L     #TEMP2

          L     1

          +D    

          T     #TEMP2

          L     #TEMP1

          LOOP  A001

          NOP   0





一个人在战斗
以下网友喜欢您的帖子:

  
侠圣

经验值: 2790
发帖数: 390
精华帖: 5
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 6楼 2021-01-12 13:17:51

(* 将双字转换为BOOL量*)

VAR_INPUT

input_data:DWORD;//输入的双字

END_VAR

VAR

data:DWORD;    

bool_data AT data: ARRAY[0..31] OF BOOL;  //使用AT将双字转换成BOOL量

I:INT;    

END_VAR

VAR_OUTPUT

Q0    :    BOOL    ; 

................

Q31    :    BOOL    ;

END_VAR

data:= input_data;

    FOR I:= 0 TO 31 BY 1 DO

        Q0    :=     bool_data[0]    ;

.................................................

Q31    :=     bool_data[31]    ; 

    END_FOR;

END_FUNCTION_BLOCK


(* 将BOOL量转换为双字*)


VAR_INPUT

X0    :    BOOL;

..........................

X31    :    BOOL;

END_VAR

VAR_OUTPUT

    // Output Parameters

OUT:DWORD;    

END_VAR

VAR

NO:INT;

S1: ARRAY[0..31] OF BOOL; 

S2 AT S1: DWORD;

END_VAR

FOR NO:= 0 TO 31 BY 1 DO

       S1[0]    :=    X0;

..........................................

S1[31]    :=    X31;      

    END_FOR;

OUT:= S2;

END_FUNCTION_BLOCK



大家同行,you ok ? me !
以下网友喜欢您的帖子:

  
侠圣

经验值: 3343
发帖数: 650
精华帖: 1
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 7楼 2021-02-24 16:31:10

十进制不是天然用二进制保存的吗,move就可以了


罢了,罢了.
以下网友喜欢您的帖子:

  
奇侠

经验值: 7262
发帖数: 558
精华帖: 2
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 8楼 2021-07-29 09:50:10

 4楼、5楼、6楼的师傅们,用得着这么复杂吗?2楼、3楼给的方案不香吗?


低调做人 高调做事
以下网友喜欢您的帖子:

  
侠圣

经验值: 3596
发帖数: 303
精华帖: 2
回复:STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下


只看楼主 9楼 2021-07-29 10:00:21
博图有个AT的块,就是Word和bool之间的转换,你可以在全球技术资源库下载到
只为成功找方法,不为失败找借口!
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
STEP-7 ,十进制整数转二进制输出的功能块?哪位大神有现成的功能块借用下
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。