|
軟件介紹
小平TCP串口調(diào)試特工是一款免費(fèi)的軟件,本人也是一名工控編程愛好者,經(jīng)常使用串口調(diào)試PLC、單片機(jī),試用過各種各樣的串口調(diào)試軟件;趯(shí)際需求,結(jié)合各種調(diào)試軟件的優(yōu)點(diǎn),開發(fā)出小平TCP串口調(diào)試特工。本軟件除了普通TCP、串口調(diào)試外,主要用以下創(chuàng)新點(diǎn):
一、串口、TCP相互轉(zhuǎn)發(fā),并可以保存整個(gè)通訊過程的數(shù)據(jù);
二、支持保存的通訊數(shù)據(jù)進(jìn)行主機(jī)、從機(jī)順序模擬,還原通訊過程
三、可以根據(jù)設(shè)定的腳本進(jìn)行自動(dòng)回復(fù)模擬,創(chuàng)建自己的協(xié)議測試
四、自帶腳本通訊指令,也可以C#、VB代碼腳本擴(kuò)展,或者混合使用,方便擴(kuò)展不同的數(shù)據(jù)處理和測試。
一、如何打開串口調(diào)試
A02.jpg (41.66 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
二、如何發(fā)送數(shù)據(jù)給串口
A03.jpg (65.13 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
三、如何像單片機(jī)里一樣發(fā)送轉(zhuǎn)義字符
A04.jpg (54.76 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
這個(gè)轉(zhuǎn)義功能在使用AT指令(ESP8266等)時(shí)會比較方便,如要加\r\n等
四、如何給發(fā)送的內(nèi)容添加校驗(yàn)
A05.jpg (123.65 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
五、如何TCP連接并收發(fā)(轉(zhuǎn)發(fā))
A06.jpg (134.38 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
其他發(fā)送、校驗(yàn)同串口操作一樣,要注意的是發(fā)送時(shí)要選擇TCP還是BOTH
六、如何實(shí)現(xiàn)多預(yù)設(shè)數(shù)據(jù)發(fā)送(可多個(gè))
比如用戶有10條不同的AT指令,每發(fā)一條,又修改發(fā)送區(qū)的內(nèi)容,是很不方便的,這時(shí)可以按下圖操作即可
A07.jpg (99.5 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
七、如何設(shè)定收發(fā)顯示的編碼:
A08.jpg (46.86 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
八、如何自定義校驗(yàn)算法(需要懂C#編程語言)
A09.jpg (43.74 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
A10.jpg (41.49 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
A11.jpg (19.76 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
A12.jpg (101.21 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
A13.jpg (37.87 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
九、如何通過腳本來調(diào)用校驗(yàn)
使用CC:指令
CC:表示執(zhí)行外部校驗(yàn)程序(保存在CheckCode目錄里C#文件)
格式1為: CC:校驗(yàn)名稱
(把%RX%作為源內(nèi)容,校驗(yàn)結(jié)果保存在%CCR%變量中)
格式2為: CC:校驗(yàn)名稱,源內(nèi)容,變量1
格式3為: CC:校驗(yàn)名稱,源內(nèi)容,開始位置,長度,變量1
如:CC:CRC16,%S1%,%T1%
注意,CRC16對應(yīng)CheckCode文件夾里必須要有CRC16.cs C#文件才能執(zhí)行
注意,如需要自定校驗(yàn)名稱,請參考CheckCode\CRC16.cs的內(nèi)容進(jìn)行修改
舉例,我要對發(fā)送區(qū)1的內(nèi)容進(jìn)行CRC16校驗(yàn),腳本調(diào)試中代碼如下:
CC:CRC16,%SEND1%,%TEMP% //調(diào)用CRC16,對%SEND1%(發(fā)送區(qū)1內(nèi)容)校驗(yàn),結(jié)果保存到%TEMP%變量中,
Join:%SEND%,%SEND1%,%TEMP% //拼接%SEND1%和%TEMP%,保存到%SEND%中并發(fā)送
注意,%SEND%是立即發(fā)送的系統(tǒng)變量
十、如何模擬并自動(dòng)回復(fù)
應(yīng)用一:通過通訊記錄保存后,進(jìn)行模擬其中的一端,進(jìn)行按順序通訊還原
A14.jpg (52.68 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
例如收發(fā)記錄如下:
[COM->Receive]Hello,I am COM2
[Send->COM] Hello,I am COM1
[COM->Receive]How old are you
[Send->COM] I'm 12
我們設(shè)置模擬里發(fā)送標(biāo)記為[Send->COM],接收標(biāo)記為[[COM->Receive]],打開文件,取消自動(dòng)回復(fù),開始模擬,當(dāng)收到Hello,I am COM2時(shí),軟件會自動(dòng)回復(fù)Hello,I am COM1,接下來,收到How old are you時(shí),就會回復(fù)I'm 12,注意數(shù)據(jù)格式的選擇,模擬的數(shù)據(jù)必須一模一樣。
我們也可以把發(fā)送和接收的標(biāo)記反過來,由收變成發(fā),模擬另一端
應(yīng)用二:自動(dòng)回復(fù)
勾選回復(fù)模式,根據(jù)收到的內(nèi)容,匹配回復(fù),可以不按順序來模擬
A15.jpg (24.25 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
例如收發(fā)記錄如下:
[COM->Receive]Hello,I am COM2
[Send->COM] Hello,I am COM1
[COM->Receive]How old are you
[Send->COM] I'm 12
我們設(shè)置模擬里發(fā)送標(biāo)記為[Send->COM],接收標(biāo)記為[[COM->Receive]],打開文件,勾選自動(dòng)回復(fù),開始模擬,當(dāng)收到Hello,I am COM2時(shí),軟件會自動(dòng)回復(fù)Hello,I am COM1,接下來,收到How old are you時(shí),就會回復(fù)I'm 12,再收到How old are you,還是自動(dòng)回復(fù)I'm 12。跟應(yīng)用一不同之處是,應(yīng)用一是按順序來的,應(yīng)用二可以隨條件回復(fù)
應(yīng)用三:根據(jù)條件和腳本來回復(fù)(萬能處理)
A16.jpg (20.94 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
可參照例子里的MobusRTU腳本例子(十六進(jìn)制數(shù)據(jù)),注意發(fā)送標(biāo)記為[TX],接收標(biāo)記為[RX],如下腳本執(zhí)行效果,如果收到01 01 開頭,8個(gè)長度的數(shù)據(jù),就回復(fù)01 01 01 02 D0 49,如果收到01 03開頭,8個(gè)長度的數(shù)據(jù),就會按照腳本進(jìn)行數(shù)據(jù)處理,最后用Send:發(fā)送處理后的數(shù)據(jù)
[RX]C01{S=01 01;L=8}//收到01 01開頭,數(shù)據(jù)總長度為8
[TX][SC] //腳本處理回復(fù)
Send:01 01 01 02 D0 49 //回復(fù)01 01 01 02 D0 49
[/SC] //腳本處理結(jié)束
[RX]C03{S=01 03;L=8}//收到01 03開頭,數(shù)據(jù)總長度為8
[TX][SC] //腳本處理回復(fù)
Mid:%LEN%,%RX%,5,2 //取出收到的內(nèi)容(從第5個(gè)數(shù)據(jù)開始,共兩個(gè)長度)
Set:%TX%,01 03
Tdec:%LEN%,%LEN%
Mul:%LEN%,2
Chex:%DATA%,%LEN%
Thex:%LEN%,%LEN%
Join:%TX%,%LEN%
Join:%TX%,%DATA%
Set:%CRC%,%TX%
CS:Script\crc16.cs //調(diào)用C# CRC16腳本
Join:%TX%,%CRC% //在%TX%里尾部加上校驗(yàn)的結(jié)果
Send:%TX% //發(fā)送%TX%里的數(shù)據(jù)
[/SC]
十一、如何利用腳本保存收到數(shù)據(jù)
1、編寫如下代碼并保存:
//[Setup]和[/Setup]之間的腳本主要用于初始化,只執(zhí)行一次
[Setup]
FileDlg:%File%,Save//調(diào)用保存對話框,選擇要保存的文件名稱和位置
[/Setup]
[RX]ID{L>0} //如果收到的長度大于0則執(zhí)行[TX][SC]和[/SC]之間的腳本
[TX][SC]
//如果數(shù)據(jù)是十六進(jìn)制,請修改下一行的代碼為SData:%File%,%RX%,H,T
SData:%File%,%RX%,S,T//收到的數(shù)據(jù)%RX%保存到文件,字符串,追加模式
SData:%File%,%ENTER%,S,T//添加回車%ENTER%保存到文件,字符串,追加模式
//添加回車的目的是每次收到的數(shù)據(jù)都換行保存
[/SC]
2、打開保存的代碼并模擬
A17.jpg (54.84 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
十二、如何調(diào)試腳本
A18.jpg (65.08 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
下載方法,Q群更新下載:761784089
A01.jpg (42.24 KB, 下載次數(shù): 0)
下載附件
2025-4-24 17:33 上傳
|
|