西门子代理商_西门子变频器总代理-翰粤百科

咨詢熱線

18621916738

當前位置:首頁  >  技術文章  >  西門子S7300 CPU寄存器狀態字的用法

西門子S7300 CPU寄存器狀態字的用法

更新時間:2016-01-04      點擊次數:1455

西門子S7300 CPU寄存器狀態字的用法

1.引言

    CPU寄存器狀態字的各位給出了有關指令狀態或結果的信息以及所出現的錯誤,我們可以將二進制邏輯操作狀態位信號狀態直接集成到程序中,以控制程序執行的流程。

2.狀態字寄存器

    先簡單介紹一下CPU中狀態字。
● 檢查位:狀態字的0位稱作檢查位,如果/FC 位的信號狀態為“0”,則表示伴隨著下一條邏輯指令,程序中將開始一個新的邏輯串。FC前面的斜杠表示對FC取反。 
● 邏輯運算結果:狀態字的第1位為RLO 位(RLO= “邏輯運算結果”),在二進制邏輯運算中用作暫時存儲位。比如,一串邏輯指令中的某個指令檢查觸點的信號狀態,并根據布爾邏輯運算規則將檢查的結果(狀態位)與RLO位進行邏輯門運算,然后邏輯運算結果又存在RLO位中。 
● 狀態位:狀態位(第2位)用以保存被尋址位的值。狀態位總是向掃描指令(A,AN,O,…)或寫指令(=,S,R,)顯示尋址位的狀態(對于寫指令,保存的尋址位狀態是本條寫指令執行后的該尋址位的狀態)。 
● OR位:在用指令OR執行或邏輯操作之前,執行與邏輯操作的時候,就需要用到OR這一狀態位。OR位表示先前執行的與邏輯操作產生的值為“1”,于是,邏輯操作或的執行結果就已被確定為“1”。 
● OV位:溢出表示算術或比較指令執行時出現了錯誤。根據所執行的算術或邏輯指令結果對該位進行設置。 
● OS位:溢出存儲位是與OV位一起被置位的,而且在更新算術指令之后,它能夠保持這種狀態,也就是說,它的狀態不會由于下一個算術指令的結果而改變。 這樣,即使是在程序的后面部分,也還有機會判斷數字區域是否溢出或者指令是否含有無效實數。OS位只有通過如下這些命令進行復位:JOS(若OS = 1,則跳轉)命令,塊調用和塊結束命令。 
● CC1及CC0位:CC1和CC0(條件代碼)位給出有關下列結果的相關信息: 
• 算術指令結果 
• 比較指令結果 
• 字邏輯指令
• 在移位功能中,移出位相關信息。 
可以用以下指令來檢查條件代碼CC1和CC0。

CC1 CC0 檢查完成后,如果:

0 0 A == 0 結果 =0 

1 0 A > 0  結果 > 0

0 1 A < 0  結果 < 0

● BR位:狀態字的第8位稱為二進制結果位。它將字處理程序與位處理起來,在一段既有位操

    作又有字操作的程序中,用于表示字邏輯是否正確。將BR位加入程序后,無論字操作結果如何,都不會造成二進制邏輯鏈中斷。在梯形圖的方塊指令中,BR位與ENO位有對應關系,用于表明方塊指令是否被正確執行:如果執行出現了錯誤,BR位為0,ENO位也為0;如果功能被正確執行,BR位為1,

    ENO位也為1。在用戶編寫的FB/FC程序中,應該對BR位進行管理,功能塊正確執行后,使BR位為1,否則使其為0。使用SAVE指令將RLO存入BR中,從而達到管理BR位目的。

狀態字的9-15位未使用。

3.具體使用

    下面我們結合STEP7中的指針編程來具體介紹條件碼CC0/CC0的用法。

    不同的指令在CPU中執行時間是不同的。浮點數比定點數執行時間要長;字邏輯指令比位邏輯指令執行時間要長;在某些程序中適當使用狀態字來進行編程可以減少CPU程序的執行時間。

例1:比如說要比較一個DB中塊的DBBO-DBB99這100個字節是正數是負數還是0,正數用1來表示;負數用-1來表示;0用0來表示。并且將對應結果存入MB200開始的100個字節中。我們通常的做法可能為:

 

如果利用條件碼來進行編程,既可以減少程序的大小還會減少一定的指令執行時間,我們只需要將

中間的比較程序加以優化,即可以達到目的。

 

   例2:根據狀態位C0和CC1的狀態而跳轉的跳轉功能指令JZ不改變任何狀態位的狀態,而且邏輯操作結果RLO值也會“隨著”該跳轉功能帶到跳轉程序段中,供用戶程序其它邏輯操作之用(不改變/FC狀態)。 
示例 兩個整數相減并需進行連續判斷: 
    L MW2 
    L MW8 
    -I 
    JZ ZERO // 如果結果等于“0”,則跳轉至標號ZERO處 
             // 結果不等于“0”時所執行的指令 
    ZERO:   // 結果等于“0”時,所要執行的指令 
  如果用戶不熟悉JZ指令和狀態位C0和CC1的具體含義,編程時就需要通過比較指令將比較結果存入一個二進制位中,再根據這個二進制位通過JC/JCN指令來控制程序的執行了。

例3:我們實際應用中可能要利用某些協議轉換網關(比如說Hilscher公司的NTTAP系列網關)來和某些串口協議的儀表進行通信時,會遇到CRC校驗的問題,關于CRC校驗時需要判斷溢出位是否為1的問題來進行程序的進一步計算。我們以EURO2408的MODBUS通信時需要的CRC校驗為例說明CRC校驗的步驟:

1、裝載16#FFFF到一個16位CRC寄存器;

2、將CRC寄存器的高8位字節與信息中的*個8位字節相異或,結果返回到CRC寄存器中;

3、將CRC寄存器數據向右移動一位;

4、如果溢出的位等于1,則將CRC寄存器與16#A001相異或,結果返回到CRC寄存器中;

4、如果溢出的位等于0,則重復第3步;

5、重復第3、4步驟,直到已經移位了8次;

6、將CRC寄存器的高8位字節與信息中的下一個8位字節相異或,結果返回到CRC寄存器中;

7、重復第3步到第6步,直到信息中所有字節都與CRC寄存器相異或,并都移位了8次;

8、zui后的CRC寄存器中的結果即為CRC校驗碼,zui后被添加到信息(數據)的末尾(交換!低8位

在前,高8位在后;)

在第4步中需要判斷溢出的位是否為1,如何判斷對于整個程序有著重要的影響。我們可以用A>0指令來判斷這個條件,具體代碼的編寫,有興趣時大家可以根據上面的步驟編寫一個自己的CRC程序。

4.結束語

在一般情況下,我們不必考慮這些狀態位,但在某些情況下,利用這些狀態位并結合一定的指令,可以給我們的編程帶來更大的靈活性,同時對于進一步提高自己的編程水平也有一定的作用。

聯系我們

上海翰粵自動化系統有限公司 公司地址:上海市松江區思賢路2399弄137號   技術支持:化工儀器網
  • 聯系人:黃政武
  • QQ:76868608
  • 公司傳真:021-57657276
  • 郵箱:76868608@qq.com

掃一掃 更多精彩

微信二維碼

網站二維碼

主站蜘蛛池模板: 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 | LOGO设计_品牌设计_VI设计 - 特创易 | 广西绿桂涂料--承接隔热涂料、隔音涂料、真石漆、多彩仿石漆等涂料工程双包施工 | 空气能暖气片,暖气片厂家,山东暖气片,临沂暖气片-临沂永超暖通设备有限公司 | 旗杆生产厂家_不锈钢锥形旗杆价格_铝合金电动旗杆-上海锥升金属科技有限公司 | 生物颗粒燃烧机-生物质燃烧机-热风炉-生物颗粒蒸汽发生器-丽水市久凯能源设备有限公司 | 儿童乐园|游乐场|淘气堡招商加盟|室内儿童游乐园配套设备|生产厂家|开心哈乐儿童乐园 | MVR蒸发器厂家-多效蒸发器-工业废水蒸发器厂家-康景辉集团官网 | 尾轮组_头轮组_矿用刮板_厢式刮板机_铸石刮板机厂家-双驰机械 | 软文世界-软文推广-软文营销-新闻稿发布-一站式软文自助发稿平台 | 合肥风管加工厂-安徽螺旋/不锈钢风管-通风管道加工厂家-安徽风之范 | 安徽合肥格力空调专卖店_格力中央空调_格力空调总经销公司代理-皖格制冷设备 | 杭州代理记账多少钱-注册公司代办-公司注销流程及费用-杭州福道财务管理咨询有限公司 | 京港视通报道-质量走进大江南北-京港视通传媒[北京]有限公司 | 烟台游艇培训,威海游艇培训-烟台市邮轮游艇行业协会 | 赛尔特智能移动阳光房-阳光房厂家-赛尔特建筑科技(广东)有限公司 | 安全光栅|射频导纳物位开关|音叉料位计|雷达液位计|两级跑偏开关|双向拉绳开关-山东卓信机械有限公司 | LOGO设计_品牌设计_VI设计 - 特创易| 济南网站建设|济南建网站|济南网站建设公司【济南腾飞网络】【荐】 | 顶呱呱交易平台-行业领先的公司资产交易服务平台 | 烟台游艇培训,威海游艇培训-烟台市邮轮游艇行业协会 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 | 防锈油-助焊剂-光学玻璃清洗剂-贝塔防锈油生产厂家 | 贵阳用友软件,贵州财务软件,贵阳ERP软件_贵州优智信息技术有限公司 | 活动策划,舞台搭建,活动策划公司-首选美湖上海活动策划公司 | 苏州伊诺尔拆除公司_专业酒店厂房拆除_商场学校拆除_办公楼房屋拆除_家工装拆除拆旧 | 车件|铜件|车削件|车床加工|五金冲压件-PIN针,精密车件定制专业厂商【东莞品晔】 | LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | 水篦子|雨篦子|镀锌格栅雨水篦子|不锈钢排水篦子|地下车库水箅子—安平县云航丝网制品厂 | 铝箔袋,铝箔袋厂家,东莞铝箔袋,防静电铝箔袋,防静电屏蔽袋,防静电真空袋,真空袋-东莞铭晋让您的产品与众不同 | 东莞注册公司-代办营业执照-东莞公司注册代理记账-极刻财税 | 电动葫芦|防爆钢丝绳电动葫芦|手拉葫芦-保定大力起重葫芦有限公司 | 抖音短视频运营_企业网站建设_网络推广_全网自媒体营销-东莞市凌天信息科技有限公司 | 防火门-专业生产甲级不锈钢钢质防火门厂家资质齐全-广东恒磊安防设备有限公司 | 打包箱房_集成房屋-山东佳一集成房屋有限公司 | 钛板_钛管_钛棒_钛盘管-无锡市盛钛科技有限公司 | CTAB,表面活性剂1631溴型(十六烷基三甲基溴化铵)-上海升纬化工原料有限公司 | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 气动球阀_衬氟蝶阀_调节阀_电动截止阀_上海沃托阀门有限公司 | 消防设施操作员考试报名时间,报名入口,报考条件 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 |