除夕安康(用Codesys随机数来发红包)-CODESYS资源下载区-酷德网 - CoDeSys软件教程下载,CoDeSys工控资讯门户 

酷德网

HSC6490-cn中国制造,中国芯~
查看: 235|回复: 0

除夕安康(用Codesys随机数来发红包)

[复制链接]
  • TA的每日心情
    开心
    2017-11-20 22:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2025-2-13 10:32:37 | 显示全部楼层 |阅读模式
    前言    首先,在这里给大家拜个早年,祝大家新一年,身体安康,财运亨通!!!今天用简短的时间来和大家分享一个Codesys下的产生随机数的函数。正文1. Code Show
    • 1.1 Fc_Random
    [AppleScript] 纯文本查看 复制代码
    FUNCTION Fc_Random : UDINT
    VAR_INPUT
    END_VAR
    VAR
        bMarlonRando : UDINT;
        mbs          : CmpCrypto.CmpCrypto_Interfaces.RtsByteString := (ui32Len := 4, ui32MaxLen := 4, pByData := ADR(bMarlonRando));
        Result       : CmpCrypto.CmpCrypto_Implementation.CmpCrypto_Interfaces.SysTypes.RTS_IEC_RESULT; 
    END_VAR
    //Requires CmpCrypto library
    //Requires device vendor to have included Crypto component in Runtime
    Result := CmpCrypto.CryptoGenerateRandomNumber(ui32NumOfRandomBytes:= 4, pRandom:= ADR(mbs));
    Fc_Random := bMarlonRando;



    • 1.2 Pro_Main

    [AppleScript] 纯文本查看 复制代码
    PROGRAM Pro_Main
    VAR
        xStart   : BOOL;
        UdiMin   : UDINT := 1;
        UdiMax   : UDINT := 50;
        iToDo    : INT ;
        UdiOut   : ARRAY [1..5] OF UDINT ;
        UdiTemp  : UDINT;
        UdiTotal : UDINT;
    END_VAR
    IF xStart THEN
        UdiTotal := UdiMax ;
        FOR iToDo := 1 TO 4 DO
            UdiTemp       := Fc_Random() ;//随机数函数
            UdiOut[iToDo] := UdiTemp MOD UdiTotal ;
            IF UdiOut[iToDo] = 0 THEN
                UdiOut[iToDo] := UdiMin ;
            END_IF ;
            UdiTotal      := UdiTotal - UdiOut[iToDo] ;
        END_FOR ;
        UdiOut[5] := UdiTotal ;
        xStart    := FALSE ;
    END_IF ;


    • 1.3 核心库 CmpCrypto Library
    • 1.4 Show
    640?wx_fmt=png&from=appmsg.jpg


    640?wx_fmt=jpeg&from=appmsg.jpg

    640?wx_fmt=jpeg&from=appmsg.jpg

    感觉微信红包的函数也类似啊~结尾    最后祝大家红包抢不停~(点个关注,不迷路~)

    +10
    不赞一个?
    打赏鼓励一下!
    回复

    举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
    顶部qrcode底部
    关注酷德网订阅号,获取更多资讯!

    QQ|小黑屋|手机版|Archiver|酷德论坛 ( 苏ICP备16065247号-1 )|网站地图

    GMT+8, 2025-4-7 02:11 , Processed in 0.215078 second(s), 61 queries .

    酷德网

    © 2001-2013 Hicodesys. 技术支持 by 酷德网

    快速回复 返回顶部 返回列表