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一区二区 | 国产乱码精品 | 亚洲午夜影视 | 天堂中文在线网 | 专干老肥女人88av | 男生操女生动漫 | 6680新视觉电影免费观看 | 精品综合| www.国产黄色 | 成人网免费视频 | 轮番上阵免费观看在线电影 | 亚洲一区二区在线免费观看 | 无码人妻aⅴ一区二区三区69岛 | 在线只有精品 | 国产精品久久久久久久久久免费看 | 亚洲骚| 亚洲福利视频一区二区 | 麻豆视频一区二区 | 国产91白丝在一线播放 | 国产中文在线 | 亚洲精品自拍偷拍 | 99视频在线精品免费观看2 | 国产精品麻豆一区二区 | 亚洲人人爱 | 欧美激情自拍偷拍 | 蜜臀在线观看 | 91禁动漫在线 | 亚洲av无一区二区三区 | 精品亚洲aⅴ无码一区二区三区 | 91黄视频在线观看 | 精品亚洲国产成av人片传媒 | 久久久久伊人 | 骚狐网站 | 男人天堂久久久 | 性做久久久久久 | 人人综合网| 日韩精品自拍偷拍 | 尤物天堂 | 欧美成人综合在线 | 国产专区精品 | 偷拍一区二区三区 | 中文字幕日韩在线视频 | 成年人在线播放视频 | 五十路熟母 | 欧美成人一二区 | 中文字幕第9页 | 丝袜美腿一区二区三区 | 阿拉伯性视频xxxx | 久久久久97国产 | 久久精热 | 男生和女生操操 | 无码人妻av免费一区二区三区 | 亚洲影视在线 | 亚洲亚洲人成综合网络 | 婷婷四房综合激情五月 | 久久久久亚洲av成人无码电影 | 一区二区伦理 | 播播网色播播 | 欧美在线播放 | 最新国产网址 | 成年人在线观看视频 | 性色av一区二区三区免费 | 色播在线观看 | a级无遮挡超级高清-在线观看 | 国产一区二区三区视频免费观看 | 在线观看国产精品入口男同 | 成人午夜小视频 | 韩国激情呻吟揉捏胸视频 | 午夜视频污 | 九九热免费视频 | 四色成人网 | 中文字幕一区二区三区av | www.亚洲国产| 天天操天天操天天操 | 一级片久久久 | 男人av网 | 欧美三级一区二区 | 日韩视频区| 久操精品视频 | 日韩免费高清视频网站 | 欧美另类tv | 国产无遮挡又黄又爽 | 秋霞福利 | 国产视频1区2区 | 免费三级在线 | 毛片导航 | 国产成人免费 | 九一精品一区 | 双性娇喘浑圆奶水h男男漫画 | 日韩黄色av网站 | 在线色播| 777精品伊人久久久久大香线蕉 | 女人脱裤子让男人捅 | 国产精品.www | 日韩高清二区 | 欧美大片高清 |