dmx512协议c语言编程,DMX512协议+c程序代码.pdf
DMX512 協議
1.協議簡介
DMX 是Digital MultipleX 的縮寫 ,意為多路數字傳輸。DMX512 控制協議
是美國舞臺燈光協會(USITT)于1990 年發布的燈光控制器與燈具設備進行數據
傳輸的工業標準 ,全稱是 USITT DMX512(1990) ,包括電氣特性、數據協議、數
據格式等方面的內容。
2. 電氣特性和物理層
2.1. 電氣特性
DMX512 采用EIA-485 標準。
發送端:邏輯“1”以兩線間壓差+(2~6)V 表示;
邏輯“0 ”以兩線間壓差為-(2~6)V 表示;
接收端:A 比B 高200mv 以上即認為是邏輯“1”;
A 比B 低200mv 以上即認為是邏輯“0 ”。
2.2.拓撲結構
如圖1 所示為EIA-485 電路拓撲結構,一條EIA-485 數據鏈路包括一個差分
線驅動設備(D)和多個差分接收終端(R) 。
圖1 基于485 的 DMX512 拓撲結構
2.3.DMX512 端口及數據鏈路
因為是采用485 差分信號傳輸,因此DMX512 端口一般采用3 針或5 針接口,
相對應的導線則為1 對或2 對雙絞線,導線同時應采用箔片或編織篩包裹。XLR
針口分配如下表1 所示,其中輔助數據鏈路可以不用。
作用 標準中針的定義 DMX512 功能
公共地 1 屏蔽地
2(黑) 數據1-
主要數據鏈路
3( 白) 數據1+
4(綠) 數據2-
輔助數據鏈路
5(紅) 數據2+
表 1 DMX512 端口信號分配
基于EIA-485 傳輸距離理論上可以達到1200m,建議控制在800m 以內,若
要加長傳輸距離,則需考慮中繼器。DMX512 數據鏈路的終接方式應消除信號環
路和信號反射,否則可能導致正確設計的系統出現誤操作。采用結終端電阻的方
式可以消除信號反射,DMX512 標準要求,終端電阻應放置在數據+和數據-信號
針之間,阻抗范圍120Ω+5%~120 Ω-10% 。
3.數據協議格式及傳輸
DMX512 協議規定數據以數據包的形式通過異步通訊的方式進行傳輸。每個
數據包由若干數據幀組成, 每幀數據包括1 位低電平起始位、8 位數據位和2 位
高電平停止位。DMX512 協議要求數據傳輸的波特率為250kbps, 亦即每位的傳
輸時間為4us, 每幀數據的傳輸時間為44us, 它支持多達512 幀數據傳輸, 每幀
數據與相應的控制支路相對應。數據包的傳送要符合一定的格式和時序要求,每
個包需要發送2~513 個字節數據( 由總線設備來確定) 。為了使接收器能夠分辨
出第一幀數據, 每一個數據包以一個不短于88us 的低電平信號為起始信號, 即
所謂的BREAK 信號, 接收器接收到BREAK 信號就準備接受隨后而來的數據幀;
緊接著BREAK 信號之后是不短于8us 的高電平信號MAB (Mark after Break) ;
之后就是數據幀。在DMX512 協議中, MAB 之后的第一幀數據被稱為SC(Start
code), 即起始字節,在協議中規定其為零, 但在實際應用中可以由生產
總結
以上是生活随笔為你收集整理的dmx512协议c语言编程,DMX512协议+c程序代码.pdf的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言程序设计例题椭圆,2016年西安邮
- 下一篇: c语言程序设计dowhile,(C语言w