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

duhuaiguo
級別: *
精華主題: * 篇
發帖數量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看duhuaiguo的 主題 / 回貼
樓主  發表于: 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

主站蜘蛛池模板: 加勒比综合在线 | av男人网 | 亚洲一级免费毛片 | 日韩在线观看一区二区 | 黄色片一级片 | 法国经典free性复古xxxx | 欧美老熟妇xb水多毛多 | 在线免费观看高清视频 | 欧美高清hd18日本 | 姝姝窝人体www聚色窝 | 69视频在线观看 | 影音先锋中文在线 | 精品动漫一区二区三区的观看方式 | 激情二区 | 闺蜜张开腿让我爽了一夜 | 亚洲h动漫 | 欧美日韩一区精品 | 高潮爽爆喷水h | 久草资源 | 亚洲天堂777 | 色老头av | 日韩一区二区三区在线播放 | 大桥未久视频在线观看 | 成人福利影院 | a亚洲天堂 | 日本福利一区二区 | 粗大的内捧猛烈进出视频 | 免费在线观看黄色av | 日韩欧美视频一区二区 | 日韩性xxx| 九九在线观看高清免费 | 久热av在线 | 男人的天堂免费视频 | 免费毛片软件 | 国产精品视频入口 | 乌克兰av在线 | 国产福利不卡 | 伊人久久大香线 | 精品国产乱码久久 | 中文字字幕第183页 精品无码人妻一区二区三 av一区二区三区在线 | 美女被叉叉的影院 | 在线观看精品 | 夜夜艹| 久久久av网站 | 国产日韩av在线播放 | 亚洲国产精品99久久久久久久久 | 乱色精品无码一区二区国产盗 | 国产精品久久久久三级 | 入禽太深免费视频 | 天天干天天操天天 | 亚洲国产系列 | 午夜影院福利 | www.成人在线 | 欧美一级片在线视频 | 久久精品视频网站 | 欧美日韩有码 | 欧美日韩色视频 | 手机看片欧美 | 中文字幕精品久久久 | 日韩成人三级 | 麻豆一区二区三区 | 深爱综合网 | eeuss一区| 国产精品亚洲成在人线 | www.久久久久久久久 | 中文字幕一区二区人妻在线不卡 | 国产精品久久久影院 | 色呦呦官网 | 久热在线视频 | 国产精品毛片一区二区在线看 | 亚洲特级黄色片 | 97夜夜 | 综合久色 | 日本国产一区二区 | 中文字幕乱妇无码av在线 | a级在线观看网站 | 午夜精品导航 | 色多多在线视频 | 日韩成人高清 | 5个黑人躁我一个视频 | 日韩福利视频 | 国产资源网 | 国产高清免费观看 | 成年人视频在线 | 婷婷色婷婷 | 亚洲伦理视频 | ass精品国模裸体欣赏pics | 麻豆视频在线观看免费网站 | 欧美brazzers | 欧美特黄aaa | 97超在线| 亚洲呦呦| 一级片中文 | 成人污视频 | 日韩午夜毛片 | 国产午夜电影在线观看 | 瑟瑟网站在线观看 | 亚洲一区二区 | 久久av网|