![松下PLC編程手冊之高級(jí)指令F99-F_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/21/af413fc5-ae0b-49df-bdcb-a3d81ee41598/af413fc5-ae0b-49df-bdcb-a3d81ee415981.gif)
![松下PLC編程手冊之高級(jí)指令F99-F_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/21/af413fc5-ae0b-49df-bdcb-a3d81ee41598/af413fc5-ae0b-49df-bdcb-a3d81ee415982.gif)
![松下PLC編程手冊之高級(jí)指令F99-F_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/21/af413fc5-ae0b-49df-bdcb-a3d81ee41598/af413fc5-ae0b-49df-bdcb-a3d81ee415983.gif)
![松下PLC編程手冊之高級(jí)指令F99-F_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/21/af413fc5-ae0b-49df-bdcb-a3d81ee41598/af413fc5-ae0b-49df-bdcb-a3d81ee415984.gif)
![松下PLC編程手冊之高級(jí)指令F99-F_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/21/af413fc5-ae0b-49df-bdcb-a3d81ee41598/af413fc5-ae0b-49df-bdcb-a3d81ee415985.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)移位寫入數(shù)據(jù)移位寫入 操作數(shù)操作數(shù)A: 可以使用N/A: 不可使用程序示例程序示例概述概述將數(shù)據(jù)移入指定數(shù)據(jù)表的最小地址中,并向高地址壓縮。 F99 (CMPW) F99 (CMPW) F99F99(PCMPWPCMPW) 1011ST R 20F 99 (CMPW)DT 10DT 0DT 5存放移進(jìn)的16位常數(shù)或16位區(qū) S地址指令梯形圖程序布爾形式(*1)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*2)對于FP2、FP2SH和FP10SH,此處為ID。區(qū)域塊的末16位區(qū)D2區(qū)域塊的首16位區(qū) D1觸發(fā)器步數(shù)適用機(jī)型7 FP-C/FP2/FP2SH/ FP3 CPU Ve
2、r.3.1 or later/FP10SH7示例說明示例說明若執(zhí)行條件(觸發(fā)器)R0為ON,則數(shù)據(jù)寄存器DT5的內(nèi)容被送入數(shù)據(jù)寄存器DT10。同時(shí),在DT0至DT5的范圍內(nèi),將所有非零的數(shù)據(jù)從DT5開始順序存放。“0”被設(shè)置到數(shù)據(jù)表的另一區(qū)域。指定數(shù)據(jù)范圍F99(CMPW)執(zhí)行說明說明因?yàn)镾的內(nèi)容被寫入DT0,所以DT0的原有內(nèi)容(如“555”)被重寫。錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2 - 起始區(qū)D1與結(jié)束區(qū)D2不是相同類型的存儲(chǔ)區(qū)。錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2 - 起始區(qū)D1與結(jié)束區(qū)
3、D2不是相同類型的存儲(chǔ)區(qū)。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述在由D1和D2指定的數(shù)據(jù)表中,數(shù)據(jù)被重新排列如下:- S指定的數(shù)據(jù)被移入由D1指定的區(qū)域(起始區(qū))。- 非零數(shù)據(jù)在指定范圍內(nèi)向高地址順序序移動(dòng)(壓縮)。起始區(qū)D1和結(jié)束區(qū)D2應(yīng)為同類型的操作數(shù)。指定D1和D2時(shí)一定要使“D1D2”。若S的內(nèi)容為“0”,則只執(zhí)行壓縮移位。應(yīng)用示例應(yīng)用示例 結(jié)合F99(CMPW)/P99(PCMPW)指令,可用于構(gòu)建一個(gè)可選擇性緩沖區(qū)。(1) 執(zhí)行F99(CMPW)/P99(PCMPW)F99(CMPW)/P99(PCMPW)指令。 當(dāng)數(shù)據(jù)寫入緩沖器(指定范圍區(qū))的首地址時(shí),它們被順序保存和累積在緩沖區(qū)中。最舊
4、的數(shù)據(jù)將保存在緩 沖區(qū)的最末一個(gè)地址中。可以用于從隨機(jī)寫入的數(shù)據(jù)中抽取有效的非零數(shù)據(jù)。(2)執(zhí)行F98(CMPR)/P98(PCMPR)F98(CMPR)/P98(PCMPR)指令。當(dāng)緩沖區(qū)(指定范圍區(qū))的最末地址中的數(shù)據(jù)被讀取時(shí),從最舊的地址中開始提取數(shù)據(jù)。緩沖區(qū)中其余的數(shù)據(jù)向首地址方向移動(dòng),所以,此時(shí)最舊的數(shù)據(jù)被存放在緩沖區(qū)最舊的地址中。F99(CMPW)執(zhí)行指定數(shù)據(jù)范圍F99(CMPW)執(zhí)行每次執(zhí)行F99(CMPW)后,只有有效數(shù)據(jù)被保存。有效數(shù)據(jù)16位數(shù)據(jù)以位為單位右移位數(shù)據(jù)以位為單位右移 操作數(shù)操作數(shù)程序示例程序示例概述概述將以位單元將數(shù)據(jù)右移指定的位數(shù)。將以位單元將數(shù)據(jù)右移指定的位
5、數(shù)。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用型高級(jí)指令不適用F100 (SHR) F100 (SHR) F100 (PSHR) F100 (PSHR) 1011ST R 0F 100 (SHR)DT 0K 4右移的16位區(qū) D地址指令梯形圖程序布爾形式16位常數(shù)或16位區(qū)(規(guī)定移位的位數(shù)) n觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將數(shù)據(jù)寄存器DT0中數(shù)據(jù)右移4位。數(shù)據(jù)位3中的數(shù)據(jù)傳輸至特殊內(nèi)部繼電器(進(jìn)位標(biāo)志)。A: 可以使用N/A: 不可使用(*1
6、)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。R0:ON在這種情況下,DT0的高4位為0位址3的數(shù)據(jù)被傳送到R9009(標(biāo)志位)錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。進(jìn)位標(biāo)志(R9009):當(dāng)傳輸?shù)絉900R(第n bit)的內(nèi)容被認(rèn)為是1時(shí),瞬間為ON。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D指定的16位數(shù)據(jù)區(qū)向右(向低位)移n位。當(dāng)右移n位時(shí),- 16位數(shù)據(jù)區(qū)的高位n填充0。- 數(shù)據(jù)位n位中的數(shù)據(jù)被傳輸
7、至特殊內(nèi)部繼電器R9009(進(jìn)位標(biāo)志)。n只有16位區(qū)的低8位有效。移動(dòng)總位數(shù)可在1位至255位范圍內(nèi)指定。D的高n位為0位址3的數(shù)據(jù)被傳送到R9009(標(biāo)志位)n高8位無效K0-K255(H00-HFF)1616位數(shù)據(jù)以位為單位左移位數(shù)據(jù)以位為單位左移 操作數(shù)操作數(shù)程序示例程序示例概述概述將以位單元將數(shù)據(jù)左移指定的位數(shù)。將以位單元將數(shù)據(jù)左移指定的位數(shù)。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用型高級(jí)指令不適用F101 (SHL) F101 (SHL) P101 (PSHL) P101 (PSHL) 1011ST R 0F 101 (SHL)DT 0K
8、 4左移的16位區(qū) D地址指令梯形圖程序布爾形式16位常數(shù)或16位區(qū)(規(guī)定移位的位數(shù)) n觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將數(shù)據(jù)寄存器DT0中數(shù)據(jù)右移4位。數(shù)據(jù)位12中的數(shù)據(jù)傳輸至特殊內(nèi)部繼電器(進(jìn)位標(biāo)志)。A: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。在這種情況下,DT0的低4位為0位址3的數(shù)據(jù)被傳送到R9009(標(biāo)志位)位址12的數(shù)據(jù)
9、被傳送到R9009(標(biāo)志位)錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。進(jìn)位標(biāo)志(R9009):當(dāng)傳輸?shù)絉900R(第n bit)的內(nèi)容被認(rèn)為是1時(shí),瞬間為ON。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D指定的16位數(shù)據(jù)區(qū)向右(向低位)移n位。當(dāng)右移n位時(shí),- 16位數(shù)據(jù)區(qū)的高位n填充0。- 數(shù)據(jù)位n位中的數(shù)據(jù)被傳輸至特殊內(nèi)部繼電器R9009(進(jìn)位標(biāo)志)。n只有16位區(qū)的低8位有效。移動(dòng)總位數(shù)可在1位至255位范圍內(nèi)指定。D的高n位為0位址3的數(shù)據(jù)被傳送到R9009(標(biāo)志位)n高8位無效K0-K255(H00-HFF)32位數(shù)
10、據(jù)以位為單位右移位數(shù)據(jù)以位為單位右移 操作數(shù)操作數(shù)程序示例程序示例概述概述將以位為單位將數(shù)據(jù)右移指定的位數(shù)。將以位為單位將數(shù)據(jù)右移指定的位數(shù)。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用型高級(jí)指令不適用F102 (DSHR) F102 (DSHR) F102 (PDSHR) F102 (PDSHR) 1011ST R 0F 102 (DSHR)DT 10DT 2左移的32位數(shù)據(jù)的低16位區(qū) D地址指令梯形圖程序布爾形式16位常數(shù)或16位區(qū)(規(guī)定被移位的位數(shù))n的范圍:K0-K255(H0-HFF)n觸發(fā)器步數(shù)適用機(jī)型5 FP2/FP2SH/FP10SH5
11、A: 可以使用N/A: 不可使用錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。進(jìn)位標(biāo)志(R9009):當(dāng)傳輸?shù)絉9009(第n bit)的內(nèi)容被認(rèn)為是1時(shí),瞬間為ON。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D指定的32位數(shù)據(jù)區(qū)向右(向低位)移n位。當(dāng)右移n位時(shí),- 32位數(shù)據(jù)區(qū)的高位n填充0。- 數(shù)據(jù)位n位中的數(shù)據(jù)被傳輸至特殊內(nèi)部繼電器R9009(進(jìn)位標(biāo)志)。n只有16位區(qū)的低8位有效。移動(dòng)總位數(shù)可在1位至255位范圍內(nèi)指定。當(dāng)n指定為K0時(shí),D和D+1中的內(nèi)容以及特殊內(nèi)部數(shù)據(jù)寄存器R9009(進(jìn)位標(biāo)志)都不變化。當(dāng)n指定為K
12、32以上時(shí),D和D+1中的內(nèi)容為0.高8位無效 K0-K255 (H00-HFF)n 位為0在第n位的數(shù)據(jù)被傳送到R9009(標(biāo)志位)3232位數(shù)據(jù)以位為單位左移位數(shù)據(jù)以位為單位左移 操作數(shù)操作數(shù)程序示例程序示例概述概述將以位單元將數(shù)據(jù)左移指定的位數(shù)。將以位單元將數(shù)據(jù)左移指定的位數(shù)。 F103 (DSHL) F103 (DSHL) P103 (PDSHL) P103 (PDSHL) 1011ST R 0F 103 (DSHL)DT 10DT 2右移的32位數(shù)據(jù)的低16位區(qū) D地址指令梯形圖程序布爾形式16位常數(shù)或16位區(qū)(規(guī)定被移位的位數(shù)) n的范圍:K0-K255(H0-HFF)n觸發(fā)器步數(shù)
13、適用機(jī)型5 FP2/FP2SH/FP10SH5A: 可以使用N/A: 不可使用描述描述將由D指定的32位數(shù)據(jù)區(qū)向左(向高位)移n位。當(dāng)左移n位時(shí),- 從數(shù)據(jù)位0開始的n位填充0。-從最高數(shù)據(jù)位開始的第n位中的數(shù)據(jù)被傳輸至特殊內(nèi)部繼電器R9009(進(jìn)位標(biāo)志)。在第n位的數(shù)據(jù)被傳送到R9009(標(biāo)志位)n 位從位地址0開始為0錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。進(jìn)位標(biāo)志(R9009):當(dāng)傳輸?shù)絉900R(從最高位開始第n bit)的內(nèi)容被認(rèn)為是1時(shí),瞬間為ON。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)n只有16位區(qū)的低8位有效。移動(dòng)總
14、位數(shù)可在1位至255位范圍內(nèi)指定。 當(dāng)n指定為K0時(shí),D和D+1中的內(nèi)容以及特殊內(nèi)部數(shù)據(jù)寄存器R9009(進(jìn)位標(biāo)志)都不變化。當(dāng)n指定為K32或更大的數(shù)值時(shí),D和D+1中的內(nèi)容全部變?yōu)?。高8位無效 K0-K255 (H00-HFF) 1616位數(shù)據(jù)右移位數(shù)據(jù)右移1digit1digit(4bit4bit) 操作數(shù)操作數(shù)A: 可以使用N/A: 不可使用程序示例程序示例概述概述將指定的16位數(shù)據(jù)右移digit(4位)。對于FP-M/FP0/FP1, P型高級(jí)指令不適用。F105 (BSR) F105 (BSR) P105 (PBSR) P105 (PBSR) 1011ST R 0F 105 (B
15、SR) DT 0地址指令梯形圖程序布爾形式(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。觸發(fā)器待右移的16位區(qū) D示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將數(shù)據(jù)寄存器DT0中數(shù)據(jù)右移1個(gè)digit(4位)。第一個(gè)digit(數(shù)據(jù)位03)中的數(shù)據(jù)將被移出并且被傳輸?shù)教厥鈹?shù)據(jù)寄存器DT9014(對于FP2/FP2SH/FP10SH為DT90014)的最低digit(數(shù)據(jù)位03)中。步數(shù)適用機(jī)型3FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH3( H9
16、999 )( H999 )( H9 )錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)當(dāng)右移1個(gè)digit(4位)時(shí),- D中第一個(gè)digit(數(shù)據(jù)位03)中的數(shù)據(jù)將被移出并且被傳輸?shù)教厥鈹?shù)據(jù)寄存器DT9014(對于FP2/FP2SH/FP10SH為DT90014)的最低digit(數(shù)據(jù)位03)中。- 16位數(shù)據(jù)的第4個(gè)digit(數(shù)據(jù)位1215)填充0。描述描述將由D指定16位數(shù)據(jù)右移1個(gè)digit(4位)(向低位)。十六進(jìn)制數(shù)的位置變?yōu)? 16 16位數(shù)據(jù)左移位數(shù)據(jù)左移1digit1digit(4b
17、it4bit) 操作數(shù)操作數(shù)A: 可以使用N/A: 不可使用程序示例程序示例概述概述將指定的16位數(shù)據(jù)左移digit(4位)。對于FP-M/FP0/FP1, P型高級(jí)指令不適用。F106 (BSL) F106 (BSL) P106 (PBSL) P106 (PBSL) 1011ST R 0F 106 (BSL) DT 0地址指令梯形圖程序布爾形式(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。觸發(fā)器待左移的16位區(qū) D示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將數(shù)據(jù)寄存器DT0中數(shù)
18、據(jù)左移1個(gè)digit(4位)。第四個(gè)digit(數(shù)據(jù)位1215)中的數(shù)據(jù)將被移出并且被傳輸?shù)教厥鈹?shù)據(jù)寄存器DT9014(對于FP2/FP2SH/FP10SH為DT90014)的最低digit(數(shù)據(jù)位03)中。步數(shù)適用機(jī)型3FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH3( H8100 )( H1000 )( H8 )R0:ON 錯(cuò)誤標(biāo)志(R9007):在變址數(shù)指定區(qū)超限時(shí)為ON并保持ON。錯(cuò)誤標(biāo)志(R9008):在變址數(shù)指定的區(qū)超限時(shí)瞬間為ON。 標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)當(dāng)左移1個(gè)digit(4位)時(shí),- D中第四個(gè)digit(數(shù)據(jù)位1215)中的數(shù)據(jù)將被移出并且被
19、傳輸?shù)教厥鈹?shù)據(jù)寄存器DT9014(對于FP2/FP2SH/FP10SH為DT90014)的最低digit(數(shù)據(jù)位03)中。- 16位數(shù)據(jù)的第一個(gè)digit(數(shù)據(jù)位03)填充0。描述描述將由D指定16位數(shù)據(jù)左移1個(gè)digit(4位)(向高位)。十六進(jìn)制數(shù)的位置變?yōu)?多個(gè)多個(gè)1616位數(shù)據(jù)一并右移位數(shù)據(jù)一并右移 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)一并右移多個(gè)數(shù)據(jù)位。位數(shù)據(jù)一并右移多個(gè)數(shù)據(jù)位。F108 (BITR) F108 (BITR) P108 (PBITR) P108 (PBITR) 1011ST R 0F 108 (BITR)DT 10DT
20、 12K 4起始16位區(qū) D1地址指令梯形圖程序布爾形式結(jié)束16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型7 FP2/FP2SH/FP10SH7A: 可以使用N/A: 不可使用指定移動(dòng)位數(shù)的16位常數(shù)或16位區(qū)n示例說明示例說明當(dāng)觸發(fā)器R10為ON時(shí),將DT10DT12(3個(gè)字)內(nèi)的數(shù)據(jù)一并右移4個(gè)數(shù)據(jù)位。 3個(gè)字 4個(gè)位變?yōu)? 4個(gè)位被移出錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2 - n為16或更大的數(shù)值。錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2 - n為16或更大的數(shù)值。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)D1和D2應(yīng)當(dāng)滿足:為相
21、同類型的操作數(shù)D1 D2當(dāng)右移n位時(shí),- 起始16位數(shù)據(jù)D1中的n位數(shù)據(jù)將被移出。- 結(jié)束區(qū)16位數(shù)據(jù)D2中的n位數(shù)據(jù)將被置為0。n可以指定為015。如果指定為0,則不產(chǎn)生運(yùn)算動(dòng)作。描述描述將由D1(起始區(qū))和D2(結(jié)束區(qū))指定的16位數(shù)據(jù)右移n個(gè)數(shù)據(jù)位。指定數(shù)據(jù)范圍觸發(fā)器:ONN個(gè)位被移出n個(gè)位n個(gè)位被移出多個(gè)多個(gè)1616位數(shù)據(jù)一并左移位數(shù)據(jù)一并左移 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)一并左移多個(gè)數(shù)據(jù)位。位數(shù)據(jù)一并左移多個(gè)數(shù)據(jù)位。F109 (BITL) F109 (BITL) P109 (PBITL) P109 (PBITL) 1011ST
22、 R 0F 109 (BITL)DT 10DT 12K 4起始16位區(qū) D1地址指令梯形圖程序布爾形式結(jié)束16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型7 FP2/FP2SH/FP10SH7A: 可以使用N/A: 不可使用指定移動(dòng)位數(shù)的16位常數(shù)或16位區(qū)n示例說明示例說明當(dāng)觸發(fā)器R10為ON時(shí),將DT10DT12(3個(gè)字)內(nèi)的數(shù)據(jù)一并右移4個(gè)數(shù)據(jù)位。 3個(gè)字 4個(gè)位變?yōu)?DT12的4個(gè)位被移出錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2 - n為16或更大的數(shù)值。錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2 - n為16或更
23、大的數(shù)值。標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)D1和D2應(yīng)當(dāng)滿足:為相同類型的操作數(shù)D1 D2當(dāng)左移n位時(shí),- 結(jié)束區(qū)16位數(shù)據(jù)D2中的n位數(shù)據(jù)將被移出。- 起始16位數(shù)據(jù)D1中的n位數(shù)據(jù)將被置為0。n可以指定為015。如果指定為0,則不產(chǎn)生運(yùn)算動(dòng)作。描述描述將由D1(起始區(qū))和D2(結(jié)束區(qū))指定的16位數(shù)據(jù)左移n個(gè)數(shù)據(jù)位。最后n個(gè)位被移出觸發(fā)器:ON指定數(shù)據(jù)范圍 n個(gè)位多個(gè)多個(gè)1616位數(shù)據(jù)字位數(shù)據(jù)字單位單位(16(16位位) )右移右移 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)右移一個(gè)字(位數(shù)據(jù)右移一個(gè)字(1616位)。位)。對于對于FP-M/FP0/FP1,
24、 PFP-M/FP0/FP1, P型高級(jí)指令不適用。型高級(jí)指令不適用。F110 (WSHR) F110 (WSHR) P110 (PWSHR) P110 (PWSHR) 1011ST R 0F 110 (SHR)DT 0K 4首16位區(qū) D1地址指令梯形圖程序布爾形式末16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將DT0DT2(3個(gè)字)內(nèi)的數(shù)據(jù)右移1個(gè)字(16位)。 A: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH
25、,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。DT0的數(shù)據(jù)被移出指定數(shù)據(jù)范圍(3個(gè)字)錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D1(起始區(qū))和D2(結(jié)束區(qū))指定的16位數(shù)據(jù)右移(向低位地址)1個(gè)字(16位)。D1和D2應(yīng)當(dāng)滿足: - 為相同類型的操作數(shù) - D1 D2當(dāng)右移1個(gè)字(16位)時(shí), - 起始16位數(shù)據(jù)D1中的數(shù)據(jù)將被移出。 - 結(jié)束區(qū)16位數(shù)據(jù)D2中的數(shù)據(jù)將被置為0。起始字移出指定數(shù)據(jù)范圍結(jié)
26、尾的字變?yōu)?多個(gè)多個(gè)1616位數(shù)據(jù)字位數(shù)據(jù)字單位單位(16(16位位) )左移左移 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)左移一個(gè)字(位數(shù)據(jù)左移一個(gè)字(1616位)。位)。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用。型高級(jí)指令不適用。F111 (WSHL) F111 (WSHL) P111 (PWSHL) P111 (PWSHL) 1011ST R 0F 111 (WSHL)DT 0DT 2首16位區(qū) D1地址指令梯形圖程序布爾形式末16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/
27、 FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將DT0DT2(3個(gè)字)內(nèi)的數(shù)據(jù)右移1個(gè)字(16位)。 A: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。DT2的數(shù)據(jù)被移出指定數(shù)據(jù)范圍(3個(gè)字)錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D1(起始區(qū))和D2(
28、結(jié)束區(qū))指定的16位數(shù)據(jù)左移(向高位地址)1個(gè)字(16位)。D1和D2應(yīng)當(dāng)滿足:為相同類型的操作數(shù)D1 D2當(dāng)左移1個(gè)字(16位)時(shí),- 結(jié)束區(qū)16位數(shù)據(jù)D2中的數(shù)據(jù)將被移出。- 起始16位數(shù)據(jù)D1中的數(shù)據(jù)將被置為0。結(jié)尾的字移出指定數(shù)據(jù)范圍開始的字變?yōu)?多個(gè)多個(gè)1616位數(shù)據(jù)右移位數(shù)據(jù)右移1digit(41digit(4位位) ) 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)左移一個(gè)字(位數(shù)據(jù)左移一個(gè)字(1616位)。位)。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用。型高級(jí)指令不適用。F112(WBSR) F
29、112(WBSR) P112 (PWBSR) P112 (PWBSR) 1011ST R 0F 111 (WSHL)DT 0DT 9首16位區(qū) D1地址指令梯形圖程序布爾形式末16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將DT0DT2(3個(gè)字)內(nèi)的數(shù)據(jù)右移1個(gè)字(16位)。 A: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。指定數(shù)據(jù)范圍(1
30、0個(gè)字=40個(gè)數(shù))十六進(jìn)制數(shù)據(jù)位地址0到3被移出十六進(jìn)制數(shù)據(jù)位地址12到15變?yōu)?R0:ON錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D1(起始區(qū))和D2(結(jié)束區(qū))指定的范圍內(nèi)的16位數(shù)據(jù)右移(向低位地址)1digit(4位)。D1和D2應(yīng)當(dāng)滿足: - 為相同類型的操作數(shù) - D1 D2當(dāng)右移1digit(4位)時(shí), - 起始16位數(shù)據(jù)D1中的低位digit(數(shù)據(jù)位03)數(shù)據(jù)將被移出。 - 結(jié)束區(qū)16位數(shù)據(jù)D2中的高位digit(數(shù)據(jù)位
31、1215)數(shù)據(jù)將被置為0。十六進(jìn)制數(shù)據(jù)位地址0到3被移出十六進(jìn)制數(shù)據(jù)位地址12到15變?yōu)?指定數(shù)據(jù)范圍多個(gè)多個(gè)1616位數(shù)據(jù)左移位數(shù)據(jù)左移1digit(41digit(4位位) ) 操作數(shù)操作數(shù)程序示例程序示例概述概述將指定范圍內(nèi)的多個(gè)將指定范圍內(nèi)的多個(gè)1616位數(shù)據(jù)左移位數(shù)據(jù)左移1digit(41digit(4位位) )。對于對于FP-M/FP0/FP1, PFP-M/FP0/FP1, P型高級(jí)指令不適用。型高級(jí)指令不適用。F113 (WBSL) F113 (WBSL) P113 (PWBSL) P113 (PWBSL) 1011ST R 0F 113 (WBSL)DT 0DT 9首16位區(qū)
32、 D1地址指令梯形圖程序布爾形式末16位區(qū) D2觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)觸發(fā)器R0為ON時(shí),將DT0DT2(3個(gè)字)內(nèi)的數(shù)據(jù)右移1個(gè)字(16位)。 A: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。在16進(jìn)制數(shù)據(jù)0(位地址12到15)被移出十六進(jìn)制數(shù)據(jù)(位地址0到3)變?yōu)?指定數(shù)據(jù)范圍(10個(gè)字=40個(gè)數(shù))R0:ON錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為O
33、N并保持ON - 變址數(shù)指定區(qū)超限 - D1 D2錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - D1 D2標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述將由D1(起始區(qū))和D2(結(jié)束區(qū))指定的范圍內(nèi)的16位數(shù)據(jù)左移(向高位地址)1digit(4位)。D1和D2應(yīng)當(dāng)滿足: - 為相同類型的操作數(shù) - D1 D2當(dāng)左移1digit(4位)時(shí), - 結(jié)束區(qū)16位數(shù)據(jù)D2中的高位digit(數(shù)據(jù)位1215)數(shù)據(jù)將被移出。 - 起始16位數(shù)據(jù)D1中的低位digit(數(shù)據(jù)位03)數(shù)據(jù)將被置為0。在16進(jìn)制數(shù)據(jù)0(位地址12到15)被移出十六進(jìn)制數(shù)據(jù)(位地址0到3)變?yōu)?指定數(shù)據(jù)范圍FIFOFIFO
34、緩沖區(qū)定義緩沖區(qū)定義操作數(shù)操作數(shù)程序示例程序示例概述概述定義定義FIFOFIFO(先入先出)緩沖區(qū)條件。(先入先出)緩沖區(qū)條件。 F115 (FIFT) F115 (FIFT) P115 (PFIFT) P115 (PFIFT) 1011ST R 0DFF 115 (FIFT)K 256DT 0用來指定的16位常數(shù)或者16位數(shù)據(jù)區(qū) D地址指令梯形圖程序布爾形式FIFO緩沖區(qū)的首16位區(qū) n觸發(fā)器步數(shù)適用機(jī)型5 FP-C/FP2/FP2SH/FP3/FP10SH5示例說明示例說明當(dāng)執(zhí)行條件(觸發(fā)器)X0為ON時(shí),以DT0開始的數(shù)據(jù)區(qū)被定義為FIFO緩沖區(qū)。FIFO緩沖區(qū)的大小(K256)被存放D
35、T0中,數(shù)據(jù)項(xiàng)的數(shù)量(缺省值K0)被存放在DT1中,同時(shí)FIFO指針(缺省值H0000)存放在DT2中。當(dāng)n = K256時(shí),DT3DT258的256個(gè)字被定義為數(shù)據(jù)存儲(chǔ)區(qū)。A: 可以使用N/A: 不可使用(*1)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*2)對于FP2、FP2SH和FP10SH,此處為ID。15 0數(shù)據(jù)存儲(chǔ)區(qū)(256個(gè)字)FIFO緩沖區(qū)內(nèi)存大小存儲(chǔ)數(shù)據(jù)的數(shù)量(字)FIFO的指針執(zhí)行F0(MV)指令,傳送使能 ( 有可能覆蓋)錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - n = 0 - n 256 - 由n指定的區(qū)域超限錯(cuò)誤標(biāo)志
36、(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - n = 0 - n 256 - 由n指定的區(qū)域超限標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)描述描述本指令對用于FIFO緩沖區(qū)的區(qū)域進(jìn)行定義。從D指定的區(qū)域開始,數(shù)據(jù)存儲(chǔ)區(qū)定義為n個(gè)字(n = K1K256)。在寫入或從FIFO緩沖區(qū)讀取之前,利用F115(FIFT)指令定義緩沖區(qū)只能執(zhí)行一次。通常在執(zhí)行本指令之前,讀和寫是被禁止的。執(zhí)行F115(FIFT)指令之后,F(xiàn)IFO緩沖區(qū)定義如下:執(zhí)行F115(FIFT)指令之后,以下數(shù)值作為缺省值存儲(chǔ)如下:D = n (由F115指定的數(shù)值),D+1 = K0,D+2 = H000015 0數(shù)據(jù)存儲(chǔ)區(qū)(25
37、6個(gè)字)FIFO緩沖區(qū)內(nèi)存大小(n)存儲(chǔ)數(shù)據(jù)的數(shù)量(字)FIFO的指針01n-2n-1數(shù)據(jù)存儲(chǔ)區(qū)(n個(gè)字)讀指針(0到255/H00到HFF)寫指針(0到255/H00到HFF)FIFOFIFO緩沖區(qū)數(shù)據(jù)讀取緩沖區(qū)數(shù)據(jù)讀取 操作數(shù)操作數(shù)程序示例程序示例概述概述從從FIFOFIFO(先入先出)緩沖區(qū)中讀取數(shù)據(jù)。(先入先出)緩沖區(qū)中讀取數(shù)據(jù)。 F116 (FIFR) F116 (FIFR) P116 (PFIFR) P116 (PFIFR) 1011ST R 10DFF 116 (FIFR)DT 0DT 10 0FIFO緩沖區(qū)的首16位區(qū) S地址指令梯形圖程序布爾形式從FIFO緩沖區(qū)所讀數(shù)據(jù)的16
38、位區(qū) D步數(shù)適用機(jī)型5 FP-C/FP2/FP2SH/FP3/FP10SH5A: 可以使用N/A: 不可使用(*1)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*2)對于FP2、FP2SH和FP10SH,此處為ID。觸發(fā)器描述描述DT5中的內(nèi)容(由讀取指針2表示)被發(fā)送到DT100。數(shù)據(jù)讀取后,DT1的內(nèi)容(存放的數(shù)據(jù)項(xiàng)數(shù)量)減1,并且讀取指針移向3。執(zhí)行下一次讀取時(shí),DT5被發(fā)送到DT100(由DT3指示)。本指令從S指定的區(qū)域FIFO緩沖區(qū)中讀取數(shù)據(jù),并將數(shù)據(jù)保存在D指定的存儲(chǔ)區(qū)中。S是利用F115(FIFT)指令定義的緩沖區(qū)的起始地址。執(zhí)行指令時(shí),從讀指針?biāo)甘镜牡刂烽_始讀
39、取數(shù)據(jù)。數(shù)據(jù)讀取后,存放的數(shù)據(jù)項(xiàng)數(shù)量減1,并且讀取指針增1。示例說明示例說明當(dāng)執(zhí)行條件(觸發(fā)器)R10為ON時(shí),從以DT0開始的FIFO緩沖區(qū)中讀取數(shù)據(jù),并且將數(shù)據(jù)存放在DT100中。當(dāng)讀指針是2時(shí)讀指針寫指針執(zhí)行讀指針被移動(dòng) 讀出 存儲(chǔ)數(shù)據(jù)的數(shù)量讀指針數(shù)據(jù)存儲(chǔ)區(qū)(n個(gè)字)FIFO緩沖區(qū)的內(nèi)存大小數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)量(字)讀指針的高位地址(0),(n-2)和(n-1)指定數(shù)據(jù)存儲(chǔ)區(qū)的地址n由F115(FIFT)指令指定錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - 由S指定的FIFO的大小n=0 或 n256 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量為0 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)
40、數(shù)量 FIFO大?。╪) - 基于FIFO大?。╪)的最終地址超出范圍 - FIFO的讀指針 FIFO的大?。╪) - 讀取數(shù)據(jù)后,F(xiàn)IFO的讀指針為K256(H100)或更大錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - 由S指定的FIFO的大小n=0 或 n256 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量為0 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量 FIFO大?。╪) - 基于FIFO大?。╪)的最終地址超出范圍 - FIFO的讀指針 FIFO的大?。╪) - 讀取數(shù)據(jù)后,F(xiàn)IFO的讀指針為K256(H100)或更大標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)讀指針存放在FIFO緩沖區(qū)的第三個(gè)字的高8位,用于表
41、示存儲(chǔ)數(shù)據(jù)的相對地址。實(shí)際的地址為由S指定的FIFO緩沖區(qū)的起始地址加3,再加讀指針的數(shù)值。數(shù)據(jù)讀取后,存放的數(shù)據(jù)項(xiàng)數(shù)量減1,并且讀取指針增1。注意注意當(dāng)存儲(chǔ)的數(shù)據(jù)項(xiàng)為0時(shí),執(zhí)行本指令會(huì)產(chǎn)生錯(cuò)誤。D中不會(huì)被設(shè)置數(shù)值。只有讀指針與寫指針不同時(shí),才進(jìn)行讀取。當(dāng)在讀指針為FIFO緩沖區(qū)的最終地址時(shí)(由FIFO指令定義的n減1),讀指針將被設(shè)置為0。FIFO緩沖區(qū)是按照數(shù)據(jù)寫入的順序存儲(chǔ)數(shù)據(jù),并且按照存儲(chǔ)順序讀取數(shù)據(jù),非常便于按順序處理對象。如何使用FIFO緩沖區(qū)如果執(zhí)行F116(FIFR)指令時(shí)FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量(S+1)為0,則會(huì)發(fā)生錯(cuò)誤。在以下的說明程序中,如果存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量為0,就不執(zhí)
42、行F116(FIFR)指令。編程時(shí)的注意事項(xiàng) FIFO定義檢查存儲(chǔ)區(qū)的數(shù)量FIFO讀出首先使用F115(FIFT)指令定義FIFO緩沖區(qū)(應(yīng)在讀、寫之前只執(zhí)行一次)。應(yīng)利用F117(FIFW)指令寫入數(shù)據(jù),并用F116(FIFR)指令讀取數(shù)據(jù)。使用步驟寫入數(shù)據(jù)時(shí),數(shù)據(jù)從存儲(chǔ)區(qū)起始處開始按順序存儲(chǔ)。寫指針指示下一次寫入數(shù)據(jù)的地址。如果存儲(chǔ)區(qū)已滿,則禁止繼續(xù)向其中寫入數(shù)據(jù)。數(shù)據(jù)寫入讀取數(shù)據(jù)時(shí),數(shù)據(jù)從存儲(chǔ)區(qū)起始處開始按存儲(chǔ)的順序讀取。讀指針指示讀取數(shù)據(jù)的地址。如果試圖在沒有數(shù)據(jù)項(xiàng)時(shí)讀取數(shù)據(jù),則產(chǎn)生錯(cuò)誤。數(shù)據(jù)讀取當(dāng)數(shù)據(jù)如上所示時(shí),如果寫入數(shù)據(jù),則根據(jù)指針將數(shù)據(jù)寫入3,寫指針將指向4。如果讀取數(shù)據(jù),則根
43、據(jù)指針從0讀取數(shù)據(jù),讀指針將指向1。數(shù)據(jù)存儲(chǔ)的示例 讀指針 寫指針FIFOFIFO緩沖區(qū)數(shù)據(jù)寫入緩沖區(qū)數(shù)據(jù)寫入 操作數(shù)操作數(shù)程序示例程序示例概述概述向FIFO(先入先出)緩沖區(qū)中寫入數(shù)據(jù)。 F117 (FIFW) F117 (FIFW) P117 (PFIFW) P117 (PFIFW) 1011ST R 10DFF 117 (FIFW)DT 11 0DT 0存放寫入FIFO緩沖區(qū)的16位常數(shù)或16位區(qū) S地址指令梯形圖程序布爾形式FIFO緩沖區(qū)的首16位區(qū) D步數(shù)適用機(jī)型5 FP-C/FP2/FP2SH/FP3/FP10SH5A: 可以使用N/A: 不可使用(*1)對于FP2、FP2SH和F
44、P10SH,此處為I0至IC。(*2)對于FP2、FP2SH和FP10SH,此處為ID。觸發(fā)器根據(jù)指針的指示3,將DT110的內(nèi)容“103”寫到DT6。數(shù)據(jù)寫入之后,DT1中的內(nèi)容加1(存儲(chǔ)數(shù)據(jù)項(xiàng)的數(shù)量),并且寫指針指向4。(下一次寫入時(shí),根據(jù)指示4將DT110的內(nèi)容被寫入DT7)有關(guān)緩沖區(qū)的問題,請參閱3-323頁的內(nèi)容。示例說明示例說明當(dāng)執(zhí)行條件(觸發(fā)器)R10為ON時(shí),將DT110的內(nèi)容寫入以DT0開始的FIFO緩沖區(qū)中。讀指針寫指針寫指針寫執(zhí)行存儲(chǔ)數(shù)據(jù)區(qū)大小寫指針移動(dòng)寫指針存放在FIFO緩沖區(qū)的第三個(gè)字的低8位,用于表示存儲(chǔ)數(shù)據(jù)的相對地址。實(shí)際的地址為由S指定的FIFO緩沖區(qū)的起始地址
45、加3,再加寫指針的數(shù)值。數(shù)據(jù)寫入后,存放的數(shù)據(jù)項(xiàng)數(shù)量增1,并且寫指針增1。將由S指定的16位數(shù)據(jù)存儲(chǔ)到由D指定的FIFO緩沖區(qū)中。D是利用F115(FIFT)指令指定的緩沖區(qū)的起始地址。執(zhí)行本指令時(shí),指定的數(shù)據(jù)被寫入由寫指針?biāo)甘镜牡刂?。描述描?數(shù)據(jù)存儲(chǔ)區(qū)FIFO緩沖區(qū)的內(nèi)存大小數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)量(字)寫指針(0),(n-2)和(n-1)指定數(shù)據(jù)存儲(chǔ)區(qū)的地址n由F115(FIFT)指令指定寫指針(低位)注意注意當(dāng)FIFO緩沖區(qū)滿時(shí),執(zhí)行本指令會(huì)產(chǎn)生錯(cuò)誤。(存儲(chǔ)的數(shù)據(jù)項(xiàng) = FIFO定義指令所指定的大小n)。此時(shí)禁止寫入。當(dāng)在寫指針為FIFO緩沖區(qū)的最終地址時(shí)(由FIFO指令定義的n),寫指針將
46、被設(shè)置為0。FIFO緩沖區(qū)是按照數(shù)據(jù)寫入的順序存儲(chǔ)數(shù)據(jù),并且按照存儲(chǔ)順序讀取數(shù)據(jù),非常便于按順序處理對象。如何使用FIFO緩沖區(qū)首先使用F115(FIFT)指令定義FIFO緩沖區(qū)(應(yīng)在讀、寫之前只執(zhí)行一次)。應(yīng)利用F117(FIFW)指令寫入數(shù)據(jù),并用F116(FIFR)指令讀取數(shù)據(jù)。使用步驟寫入數(shù)據(jù)時(shí),數(shù)據(jù)從存儲(chǔ)區(qū)起始處開始按順序存儲(chǔ)。寫指針指示下一次寫入數(shù)據(jù)的地址。如果存儲(chǔ)區(qū)已滿,則禁止繼續(xù)向其中寫入數(shù)據(jù)。數(shù)據(jù)寫入讀取數(shù)據(jù)時(shí),數(shù)據(jù)從存儲(chǔ)區(qū)起始處開始按存儲(chǔ)的順序讀取。讀指針指示讀取數(shù)據(jù)的地址。如果試圖在沒有數(shù)據(jù)項(xiàng)時(shí)讀取數(shù)據(jù),則產(chǎn)生錯(cuò)誤。數(shù)據(jù)讀取當(dāng)數(shù)據(jù)如上所示時(shí),如果寫入數(shù)據(jù),則根據(jù)指針將數(shù)據(jù)
47、寫入3,寫指針將指向4。如果讀取數(shù)據(jù),則根據(jù)指針從0讀取數(shù)據(jù),讀指針將指向1。數(shù)據(jù)存儲(chǔ)的示例 讀指針 寫指針錯(cuò)誤標(biāo)志(R9007):以下情況時(shí)為ON并保持ON - 變址數(shù)指定區(qū)超限 - 由S指定的FIFO的大小n=0 或 n256 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量 FIFO的大小(n) - 基于FIFO大?。╪)的最終地址超出范圍 - FIFO的寫指針 FIFO的大?。╪) - 寫入數(shù)據(jù)后,F(xiàn)IFO的讀指針為K256(H100)或更大錯(cuò)誤標(biāo)志(R9008):以下情況時(shí)瞬間為ON - 變址數(shù)指定區(qū)超限 - 由S指定的FIFO的大小n=0 或 n256 - FIFO存儲(chǔ)的數(shù)據(jù)項(xiàng)數(shù)量 FIFO的大?。╪
48、) - 基于FIFO大?。╪)的最終地址超出范圍 - FIFO的寫指針 FIFO的大小(n) - 寫入數(shù)據(jù)后,F(xiàn)IFO的讀指針為K256(H100)或更大標(biāo)志位狀態(tài)標(biāo)志位狀態(tài)如果數(shù)據(jù)達(dá)到超出緩沖區(qū)容量時(shí),將產(chǎn)生運(yùn)算錯(cuò)誤。 使用使用F117F117(FIFWFIFW)指令時(shí)的注意事項(xiàng))指令時(shí)的注意事項(xiàng)執(zhí)行F117(FIFW)指令時(shí),在數(shù)據(jù)被寫入緩沖區(qū)的最終地址(4)之后,寫指針變?yōu)槭椎刂罚?)。示例:如果寫指針位于FIFO緩沖區(qū)的末尾 讀指針寫執(zhí)行F117(FIFW)指令存儲(chǔ)區(qū)大小寫指針寫指針移動(dòng)因?yàn)镕IFO緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)項(xiàng)(DT1=5)超出FIFO緩沖區(qū)的大?。―T0=5),所以不能進(jìn)行處
49、理,并且會(huì)產(chǎn)生運(yùn)算錯(cuò)誤。示例:示例:當(dāng)寫指針完成一個(gè)循環(huán)時(shí)當(dāng)寫指針完成一個(gè)循環(huán)時(shí) 讀指針寫執(zhí)行F117(FIFW)指令寫指針一個(gè)周期(當(dāng)錯(cuò)誤發(fā)生,過程不被執(zhí)行)避免產(chǎn)生運(yùn)算錯(cuò)誤的方法 利用比較指令,使當(dāng)FIFO緩沖區(qū)中存儲(chǔ)的數(shù)據(jù)項(xiàng)等于FIFO緩沖區(qū)的大小時(shí),不執(zhí)行F117(FIFW)指令。在執(zhí)行F116(FIFR)指令之后執(zhí)行F117(FIFW)指令。加加/ /減計(jì)數(shù)器減計(jì)數(shù)器 操作數(shù)操作數(shù)程序示例程序示例概述概述設(shè)置加/減計(jì)數(shù)器F118 (UDC) F118 (UDC) 505152535859ST R 0ST R 1ST R 2F118 (UDC) DT 1 0 DT 0ST R 900B
50、OT R 50 存放計(jì)數(shù)器預(yù)置值的16位常數(shù)或16位區(qū)S地址指令梯形圖程序布爾形式計(jì)數(shù)器經(jīng)過值16位區(qū) D步數(shù)適用機(jī)型5 FP-C/FP-M/FP0/FP1/ FP2/FP2SH/FP3/FP10SHA: 可以使用N/A: 不可使用(*1)此處不適用FP-M、FP0和FP1。(*2)對于FP2、FP2SH和FP10SH,此處為I0至IC。(*3)對于FP2、FP2SH和FP10SH,此處為ID。加/減計(jì)數(shù)計(jì)數(shù)輸入復(fù)位輸入根據(jù)用于指定加/減的輸入信號(hào)的ON/OFF狀態(tài),計(jì)數(shù)器在加計(jì)數(shù)器和減計(jì)數(shù)器之間切換。將由D指定16位數(shù)據(jù)右移1個(gè)digit(4位)(向低位)。如果加/減輸入信號(hào)為ON,則作為加
51、計(jì)數(shù)器(+1)使用;如果該信號(hào)為OFF,則作為減計(jì)數(shù)器(-1)使用。經(jīng)過值存放在由D指定的區(qū)域中。當(dāng)檢測到復(fù)位信號(hào)的下降沿(ONOFF)時(shí),預(yù)置值被傳輸?shù)紻。設(shè)定值的范圍是 K-32768K32767。(H8000H7FFF)當(dāng)計(jì)數(shù)輸入從OFF變?yōu)镺N時(shí)(復(fù)位輸入處于OFF狀態(tài)),D指定的數(shù)值被初始化,同時(shí)開始進(jìn)行計(jì)數(shù)。當(dāng)復(fù)位輸入為ON時(shí),經(jīng)過值被清零。計(jì)數(shù)的結(jié)果可以利用比較指令,對經(jīng)過值D與指定值進(jìn)行比較確定。數(shù)據(jù)比較指令必須在本指令之后立即執(zhí)行。 示例說明示例說明前頁的示例表示設(shè)置初始值,當(dāng)目標(biāo)值為0時(shí)R50變?yōu)镺N。本程序示例可以用于控制指示燈,當(dāng)增或減工件達(dá)到某一數(shù)量時(shí),使燈變亮。當(dāng)檢
52、測到復(fù)位信號(hào)X2的下降沿(ONOFF)時(shí),數(shù)據(jù)寄存器DT10中的數(shù)據(jù)被傳輸?shù)紻T0中。當(dāng)X0處于OFF狀態(tài)時(shí),計(jì)數(shù)輸入X1會(huì)使DT0的數(shù)值遞減(減計(jì)數(shù)操作)。當(dāng)X0處于ON狀態(tài)時(shí),計(jì)數(shù)輸入X1會(huì)使DT0的數(shù)值遞增(加計(jì)數(shù)操作)。當(dāng)經(jīng)過值DT0 = K0時(shí),特殊內(nèi)部繼電器R900B(=標(biāo)志)將變?yōu)镺N,并且內(nèi)部繼電器R50也為ON。寫指針描述描述DT0的值復(fù)位復(fù)位時(shí)間當(dāng)F118(UDC)指令與其他可能改變程序執(zhí)行順序的指令組合使用時(shí),應(yīng)注意指令的執(zhí)行與輸入信號(hào)之間的時(shí)序關(guān)系。- MC和MCE指令- JP和LBL指令- F19(SJP)及LBL指令- LOOP及LBL指令- CNDE指令- 步進(jìn)梯形圖程序-子程序有關(guān)詳細(xì)內(nèi)容, 請參閱4.3節(jié)。在F118(UDC)指令中,當(dāng)檢測到計(jì)數(shù)輸入信號(hào)OFFON的上升沿時(shí)移位。如果移位輸入信號(hào)始終保持
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技創(chuàng)新企業(yè)如何構(gòu)建高效的營銷團(tuán)隊(duì)
- 《少年閏土》教學(xué)設(shè)計(jì)與反思
- 2025年租賃合同提前解除市場影響
- 二級(jí)建造師合作合同樣本
- 互助市場拓展合作合同書
- 二手房屋購買合同誠意金約定
- 個(gè)人質(zhì)押與抵押合同
- XX公司員工培訓(xùn)合同協(xié)議
- 產(chǎn)品設(shè)計(jì)與研發(fā)合作合同范例
- 個(gè)人借款合同格式樣本
- 2025檢驗(yàn)檢測中心年度工作總結(jié)及工作計(jì)劃
- 2024年總經(jīng)理助理年終工作總結(jié)(3篇)
- B區(qū)地下室碳纖維加固施工方案
- 三甲醫(yī)院臨床試驗(yàn)機(jī)構(gòu)-44 V00專業(yè)組SOP目錄
- 旅行社脫團(tuán)安全協(xié)議書范文模板
- 酒店工作安全培訓(xùn)(共60張課件)
- 2024年委托招商代理合同經(jīng)典版(三篇)
- 期中測試卷-2024-2025學(xué)年統(tǒng)編版語文五年級(jí)上冊
- 安全設(shè)施檢查維護(hù)保養(yǎng)記錄表
- 安裝承包免責(zé)協(xié)議書模板
- 新教材人教版高中物理選擇性必修第三冊全冊各章節(jié)知識(shí)點(diǎn)考點(diǎn)
評(píng)論
0/150
提交評(píng)論