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

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

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

拜謝各路大俠給點(diǎn)點(diǎn)子,讓我多試試。

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

2

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

程序附件:
485 test.rar (153 K) 下载次数:21     
[ 此帖被wangk0在2012-12-05 12:01重新編輯 ]
wangk0
人都有點(diǎn)過去~
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 82 個(gè)
工控威望: 2155 點(diǎn)
下載積分: 3866 分
在線時(shí)間: 64(小時(shí))
注冊時(shí)間: 2012-05-17
最后登錄: 2024-04-11
查看wangk0的 主題 / 回貼
1樓  發(fā)表于: 2012-12-05 11:50
引用
引用第1樓15920589444于2012-12-04 08:10發(fā)表的  :
正學(xué)習(xí),能不能教兩招

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