wangk0
人都有點過去~
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 82 個
工控威望: 2155 點
下載積分: 3866 分
在線時間: 64(小時)
注冊時間: 2012-05-17
最后登錄: 2024-04-11
查看wangk0的 主題 / 回貼
樓主  發(fā)表于: 2012-12-03 22:51
問題背景:PLC跟打印機用485通訊的,要打印的東西太多,要設置一個格式,打印一段文字,設置一個格式,打印一段文字。無論打印文字還是設置打印格式,都是通過發(fā)送十六進制的數(shù)字實現(xiàn)的,F(xiàn)在我做成一個包后,要加一個內(nèi)容或者改個打印格式,從修改處往后的包都要重寫,比較麻煩。發(fā)送是不接收數(shù)據(jù)的。

目標:現(xiàn)在我想把一個包分成幾個包來發(fā)送,一個包發(fā)完自動發(fā)下一個包,這樣,改的內(nèi)容會相對少很多,而且不需要一個很大的連續(xù)的空白數(shù)據(jù)區(qū)來做發(fā)送用。

嘗試:用第一個包的M8122下降沿觸發(fā)一個輔助繼電器點,再用輔助繼電器點發(fā)送下一個包。結(jié)果是只能發(fā)第一個包。

拜謝各路大俠給點點子,讓我多試試。

今天還是用的這個方法試的,用電腦可以,通訊設置為9600,8位數(shù)據(jù)位,1位停止位,無校驗。能夠發(fā)兩個包了,上傳程序和結(jié)果。
程序圖:
1

2

連電腦看的結(jié)果:
結(jié)果

程序附件:
485 test.rar (153 K) 下载次数:21     
[ 此帖被wangk0在2012-12-05 12:01重新編輯 ]
15920589444
級別: 略有小成
精華主題: 2 篇
發(fā)帖數(shù)量: 169 個
工控威望: 337 點
下載積分: 3328 分
在線時間: 149(小時)
注冊時間: 2011-10-13
最后登錄: 2021-08-25
查看15920589444的 主題 / 回貼
1樓  發(fā)表于: 2012-12-04 08:10
正學習,能不能教兩招
wow588
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 179 個
工控威望: 317 點
下載積分: 2836 分
在線時間: 156(小時)
注冊時間: 2012-02-11
最后登錄: 2024-11-07
查看wow588的 主題 / 回貼
2樓  發(fā)表于: 2012-12-04 12:03
要不用循環(huán)程序試試
wangk0
人都有點過去~
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 82 個
工控威望: 2155 點
下載積分: 3866 分
在線時間: 64(小時)
注冊時間: 2012-05-17
最后登錄: 2024-04-11
查看wangk0的 主題 / 回貼
3樓  發(fā)表于: 2012-12-05 11:50
引用
引用第1樓15920589444于2012-12-04 08:10發(fā)表的  :
正學習,能不能教兩招

可以看我寫的一個485通訊的小結(jié)貼,這個貼程序調(diào)試成功了,回頭上傳共享。