工控的魚
級別: 略有小成
|
我想將可以變化DM100的內容,用移位指令分別用DM1000--DM1100記錄最近10次的變化內容,用了WSFT都不行,請問如何寫程序,我用的是CPM2AH,假如用1800觸發DM1000--DM1100,求助 |
---|---|
|
工控的魚
級別: 略有小成
|
更正:我想將可以變化DM100的內容,用移位指令分別用DM1000--DM1009記錄最近10次的變化內容,用了WSFT都不行,請問如何寫程序,我用的是CPM2AH,假如用1800觸發DM1000--DM1100,求助 |
---|---|
|
hlq_0815
人生的成功不在于拿到一副好牌,而是怎樣將壞牌打好。
級別: 論壇版主
|
用DIST(80) 與COLL(81)能達到你需要。以下是是指令說明書... 80&81.rar (902 K) 下载次数:125 |
|
---|---|---|
|
wsqjs
充耳不聞
級別: 略有小成
|
CPM2AH沒有這種命令的。 用變址,大概如下: mov #1000 D0 (保存區首字地址) LD 1800 DIFU 1801 LD 1801 mov D100 *D0 (將D100傳送給D1000) INC D0 ( 生成D1001) LD P_on (常通) cmp D0 #1009 LD P_GT (D0>1009) mov #1000 D0 (保存區首字地址) 可以保證D1000~D1009保存的是最新的10個數據 |
|
---|---|---|
|
工控的魚
級別: 略有小成
|
LD 1801 mov D100 *D0 (將D100傳送給D1000) INC D0 ( 生成D1001) 再問以上程序如何寫入,一定要用D0嗎,用MOV不能使用mov D100 *D0 這樣格式 |
---|---|
|
wsqjs
充耳不聞
級別: 略有小成
|
不一定要用D0,自己找一個就行 可以使用mov D100 *D0 附件,CPM1A也可以,CPM2AH更行了 |
|
---|---|---|
|
wsqjs
充耳不聞
級別: 略有小成
|
不一定要用D0 能使用mov D100 *D0 這樣格式 注意:INC是BCD加一也就是十進制加一,#1000是十六進制,&1000是十進制的1000, 所以是mov &1000 D0, 試一下,在綫監控就知道了。 |
|
---|---|---|
|
工控的魚
級別: 略有小成
|
今天試了還是不行。應該是變址不成功。 LD 1801 mov D100 *D0 (將D100傳送給D1000) INC D0 ( 生成D1001 LD 25315 mov &1000 D0 |
---|---|
|
工控的魚
級別: 略有小成
|
我用三菱FX2N做的時候,用字傳送指今上可以的之前用過,其實我就是用來記錄在人機介面(臺達AE8系列)修改后參數后,自動記錄在另外的DM寄存上,因為修改后人機可以產生一個觸發一個假如1800的ON信號,但是用其他讓它復位.而且有專用V,Z變址字符,想問*D0 是否代表變址 |
---|---|
|
hlq_0815
人生的成功不在于拿到一副好牌,而是怎樣將壞牌打好。
級別: 論壇版主
|
樓主:看來你這人就愛鉆牛角尖,好建議你不要非要吃現成的。再說像你這樣子的話,就算此工程給你順利通過,但你什么也沒學到,根本就沒弄清楚這些程序的工作原理。不說了,說多了好像我變得婆婆媽媽...... ******************************************************************************************** LD 18.00 @DIST(80) DM100 DM999 #9010 LD 25313 CMP(20) DM999 #10 AND 25506 @BSET(71) #0 DM999 DM999 ******************************************************************************************** |
|
---|---|---|
|