礦機通訊協議開發
❶ modbus通訊協議編程在什麼開發環境,本人新新手,請指點
協議的實現和編程環境沒有關系,用任何一種語言都可以,是要實現協議的邏輯即可。
如果是在嵌入式裡面使用的話,建議用C語言。
❷ 如何編寫自己的串口通訊協議
所謂的串口通信協議,其實,就是串口通信時,相互的一種聯系方式。
至於內容完全可以根據自己的需要來制定。
包括:首先確定波特率,是否有奇偶校驗,一般都不用,比較麻煩,但可以加一個位元組的校驗和或校驗字。
其次,多機通信時,要確定每個機器的地址,雙機通信就不用了。
然後是聯系方式,即通信時,是否用握手信息,互相交換聯系信號,為了加密,還可以交換密碼。
最簡單的就是:發一幀數據時用幾個位元組,帶不帶校驗和,起始位元組是什麼,結束位元組是什麼,關鍵的命令字是什麼,數據位元組是什麼。命令字表示什麼動作,數據表示狀態。反正都是自己確定的,怎麼編寫協議都
行的。
❸ 通信協議的開發到底是做些啥
歐姆龍目前對外公開協議都是用HOSTLINK做,在這個基礎下老的有C-MODE,現在是FINS。
再老的公開協議是Sysway協議。
回一樓TCP/IP協議是網路傳送層,這個和歐姆龍無關(而且你打反了)
回二樓無語
回三樓RS485是半雙工硬體口,這個壓根不是什麼協議以後工作上請注意,組態王是做進了HOSTLINK協議,用戶只要選擇組態按鈕就可發送鏈接,如果你要自己用win的埠服務軟體發送下載一本串口手冊。
❹ 如何根據通訊協議編寫串口通訊程序
ARDUINO 代碼復制列印 int incomingByte = 0; // 接收到的 data byteString inputString = ""; // 用來儲存接收到的內容
❺ 設計一個通信模塊,實現上位PC與下位機單片機之間的通訊。通信協議使用RS-232協議。
10分就要整個設計啊,這年頭知識太不值錢了,10Y RMB 估計也沒人考慮
給點子程序參考下就可以
ORG 0023H
LJMP UART_INT
;---------------
MOV SCON,#0D0H ;串口方式3(11位)
MOV TMOD,#20H ;T1為8位重裝
MOV TH1,#0F5H ; 9600 PTS(40.6M)
MOV TL1,#0F5H ;
;----------------
;------------
MOV TMOD,#21H;定時器0,方式1,16位重裝,,定時器1,方式2,8位重裝
MOV AUXR,#0C0H ;定時器0,1倍速,12倍速
;
MOV SCON,#50H ;串列控制,方式1
;MOV TL1,#0FDH ;波特率初值,423921
;MOV TH1,#0FDH ;
MOV TL1,#0DFH ;波特率初值,38400 (38538) (40.6M)
MOV TH1,#0DFH ;
;MOV IP,#10H ;串列中斷優先
;------------
;MOV AUXR,#40H ;T1*12=1
MOV PCON,#80H ;SMOD=1
MOV SCON,#50H ;串口方式1(10位)
MOV TMOD,#20H ;T1為8位重裝
MOV TH1,#0FDH ;9600PTS 5.6M (12T)
MOV TL1,#0FDH
;MOV TH1,#0DBH ;9600PTS 5.6M (12T)
;MOV TL1,#0DBH
;MOV SCON,#0D0H ;串口方式3(11位)
;**********************
;MOV AUXR,#40H ;T1*12=1
MOV PCON,#80H ;SMOD=1
MOV SCON,#50H ;串口方式1(10位)
MOV TMOD,#20H ;T1為8位重裝
MOV TH1,#0C2H ;476PTS 5.67393M
MOV TL1,#0C2H
;MOV TH1,#0FDH ;9600PTS 5.4M
;MOV TL1,#0FDH
;MOV TH1,#0F3H ;1200PTS 6M
;MOV TL1,#0F3H
MOV AUXR,#40H ;T1*12=1
;MOV PCON,#80H ;SMOD=1
MOV SCON,#50H ;串口方式1(10位)
MOV TMOD,#20H ;T1為8位重裝
MOV TH1,#0F7H ;9600PTS 6M
MOV TL1,#0F7H
❻ 通訊協議的方式有哪幾種rs485通訊基於什麼原理
通訊協議只是一種雙方約定的「暗語」用0和1傳輸應答信息而已。RS485基於串口通訊,所以基於串口應答通訊方式的半雙工協議都可以使用。
你可以用MODBUS,也可以自擬協議。只要主從雙方能解析數字表達的意義就能完成通訊。
同樣你可以把MODBUS協議用在其他支持串口通訊半雙工的硬體上,如二匯流排POWERBUS,RS232等。
電氣原理
TTL介面電平常見的有3.3V和5V的。通過在0和TTL電平之間擺動,來傳輸數據。需要通訊雙方「約定」 好速率。也就是說,通過TTL電平傳輸的UART介面是一種不傳輸時鍾的"非同步通訊"方式。
一般通訊格式以一個位元組為最小單位,有8位,和9位的常見格式。第九位有的人用於奇偶效驗用。
如下圖:
而RS485介面,簡單說就是把TTL的「0-3.3V/5V之間擺動」的信號,轉換為「5V壓差顛倒反轉的AB線信號」,並且擴流驅動電纜電容。簡單說就是這樣。
所以可以理解為,RS485是以TTL數據源的匯流排驅動晶元。
當然了。如果擴展RS485來說。作為匯流排技術,RS485在現場問題很多,不支持任意拓撲,不支持無極性,需要隔離,需要加終端電阻等。如果作為現場施工使用方便布線,二匯流排方便的多,例如POWERBUS等
❼ 知道通訊協議如何開發串口程序
添加一個MSComm控制項,辦法是,點菜單里的工程-部件,找到Microsoft Comm Control 6.0,打上對勾,然後確定就可以在旁邊的部件欄里看到一個電話的標識的控制項,就是MSComm,就可以用它來讀寫串口
以下是一個示例代碼
Private Sub Form_Load ()
' 保存輸入子串的緩沖區
Dim Instring As String
' 使用 COM1。
MSComm1.CommPort = 1
' 9600 波特,無奇偶校驗,8 位數據,一個停止位。
MSComm1.Settings = "9600,N,8,1"
' 當輸入佔用時,
' 告訴控制項讀入整個緩沖區。
MSComm1.InputLen = 0
' 打開埠。
MSComm1.PortOpen = True
' 將 attention 命令送到數據機。
MSComm1.Output = "ATV1Q0" & Chr$(13) ' 確保
' 數據機以"OK"響應。
' 等待數據返回到串列埠。
Do
DoEvents
Buffer$ = Buffer$ & MSComm1.Input
Loop Until InStr(Buffer$, "OK" & vbCRLF)
' 從串列埠讀 "OK" 響應。
' 關閉串列埠。
MSComm1.PortOpen = False
End Sub
❽ 如何設計實現一個簡單的通訊協議用C語言可以實現的。
用C語言肯定可以實現!要先在接收端的單片機處理設定好,就是你收到了什麼數據,要判定數據是否正確,要是正確的話,就要回復什麼數據;不正確就不響應。你可以看看485通信的例子。
❾ 單線通訊:通訊協議如圖所示,根據協議寫一段數據發送和接收程序。
1)需要一個串口通信用軟體,比如Commix軟體。
❿ 菜鳥入門:上下位機通訊協議自己可以定義么
看你是什麼通信啊,如
果是網口通信,那基本的TCP/IP協議,就直接用吧;