tilon0
級別: *
|
//下面這段程序。。用來mb10加1,以產生不同的脈沖,以下程序能實現所需功 // 能。 AN T 5 L S5T#1S SD T 5 = M 40.0 // 這個M40.0里存入的是什么值??不是T5線圈。。 JC next L MB 10 INC 1 T MB 10 next: NOP 0 A T 5 // 這RLO不變 //這樣能實現功能。。但以后就不能用T5了。我的意思是在這段程序之后用A T5 //永遠都是 RLO=0.。。 //但不明白為什么改成這種樣子就不能實現了 AN T 5 L S5T#1S SD T 5 A T 5 // 這加一句A T5,從這起RLO為0,永遠都不會成1,為什么? = M 40.0 //RLO為0,不會變成1。STA情況一樣。為什么? JC next L MB 10 INC 1 T MB 10 next: NOP 0 A T 5 // 這邊在這RLO不變 //下面這段程序也能實現功能。。這是定時器的標準用法吧。 AN M 40.0 // 用M,不直接用AN T5 L S5T#1S SD T 5 A T 5 = M 40.0 // 用M代替。 JCN next L MB 10 INC 1 T MB 10 next: NOP 0 A T 5 // 這邊在這RLO有變化。。 //這是為什么??定時器后直接用L存入的是什么值? |
---|---|
|
bhqt
級別: 論壇版主
|
給你提個建議:用抓圖軟件,調好300編程軟件的窗口大小,轉成梯形圖模式,直接抓出GIF格式圖片,上圖,給你答復的會很快的,你寫的這語句表,一般都要重新翻譯,轉換,很麻煩的。 |
|
---|---|---|
|
tilon0
級別: *
|
謝謝版主。。 我已經知道是怎么回事了。。這個與定時器的刷新有關。。因為定時器與CPU掃描時間是異步的。。并且一般都沒CPU掃描時間快,所以當定時器線圈要閉合的時候CPU掃描早就過了。然后語句前又用了AN T 5,定時器重新計時。。。所以下面的A T5永遠也不可能閉合,除非定時器和A T5語句中的掃描時間夠長。。長到定時器線圈閉合。。。 |
---|---|
|