91美女视频-亚洲免费观看视频-欧美a∨-久热在线视频-日韩黄网站-成av人片在线观看www-久操综合-超碰av在线播放-性欧美欧美巨大69-婷婷二区-av男人的天堂网-中文字幕一区在线播放-玖草在线观看-国产网址在线观看-免费在线不卡av

duhuaiguo
級別: *
精華主題: * 篇
發(fā)帖數(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

主站蜘蛛池模板: 激情久久婷婷 | 国产成人精品一区二区在线观看 | 福利在线视频导航 | 伊人888| 每日更新av | 看片网址国产福利av中文字幕 | japanese国产在线 | 日日爽日日操 | 奇米影视第四色777 国产成人免费观看 | 国产精品国产精品国产 | 在线观看日本一区二区 | 成人香蕉网 | 熟女俱乐部一区二区视频在线 | 91九色视频 | 天堂网2014 | 大奶一区| 美女被草出水 | 婷婷黄色网 | 久久成人毛片 | 亚洲第一二三区 | 欧美黑人一级片 | 亚洲在线一区二区三区 | 99久久99九九99九九九 | 国产午夜精品久久久久久久 | 国产13页 | 天天艹天天射 | 超碰福利在线 | 日本少妇激情视频 | 国产亚洲欧美一区二区三区 | 国产又粗又长 | 国产人妖一区二区三区 | 羞视频在线观看 | 少妇一区二区视频 | 天干夜夜爽爽日日日日 | 天降女子| 国产精品视频区 | 91精品久久久久久综合五月天 | 亚洲在线精品 | 日韩在线你懂的 | 日本私人影院 | 欧美一区二区在线播放 | 日韩午夜视频在线观看 | 中文字幕视频网 | 狠狠欧美 | 日韩一区二区在线视频 | 国产丝袜在线 | xxxxx黄色片 欧美亚洲一 | 少妇的激情 | 国产欧美日韩在线观看 | 九色porn| 日韩在线播放视频 | www久久久| 调教一区二区 | 亚洲一区二区三区在线播放 | 国产一区欧美二区 | 国产免费不卡av | 久久久免费看片 | 久久婷婷亚洲 | 欧美片在线观看 | 懂色av成人一区二区三区 | 日剧再来一次第十集 | av免费观| 人人草网站 | 国产精品调教 | 高清欧美性猛交 | 日韩在线中文 | 蜜桃臀av| 男人与雌性宠物交啪啪 | 人人妻人人澡人人爽人人dvd | 曰本黄色大片 | 水蜜桃av无码 | 日韩激情在线观看 | 国产精品一区二区av日韩在线 | 久久这里精品 | 东京av男人的天堂 | 久久久久久久国产视频 | 国产区91 | 久久在线免费观看视频 | 国产调教在线观看 | 女性裸体瑜伽无遮挡 | 日韩成人一区二区 | 国产乱码精品一区二区三区忘忧草 | 色婷婷视频在线观看 | 国产精品果冻传媒 | 亚洲国产精品欧美久久 | 亚洲AV无码成人精品区明星换面 | 奇米影视777第四色 jizz在线免费观看 | 密臀av| jlzzjlzz亚洲女人18 | 亚洲AV综合色区无码国产播放 | 国产精品久久久久久妇女6080 | 性一交一黄一片 | 香蕉视频最新网址 | 91美女片黄 | 猫咪av网 | 潘甜甜在线 | 国产又爽又黄视频 | 日韩欧美日本 | 91中文视频 |