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

主站蜘蛛池模板: 丰满人妻一区二区三区免费 | 亚洲日本国产 | 网站av | 亚洲av综合色区无码另类小说 | 操一操日一日 | 贝利弗山的秘密在线观看 | 手机免费在线观看av | 午夜宅男网| 国产在线久 | 人妻熟女一区二区三区 | 午夜精品国产 | 污视频在线观看网站 | 中文字幕高清av | 成人不卡在线 | 黄色最新网址 | 亚洲成a人| 国产良妇出轨视频在线观看 | 天天天天天天操 | 一区二区欧美精品 | 小小姑娘电影大全免费播放 | 成全影视在线观看第8季 | 一级高清视频 | 欧美色激情 | 亚洲高清不卡 | 一级少妇女片 | 亚洲久爱 | 狂野欧美 | 一区二区视频免费看 | 日本一区二区三区视频在线观看 | 欧美久久久久久久久 | 亚洲成a人无码 | 一区二区自拍偷拍 | 91精品久久久久久久久 | 91在线综合| 国产精品色哟哟 | 午夜在线播放视频 | 中文字幕在线免费视频 | www.热久久| 黄色视屏在线 | 91香蕉视频官网 | 拍国产真实乱人偷精品 | 国产欧美日本在线 | 免费网站观看www在线观 | 欧美精品123 | 亚洲一级二级片 | 日本美女动态 | 成人网址在线观看 | 久久一二区 | 日韩欧美一区二区在线观看 | 中文字幕日韩一区 | 成年人黄色一级片 | 枫花恋在线观看 | 中文字幕一区二区三区手机版 | 在线观看免费黄视频 | 色女人av| 精品视频久久 | 91久久久久一区二区 | 日本天堂在线观看 | 成人免费版欧美州 | 天天操你 | 欧美大片在线免费观看 | 日韩欧美中文字幕一区二区 | 毛片aaaaa| 亚洲jizzjizz日本少妇 | 锕锕锕锕锕锕锕锕 | 国产亚洲成人av | 欧美综合影院 | 国产精品免费久久久久 | 僵尸叔叔在线观看国语高清免费观看 | 久草a在线 | 欧美日韩国产不卡 | 国产精品成人免费一区久久羞羞 | 日本一区二区三区视频免费看 | 少妇 av| 欧美一区二区三区免费观看 | 亚洲av成人一区二区国产精品 | 夜夜精品视频 | 国产精品一二三四 | 成人深夜福利视频 | 欧美性生交xxxxx | 婷婷久久精品 | 激情专区 | 欧美乱轮| 加勒比在线一区 | 激情自拍视频 | 人人av在线 | 国产欧美视频一区 | 国产精品无码久久久久成人app | julia一区二区 | 一区二区三区黄色 | 欧美日韩国产中文 | 日韩精品一区二区三区免费视频 | 青青草国产在线视频 | 91精品国产综合久久久密臀九色 | 日本三级片在线观看 | 日韩成人在线观看视频 | 中文字幕在线二区 | 日韩精品久久久久 | 欧美一级片在线观看 |