cvlsam
富士低壓,POD(觸摸屏),PLC專賣(mài)
級(jí)別: VIP會(huì)員
![]() ![]() ![]() ![]() |
很明顯,地址越界…… |
---|---|
|
qiaoshougang
級(jí)別: 略有小成
![]() |
謝謝回答,就是這個(gè)錯(cuò)誤,可是怎么弄才能解決這個(gè)問(wèn)題呢?我弄了好長(zhǎng)時(shí)間了,望賜教,謝謝! |
|
---|---|---|
|
cvlsam
富士低壓,POD(觸摸屏),PLC專賣(mài)
級(jí)別: VIP會(huì)員
![]() ![]() ![]() ![]() |
解決你的程序,那是你的編程錯(cuò)誤,增加對(duì)數(shù)據(jù)塊長(zhǎng)度的檢測(cè),然后通過(guò)比較指令將你的尋址范圍控制在可控范圍內(nèi)…… Regards |
---|---|
|
qiaoshougang
級(jí)別: 略有小成
![]() |
首先謝謝指教! 1.數(shù)據(jù)塊長(zhǎng)度檢測(cè): ![]() 2.尋址范圍絕對(duì)超不過(guò)255 一個(gè)字節(jié) 是否是因?yàn)?nbsp; L MD 116 SLD 3 //左移3位,形成指針格式,用于間接尋址。 T MD 120 OPN DB 1 L DBD [MD 120] T MD 124 中的MD 120 本身是一個(gè)32位的數(shù)據(jù)?而CPU誤以為越界了呢?請(qǐng)指教.......謝謝! |
|
---|---|---|
|
cvlsam
富士低壓,POD(觸摸屏),PLC專賣(mài)
級(jí)別: VIP會(huì)員
![]() ![]() ![]() ![]() |
唉~~~~~ 數(shù)據(jù)塊長(zhǎng)度檢測(cè)并不是通過(guò)頁(yè)面設(shè)定,而是通過(guò)編程來(lái)決定的。 通過(guò)裝入DBLG來(lái)得到數(shù)據(jù)塊的長(zhǎng)度,因?yàn)殚L(zhǎng)度的反饋值為字節(jié),因此,如果你的數(shù)據(jù)塊的數(shù)據(jù)為4個(gè)字節(jié)的Real類型的話,你就要除以4,那就是一個(gè)塊中的最大尋址,然后用比較去控制你的尋址指針。 正如你表示的,不超過(guò)255,可是,你顯示的數(shù)據(jù)塊中數(shù)據(jù)才51條,你尋址尋址52就越界,Ok? 對(duì)于這個(gè)問(wèn)題已經(jīng)討論的足夠深度了,你或許的編程水平還沒(méi)有達(dá)到這個(gè)水平,你需要花足夠的時(shí)間參閱StL手冊(cè)。 Regards |
---|---|
|
qiaoshougang
級(jí)別: 略有小成
![]() |
嘿嘿,首先我承認(rèn)我的水平一般(剛開(kāi)始學(xué)習(xí)西門(mén)子PLC),的確小白一個(gè), ![]() 可是:我確定MD116中的數(shù)據(jù)不會(huì)超過(guò)204的 即使MD116中的數(shù)據(jù)是4,還是不行,但是讀取MD124中的數(shù)據(jù)是正確的,如圖: ![]() |
|
---|---|---|
|