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

主站蜘蛛池模板: 久久综合久久综合久久综合 | 91免费网 | 亚洲国产专区 | 精品欧美一区二区久久久久 | 成人春色影视 | 国产91在线高潮白浆在线观看 | 国产一区二区在 | 脱裤吧导航 | 国产精品自拍99 | 最新国产在线视频 | 91精品久久久久久久 | 校园春色综合 | 黄色成年人网站 | 欧美91成人网 | 成人在线天堂 | 性史性dvd影片农村毛片 | 亚洲精品久久久久久 | 羞羞的视频网站 | 免费观看一区二区三区毛片 | 人妻激情偷乱视频一区二区三区 | 日本内谢少妇xxxxx少交 | 亚洲成色在线 | 免费黄色av网站 | 日本大胆人体视频 | 中文在线观看免费视频 | 7799精品视频| 男人天堂视频网站 | 色吊丝中文字幕 | 激情小说亚洲色图 | 日韩高清在线 | 在线免费黄色av | 国产h在线观看 | 婷婷tv| 今天高清视频在线观看视频 | www.欧美| 狠狠插av | 青青草免费公开视频 | 国产在线激情视频 | 欧美夜夜骑 | 成人毛片在线精品国产 | 欧美色爽| 人妻丝袜一区二区三区 | 成人激情开心 | 都市激情男人天堂 | 狠狠操夜夜爽 | 男人久久久 | 国产精品视屏 | 成人青青草 | 黑人操日本女人 | 一区二区av | 色小妹av | 久久99精品国产.久久久久久 | 丰满孕妇性春猛交xx大陆 | 亚洲热在线观看 | 人妻少妇一区二区 | 国产精品无码一区二区三区三 | 欧美美女色图 | 女人下部全棵看视频 | 成人午夜在线观看视频 | 亚洲精品伦理 | 天天做夜夜爱 | 亚洲精品成a人在线观看 | 制服诱惑一区二区三区 | 成人一级视频 | 国产高清在线精品 | 成人亚洲精品 | 91网站视频在线观看 | 一起艹在线观看 | 国产一区二区免费电影 | 国产一区日韩 | 午夜一二三 | av电影在线观看网址 | 亚洲a在线播放 | 毛片最新网址 | 中文字幕综合在线 | 亚洲av无码国产精品久久久久 | 制服丝袜在线视频 | 国产一级片 | 亚洲区一区二区三区 | 二区在线播放 | 依人在线视频 | 狠狠躁夜夜躁av无码中文幕 | 96在线视频 | china国模大尺度pics | 在线免费av网站 | 猎艳山村丰满少妇 | 小视频在线播放 | 成人国产一区二区三区精品麻豆 | 91在线欧美 | 成人免费影院 | 中文字幕在线日亚洲9 | 逼逼av| 欧美一二三四五区 | 绯色av蜜臀vs少妇 | 第一页国产 | 老司机一区 | 91美女在线视频 | 国产100页 | 韩国一区二区三区在线观看 |