資源簡(jiǎn)介
用C#寫(xiě)的松下MEWTOCOL通訊協(xié)議,已經(jīng)測(cè)試過(guò)大部分的讀取方法,小部分的寫(xiě)入方法沒(méi)有測(cè)試。里面有MEWTCOL協(xié)議文檔,協(xié)議類(lèi)文件,和一個(gè)簡(jiǎn)單的測(cè)試FORM,編寫(xiě)軟件為VS2015。

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
namespace?Pansonic
{
????///?
????///?生產(chǎn)Mewtocol協(xié)議的各種命令的命文類(lèi)
????///?
????public?class?MewtocolClass
????{
????????SoftBasic?SoftBasic?=?new?SoftBasic();
????????public?short?station?=?1;?????????//?站號(hào)默認(rèn)為1
????????///?
????????///?PLC站號(hào)
????????///?
????????public?short?Station
????????{
????????????get?{?return?station;?}
????????????set?{?station?=?value;?}
????????}
????????///?
????????///?讀取單觸點(diǎn)狀態(tài)協(xié)議文
????????///?
????????///?觸點(diǎn)地址
????????///?
????????public?String?RCS(string?d)?????????//讀單觸點(diǎn)
????????{
????????????string?sendData;
????????????string?s;
????????????//命令:?%?站號(hào)?#?讀寫(xiě)命令??????????
????????????string?f?=?d.Substring(1?d.Length?-?1);
????????????f?=?f.ToString().PadLeft(4?‘0‘);
????????????sendData?=?“%“?+?station.ToString().PadLeft(2?‘0‘)?+?“#“?+?“RCS“?+?d[0]?+?f;
????????????//?s?=?sendData?+?“**\r“;?????????????????????????????//不帶校驗(yàn)碼
????????????s?=?sendData?+?BCC(sendData)?+?“\r\n“;?????????????????//帶校驗(yàn)碼
????????????return?s;
????????}
????????///?
????????///?寫(xiě)入單觸點(diǎn)狀態(tài)協(xié)議文
????????///?
????????///??觸點(diǎn)地址
????????///???開(kāi)關(guān)量true/false
????????///?
????????public?String?WCS(string?d?bool?b)?????????//寫(xiě)單觸點(diǎn)
????????{
????????????string?sendData;
????????????string?s;
????????????string?g;
????????????//命令:%?站號(hào)?#?讀寫(xiě)命令??????????
????????????string?f?=?d.Substring(1?d.Length?-?1);
????????????f?=?f.ToString().PadLeft(4?‘0‘);
????????????if?(b)?g?=?“1“;
????????????else?g?=?“0“;
????????????sendData?=?“%“?+?station.ToString().PadLeft(2?‘0‘)?+?“#“?+?“WCS“?+?d[0]?+?f?+?g;
????????????//?s?=?sendData?+?“**\r“;?????????????????????????????//不帶校驗(yàn)碼
????????????s?=?sendData?+?BCC(sendData)?+?“\r\n“;?????????????????//帶校驗(yàn)碼
????????????return?s;
????????}
????????///?
????????///?讀取多觸點(diǎn)狀態(tài)協(xié)議文
????????///?
????????///?起始觸點(diǎn)地址
????????///?讀取觸點(diǎn)個(gè)數(shù)?n=1-8
????????///?
????????public?String?RCP(string?d?int?n)
????????{
????????????string?sendData;
????????????string?s;
????????????//命令?%?站號(hào)?#?讀寫(xiě)命令??????????
????????????string?f?=?d.Substring(1?d.Length?-?1);????//取出觸點(diǎn)編號(hào)數(shù)據(jù)
????????????string?f1?=?f.PadLeft(4?‘0‘);??????????????//不足四位左邊補(bǔ)0????
????????????string?fBCD?=?f1.Substring(0?3);???????????//取出前BCD格式的3位??????????
????????????string?fHEX?=?f1.Substring(3?1);???????????//取出HEX格式的最后一位
????????????fHEX?=?fHEX.PadLeft(2?‘0‘);????????????????//補(bǔ)0?改為hex字符串形式
????????????//int?i?=?int.Parse(s);
????????????//string?show?=?i.ToString();
????????????byte[]?bs?=?new?byte[1];
????????????bs?=?SoftBasic.HexStringToBytes(fHEX);???????//把最后一位Hex轉(zhuǎn)為byte[]
????????????byte?address?=
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????248035??2012-06-22?10:02??MEWTOCOL.pdf
?????目錄???????????0??2020-04-23?17:54??pansonicPLC?Test\
?????目錄???????????0??2020-04-23?11:20??pansonicPLC?Test\.vs\
?????目錄???????????0??2020-04-23?11:20??pansonicPLC?Test\.vs\pansonicPLC?Test\
?????目錄???????????0??2020-04-23?11:20??pansonicPLC?Test\.vs\pansonicPLC?Test\v14\
?????文件??????119808??2020-05-21?16:33??pansonicPLC?Test\.vs\pansonicPLC?Test\v14\.suo
?????目錄???????????0??2020-04-24?12:05??pansonicPLC?Test\pansonic\
?????文件???????15843??2020-04-24?10:56??pansonicPLC?Test\pansonic\MewtocolClass.cs
?????文件???????12363??2020-04-24?12:05??pansonicPLC?Test\pansonic\PanasonicPLC.cs
?????目錄???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\Properties\
?????文件????????1324??2020-04-23?17:54??pansonicPLC?Test\pansonic\Properties\AssemblyInfo.cs
?????文件???????44976??2020-04-24?10:57??pansonicPLC?Test\pansonic\SoftBasic.cs
?????目錄???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\bin\
?????目錄???????????0??2020-04-24?10:35??pansonicPLC?Test\pansonic\bin\Debug\
?????文件???????30391??2020-04-24?10:35??pansonicPLC?Test\pansonic\bin\Debug\pansonic.xm
?????文件???????18944??2020-04-24?10:35??pansonicPLC?Test\pansonic\bin\Debug\pansonic.dll
?????文件???????50688??2020-04-24?10:35??pansonicPLC?Test\pansonic\bin\Debug\pansonic.pdb
?????目錄???????????0??2020-07-26?20:06??pansonicPLC?Test\pansonic\bin\Release\
?????目錄???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\obj\
?????目錄???????????0??2020-04-24?10:35??pansonicPLC?Test\pansonic\obj\Debug\
?????文件????????6684??2020-04-24?10:35??pansonicPLC?Test\pansonic\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????目錄???????????0??2020-07-26?20:06??pansonicPLC?Test\pansonic\obj\Debug\TempPE\
?????文件???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
?????文件???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
?????文件???????????0??2020-04-23?17:54??pansonicPLC?Test\pansonic\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
?????文件?????????305??2020-04-24?10:35??pansonicPLC?Test\pansonic\obj\Debug\pansonic.csproj.FileListAbsolute.txt
?????文件???????18944??2020-04-24?10:35??pansonicPLC?Test\pansonic\obj\Debug\pansonic.dll
?????文件???????50688??2020-04-24?10:35??pansonicPLC?Test\pansonic\obj\Debug\pansonic.pdb
?????文件????????2609??2020-04-24?10:35??pansonicPLC?Test\pansonic\pansonic.csproj
?????目錄???????????0??2020-04-24?12:05??pansonicPLC?Test\pansonicPLC?Test\
?????文件?????????189??2020-04-23?11:20??pansonicPLC?Test\pansonicPLC?Test\App.config
............此處省略39個(gè)文件信息
評(píng)論
共有 條評(píng)論