工控的魚(yú)
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 87 個(gè)
工控威望: 217 點(diǎn)
下載積分: 659 分
在線時(shí)間: 92(小時(shí))
注冊(cè)時(shí)間: 2008-04-22
最后登錄: 2014-07-30
查看工控的魚(yú)的 主題 / 回貼
樓主  發(fā)表于: 2009-02-16 23:11
我想將可以變化DM100的內(nèi)容,用移位指令分別用DM1000--DM1100記錄最近10次的變化內(nèi)容,用了WSFT都不行,請(qǐng)問(wèn)如何寫(xiě)程序,我用的是CPM2AH,假如用1800觸發(fā)DM1000--DM1100,求助
  
wsqjs
充耳不聞
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 148 個(gè)
工控威望: 224 點(diǎn)
下載積分: 1843 分
在線時(shí)間: 23(小時(shí))
注冊(cè)時(shí)間: 2008-10-26
最后登錄: 2024-09-21
查看wsqjs的 主題 / 回貼
1樓  發(fā)表于: 2009-02-17 12:47
CPM2AH沒(méi)有這種命令的。

用變址,大概如下:
mov  #1000 D0   (保存區(qū)首字地址)
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   (保存區(qū)首字地址)

可以保證D1000~D1009保存的是最新的10個(gè)數(shù)據(jù)
充耳不聞
wsqjs
充耳不聞
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 148 個(gè)
工控威望: 224 點(diǎn)
下載積分: 1843 分
在線時(shí)間: 23(小時(shí))
注冊(cè)時(shí)間: 2008-10-26
最后登錄: 2024-09-21
查看wsqjs的 主題 / 回貼
2樓  發(fā)表于: 2009-02-18 11:29
不一定要用D0,自己找一個(gè)就行

可以使用mov D100 *D0


附件,CPM1A也可以,CPM2AH更行了
充耳不聞
wsqjs
充耳不聞
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 148 個(gè)
工控威望: 224 點(diǎn)
下載積分: 1843 分
在線時(shí)間: 23(小時(shí))
注冊(cè)時(shí)間: 2008-10-26
最后登錄: 2024-09-21
查看wsqjs的 主題 / 回貼
3樓  發(fā)表于: 2009-02-18 11:36
不一定要用D0

能使用mov D100 *D0 這樣格式

注意:INC是BCD加一也就是十進(jìn)制加一,#1000是十六進(jìn)制,&1000是十進(jìn)制的1000,
所以是mov &1000 D0,
試一下,在綫監(jiān)控就知道了。
充耳不聞