問題背景:PLC跟打印機用485通訊的,要打印的東西太多,要設(shè)置一個格式,打印一段文字,設(shè)置一個格式,打印一段文字。無論打印文字還是設(shè)置打印格式,都是通過發(fā)送十六進制的數(shù)字實現(xiàn)的。現(xiàn)在我做成一個包后,要加一個內(nèi)容或者改個打印格式,從修改處往后的包都要重寫,比較麻煩。發(fā)送是不接收數(shù)據(jù)的。
目標:現(xiàn)在我想把一個包分成幾個包來發(fā)送,一個包發(fā)完自動發(fā)下一個包,這樣,改的內(nèi)容會相對少很多,而且不需要一個很大的連續(xù)的空白數(shù)據(jù)區(qū)來做發(fā)送用。
嘗試:用第一個包的M8122下降沿觸發(fā)一個輔助繼電器點,再用輔助繼電器點發(fā)送下一個包。結(jié)果是只能發(fā)第一個包。
拜謝各路大俠給點點子,讓我多試試。
今天還是用的這個方法試的,用電腦可以,通訊設(shè)置為9600,8位數(shù)據(jù)位,1位停止位,無校驗。能夠發(fā)兩個包了,上傳程序和結(jié)果。
程序圖:
1
2
連電腦看的結(jié)果:
結(jié)果
程序附件:
485 test.rar (153 K) 下载次数:21 [ 此帖被wangk0在2012-12-05 12:01重新編輯 ]