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

duhuaiguo
級(jí)別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個(gè)
工控威望: * 點(diǎn)
下載積分: * 分
在線時(shí)間: (小時(shí))
注冊(cè)時(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 | 自拍偷拍色| xxxx国产视频 | 日本少妇喷水 | 色图网址 | 亚洲va在线观看 | 色婷婷狠狠18禁久久 | 日本一区二区视频在线播放 | 影音先锋在线中文字幕 | 亚洲欧洲自拍偷拍 | 欧美亚洲一区二区三区 | 欧美激情精品久久久久久免费 | 中文字幕久久久 | av黄色免费在线观看 | 国产精品欧美激情在线 | 老熟妇毛片| 男男play呻吟动漫网站 | 国产在线国偷精品免费看 | 91精品婷婷国产综合久久 | 日韩激情一区二区三区 | 国产香蕉在线视频 | 国产精品综合久久久久久 | 蜜臀久久精品 | 一区二区三区四区在线 | 狠狠ri| 亚洲综合日韩 | 一区二区视频网站 | 齐天大性床战铁扇公主 | 国产毛茸茸 | 日韩bbw | wwwav在线播放| 91亚瑟视频| 黄色免费av网站 | 无码h黄肉3d动漫在线观看 | 日韩欧美视频免费观看 | 黄色高清片| 另类在线视频 | 97少妇 | 毛片哪里看 | 日本午夜免费福利视频 | 日本性xxxxx| 69视频在线观看 | 六月激情 | 国产一级片网址 | 欧美成人免费在线观看 | 欲求不满在线小早川怜子 | 51妺嘿嘿午夜福利 | 亚洲在线视频 | 4虎tv| 99这里精品| 在线观看的av | 91污网站 | 337p嫩模大胆色肉噜噜噜 | 91学生片黄 | 午夜不卡视频 | 波多野结衣中文字幕一区 | 久久综合久 | 国产视频一区二区三区四区 | 免费91看片 | 少妇视频网 | 久久色在线观看 | 欧亚av | 久久久水蜜桃 | 日日射射 | 日韩中文字幕不卡 | 国产男男chinese网站 | 999国产视频 | 97蜜桃网| 欧美在线观看一区二区三区 | 成年黄色网 | 中文字幕一区二区三区免费视频 | 亚洲天堂影视 | 乖疼润滑双性初h | 欧美一卡二卡在线 | 国产伦精品一区二区三 | 国产成人一区二区三区电影 | 性欧美在线 | av资源网在线观看 | 亚洲国产精品无码久久久久高潮 | 成年人网站免费 | 波多野结衣一区二区三区高清 | 国产在线拍揄自揄拍无码 | 91成人免费观看 | 日本一二三不卡视频 | 影音先锋男人天堂 | 免费男女视频 | 久久久久亚洲av无码专区 | 日韩在线电影一区 | av自拍偷拍 | 国产精品成人99一区无码 | 国产操比视频 | 国产午夜手机精彩视频 | 亚洲欧美国产一区二区 | av导航网|