玖玖玖视频-亚洲精品1卡2卡3卡-操欧美美女-真实国产乱子伦对白视频不卡-国产乱在线-大胸美女被吃奶爽死视频-久久亚洲美女精品国产精品-天堂在线www天堂在线-久久在精品线影院精品国产-国产又粗又长又大-欧美三级一区二区-超碰在线亚洲-天天cao在线-国产偷倩视频-亚洲啪

duhuaiguo
級別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個(gè)
工控威望: * 點(diǎn)
下載積分: * 分
在線時(shí)間: (小時(shí))
注冊時(shí)間: *
最后登錄: *
查看duhuaiguo的 主題 / 回貼
樓主  發(fā)表于: 2009-09-01 18:48
This is the main handler of the MMI profile container

Parameters : fb_in_offset   First byte in the input container
             fb_out_offset  First byte in the output container
             db_address     Number of the database to use
             con_len        Length of container in bytes (min.32)  

Example : The terminal is configured to be on input and output byte 64,
          32 bytes allocated  and database to communcate with is 51:
          fb_in_offset  = 64
          fb_out_offset = 64
          db_address    = 51
          con_len       = 32

The function block handles one complete container in one scan. If read index,
FC111 is called.
If write index, FC112 is called.
Note that the control byte is not set until next scan, to avoid timing problems



      L     #fb_in_offset               // Incontainer start address
      T     MW   496                    // Remember incontainer start
      T     MW   500

      L     #fb_in_offset               // Incontainer start address
      SLD   3                           //
      LAR1  
      L     IB [AR1,P#0.0]              // Get the proper control byte from inp.container
      T     MB   486                    // Store it

      L     #fb_out_offset              // Outcontainer start address
      T     MW   498                    // Store it
      T     MW   502

      L     #m_110                      // Previous input control byte
      T     MB   479                    // Store it

      L     0
      T     MB   474                    // Clear error code

      A     M    479.0
      R     M    479.0                  // Clear error flag

      A     M    486.6                  // Terminal present ?
      JC    WEI1                        //
      L     1                           // Error 1 : Comm error
      JU    FEH                         //

WEI1: A     M    486.5                  // Does the terminal toggle the toggle bit ?
      AN    M    486.5
      L     S5T#2S                      // Timeout timer
      SD    "Terminal timeout"
      AN    "Terminal timeout"
      JC    WEI2
      L     2                           // Error 2 : Terminal not in RUN
      JU    FEH

WEI2: A     M    486.7                  // Test if new container
      A     M    479.7                  // Compare old container byte with the new one
      O    
      AN    M    486.7
      AN    M    479.7
      JC    ENDE                        // No new container

      A     M    486.7                  // Pulse
      =     M    479.7

      L     MW   498                    // Outcontainer pointer
      L     4
      +I    
      T     MW   498                    // First data position : 4

      L     MW   496                    // Incontainer pointer
      L     4
      +I    
      T     MW   496                    // First index position : 4
//    
LOOP: NOP   0
      L     MW   496                    // Incontainer pointer
      ITD  
      SLD   3
      T     MD   504                    // Make it double word
      L     IB [MD 504]                 // Get first index byte
      T     MB   486                    // Store it
      L     MB   486
      L     0
      ==I  
      JC    DONE                        // Jump out if index is 0

      A     M    486.7                  // Is it a read index ?
      JC    ANK1
      CALL  "READ INDEX OP PANEL"       // Then call read index function
       DataBase:=#db_address
ANK1: NOP   0
      L     MB   478                    // Check return value from FC111
      L     0
      ==I  
      JC    WEI3                        // Was there an error return ?
      AN    M    479.0
      S     M    479.0                  // Then, set error bit
      L     MB   478
      JU    FEH                         // Jump to error
WEI3: AN    M    486.7                  // Is it a write index ?
      JC    WEI4
      CALL  "WRITE INDEX OP PANEL"      // Then call write index function
       DataBase:=#db_address
      L     MB   478                    // Check return value from FC112
      L     0
      ==I  
      JC    WEI4                        // Was there an error return ?
      AN    M    479.0
      S     M    479.0                  // Then set error bit
      L     MB   478                    //
      JU    FEH                         // Jump to error
WEI4: L     MW   496                    // Check if incontainer is done
      L     MW   500
      -I    
      L     #con_len
      <I    
      A(    
      L     MW   498                    // .. or that outcontainer is done
      L     MW   502
      -I    
      L     #con_len
      <I    
      )    
      JC    LOOP                        // Continue id conatiner not completed
DONE: L     #fb_in_offset               // Container done !
      SLD   3
      LAR1  
      L     IB [AR1,P#0.0]              // Get input control byte

      T     MB   486                    // Store it
      JU    ENDE
//-------  ERROR HANDLING  ---------
FEH:  T     MB   474                    // Store error code
FEH1: L     MW   498
      ITD  
      SLD   3
      T     MD   504

      L     0                           // Write controlbyte to output container
      T     QB [MD 504]

      L     1
      L     MW   498

      +I    
      T     MW   498

      L     MW   502
      -I                                // INTERNES MERKERBYTE SICHERN

      L     32
      <I    

      JC    FEH1
ENDE: NOP   0
      NOP   0
      AN    M    486.6
      S     M    486.6                  // Set the COM-bit
      AN    M    486.5
      =     M    486.5                  // Toggle the Toggel-bit
      A     M    479.0
      =     M    486.4
//----------------------
      L     MB   486                    // Delay answer one scan to avoid timing problems
      T     #out_this_cycle
      L     #fb_out_offset
      SLD   3
      LAR1  
      L     #out_last_cycle
      T     QB [AR1,P#0.0]
      L     #out_this_cycle
      T     #out_last_cycle
      L     MB   479
      T     #m_110
      NOP   0

主站蜘蛛池模板: 亚洲成a人片在线观看中文 精品国产制服丝袜高跟 | 6080亚洲人久久精品 | 亚洲精品456在线播放dvd | 日韩视频一区二区三区 | 色又黄又爽18禁免费网站 | 亚洲高清成人aⅴ片 | 成人免费看黄网站yyy456 | 日本成人免费在线 | 日韩精品久久久久久久 | 国产综合视频一区二区三区 | 夜夜高潮夜夜爽高清视频 | 伊人伊网| 一久久久| 一区二区乱子伦在线播放 | 无码制服丝袜人妻在线视频精品 | 一级国产视频 | 国产有码在线 | 伊人色综合久久天天 | 男女在线视频 | 亚洲午夜久久久久久久久红桃 | 国产啪精品视频网站免费尤物 | 日韩国产成人无码av毛片蜜柚 | 卡一1卡2卡三卡4卡精品网站 | av番号在线观看 | 亚洲美免无码中文字幕在线 | 国内精品九九久久久精品 | 中文字幕无码免费久久 | 一级伦理农村妇女愉情 | 国产爆乳美女娇喘呻吟 | 51精品免费视频国产专区 | 成av人片在线观看天堂无码 | 久草视频精品 | 中文字幕无码不卡一区二区三区 | 国产最大成人亚洲精品 | 精品久久一 | 国产午夜精品一区二区三区极品 | av日日夜夜| 性高朝久久久久久久久久 | 永久免费在线播放 | 亚洲污视频 | 国产在线视频福利资源站 | 天堂av无码大芭蕉伊人av不卡 | 一区二区免费在线 | 又大又黄又粗又爽的免费视频 | 精品无码久久久久久久久 | 久久久99精品免费观看 | 亚洲精品久久久久久不卡精品小说 | 亚洲午夜未满十八勿入 | 日韩在线视频一区二区三区 | 末发育娇小性色xxxxx | 国产亚洲精品在av | 人妻av综合天堂一区 | 无码精品国产d在线观看 | 人妻系列无码专区av在线 | 精品国产av色一区二区深夜久久 | 亚洲日韩乱码中文无码蜜桃臀网站 | 国产凸凹视频一区二区 | 日本xxxx人| 中文字幕+乱码+中文乱码www | 亚洲成av人片不卡无码久久 | 亚洲国产成人精品无码区99 | 又粗又大又黄又爽的免费视频 | 一级性视频 | 性饥渴的农村熟妇 | 两个人看的www免费视频中文 | 精品国产一区二区三区免费 | 日本精品少妇一区二区三区 | 热99re久久国超精品首页 | 中国精学生妹品射精久久 | 亚洲精品无播放器在线播放 | 97在线精品视频 | 激情小视频在线观看 | 麻豆自拍视频 | 亚洲国产成人精品无码区在线 | 欧美 亚洲 国产 日韩 综aⅴ | 亚洲天堂8| 亚洲国产精品麻豆 | 久久这里只有免费精品6www | 天天上天天干 | av手机在线免费观看 | 欧美熟妇性开放 | 性色av一区二区三区红粉影视 | 色猫咪av在线观看 | 久久婷婷五月综合色丁香花 | 一区一区三区产品乱码 | 欧美人禽杂交狂配免费看 | 欧美日韩aa | 久久99精品久久久久久野外 | 亚洲自拍偷拍精品视频 | 亚洲午夜激情网 | 国产精品亚洲色婷婷99久久精品 | 精品无码一区二区三区不卡 | 800av凹凸视频在线观看 | 2019狠狠干| 日韩久久视频 | 黄色麻豆视频 | 日本中文一区二区三区亚洲 | 娇妻玩4p被三个男人伺候电影 | 国产一区二区三区毛片 |