回复:SCL如何实现下列程序的快速编程

已锁定

百夫长

  • 帖子

    742
  • 精华

    2
  • 被关注

    31

论坛等级:侠圣

注册时间:2015-10-23

钻石 钻石 如何晋级?

发布于 2021-11-07 19:42:04

24楼

尝试写了 一下


FUNCTION "test" : Void

{ S7_Optimized_Access := 'TRUE' }

VERSION : 0.1

   VAR_INPUT 

      IN : DInt;   // 输入值

   END_VAR


   VAR_OUTPUT 

      out : DInt;   // 输出值

      IN_ERR : Bool;

   END_VAR


   VAR_TEMP 

      lg_real : Real;   // 指数结果

      lg : Int;   // 指数取整

      Check : DInt;   // 校验值

   END_VAR



BEGIN

//计算结果

#lg_real := LN(#IN) / LN(2);   

//取整后计算校验值

#lg := REAL_TO_INT(#lg_real);

#Check := 2 ** #lg;

//校验一致则认为输入正确,输出结果

IF #Check = #IN THEN

    #out := #lg + 1;

    #IN_ERR := 0;

ELSE

    #out := 0;

    #IN_ERR := 1;

END_IF;

END_FUNCTION


罢了,罢了.
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15367条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。