您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 简述DMX512通信
DMX512通信答辩内容1.DMX512简介2.硬件的设计3.软件代码4.调试1.DMX512简介背景LED是发光二极管(LightEmittingDiode)的简称,是一种能将电能转化为光能,并具有二极管开关特性的电子元件。LED半导体元件具有高亮度、低热量、长寿命、节能、可控性好等优点。LED的低压供电和高频闪特性,使针对LED灯具的照明控制研究更有意义。照明控制系统是照明智能化和节能的重要手段。随着楼宇自动化和照明工业的迅速发展,照明采用先进的节能设计和数字控制将是必然的选择。DMX512协议是目前应用最广泛的个数字调光协议。其规定主机和子机的互联方式采用总线型的网络结构,是典型的一主多从方式。DMX512是英文DigitalMultiplexwith512piecesofinformation(即多路数字传输)的简称。它是由美国剧场技术协会制定的数字多路复用协议,是一种用于发送器和调光设备之间的调光协议。是灯光行业数字化设备的通用信号控制协议。DMX512协议规定LED调光信号数据包的传输方式是异步通信方式。一个DMX512数据包包括起始码和512个数据帧。数据帧内包含1个起始位(低电平)、8个数据位和2个停止位(高电平),没有奇偶校验。如图所示。DMX512的信号数据传输率为250kbps,数据帧每位宽度为4us,发送一帧需要44us。一个数据帧代表一路通道的调光数据,理论上可以支持512路控制通道。起始位D0D1D2D3D4D5D6D7停止位DMX512数据包要严格符合协议规定的格式和时序要求。空闲位:当没有DMX512数据包输出时,总线上保持高电平。Break:DMX512数据包的开始报头,至少维持88us的低电平。MAB:是Break后一个8us的高电平。Startcode(起始码):表示通道数据流的开始。第N帧:通道n的调光数据。如图所示。Break起始标志Startcode起始码MAB空闲位第一帧第二帧第N帧通道1通道2通道n在调光系统中,每一帧数据都表示一路的调光亮度值,8位的数据帧可以设定0~225个梯度,代表0~100%的灰度值。每个调光器都有固定的标号地址,从起始码之后的第一帧开始,调光器对帧数据进行计数,如果计数值与调光器的编号相匹配的话,系统就会把这帧数据接收,经过单片机处理后,使外围LED灯具显示预期亮度。2.硬件的设计利用系统所用的MCU模块,通过其内部丰富的资源,可以实现LED驱动、UART通信、发送和接受处理DMX512信号等。RS485模块可把DMX512转变成差分信号,提高DMX512信号抗干扰能力和传输距离。独立按键模块可以依次改变发送的每桢调光信息;LCD1602能实时显示MCU的工作状态、接收/发送的数据和PWM占空比。DMX512协议是围绕工业标准EIA-485接口设计的,适用于RS-485接口协议。本文设计的RS-485模块采用TI公司生产的SN75176B差分驱动芯片,只需要两根通信线,就可以实现两个或多个模块进行数据的传输。电路原理如图所示。电机转速的测量SN75176B是一个结合三态差分线路驱动器和差分输入线接收器的芯片,采用单一电源+5V工作,驱动能力可达±60mA。A、B两个引脚分别接到RS485总线的A、B两条通信广播线路上,同时将A、B两端之间加入匹配电阻,一般选用100Ω左右电阻。RE和DE是接收和发送的使能端,当RE为逻辑‘0’时,器件处于接收状态;当DE为逻辑‘1’时,器件处于发送状态。因为SN75176B工作在半双工状态,所以可以将它们短接到一起,由MCU的P147引脚控制。当MCU发送DMX512信号时,P147引脚赋高电平;当MCU接收DMX512信号时,P147引脚赋低电平。r/min3.软件设计发送完成?单片机初始化开始发送模式Y按键选择工作模式设置通道数xY数据写入TX[x]中x++发送DMX512信号包NNY重新发送?N结束设置发送通道数numNYY选择通道数x?数据设置完成NYnum==x?N利用MCU单片机内部含有的定时器,来产生Break信号、MAB信号;配合UART通信端口实现DMX512数据的发送。单片机初始化开始接受模式设置接收通道数xx设置完成?接收DMX512信号接收完成?处理接收数据输出PWM波YNY重新接收?YYNN等待DMX512信号Break信号?N结束N按键选择工作模式单片机上电初始化后,选择接收模式。通过选择定时器通道7的低电平脉宽检测功能,可以判断Break信号。如果接收到的低电平脉宽达到Break信号的要求,则随后打开UART通信接收DMX512数据,否则继续等待。发送和接收部分加入偶校验位,提高数据接收的准确性。4、调试把其中任意一个模块作为主控模块,设置为发送模式;其他模块作为从控模块,设置为接收模式。可以看到从控模块中的LED终端灯显示不同亮度,LCD1602显示MCU输出的PWM波占空比,与预期相符。主控模块发送的DMX512数据包波形,如图所示。谢谢观看!
本文标题:简述DMX512通信
链接地址:https://www.777doc.com/doc-4204718 .html