欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

dmx512协议c语言编程,dmx512协议c语言编程

发布时间:2023/12/14 52 豆豆
生活随笔 收集整理的这篇文章主要介绍了 dmx512协议c语言编程,dmx512协议c语言编程 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

DMX512协议最先是由USITT(美国剧院技术协会)发展成为从控制台用标准数字接口控制调光器的方式。

DMX512超越了模拟系统,但不能完全代替模拟系统。DMX512的简单性、可靠性(假如能够正确安装和使用的话!)以及灵活性使其迅速成为资金允许情况下选择的协议,除了调光器外,一系列不断增长的控制设备就是证据。DMX512仍然是科学上的一个新领域,具有在规则基础上产生的各种奇妙技术。

DMX512 C程序

#include “reg51.h”

sfr T2CON =0XC8;

sfr T2MOD =0XC9;

sfr RCAPL2=0XCA;

sfr RCAPH2=0XCB;

sfr TH2 =0XCC;

sfr TL2 =0XCD; sbit GREEN = P1^0;

sbit BLUK = P1^1;

sbit YELLOW= P1^2;

sbit RED = P1^3;

sbit LED = P1^5;

bit revfg;

unsigned char start,ribit;

unsigned char cdata[6];

void initUART(void)

{

T2CON=0X34;

TH2=0XFF;

TL2=0XFE;

RCAPH2=0XFF;

RCAPL2=0XFE;

SCON=0XD0;

}

void bps(void) interrupt 4 using 1

{

if(RI)

{

RI=0;

if((RB8==0)&&(SBUF==0)){start=1;revfg=0;}

else if((start==1)&&(revfg==0)){revfg=1;ribit=0;}

if(revfg==1)

{

cdata[ribit]=SBUF;

ribit++;

if(ribit》=5){ribit=0;revfg=0;start=0;}

}

}

else if(TI==1)TI=0;

}

void main(void)

{ initUart();

EA=1;

ES=1;

RED=1;

GREEN=1;

BLUK=1;

YELLOW=1;

while(1)

{

if(cdata[0]==0)LED=1;

if(cdata[1]《50)

{

RED=0;

GREEN=0;

BLUK=0;

YELLOW=0;

} if((cdata[1]》=50)&&(cdata[1]《100))

{

RED=1;

GREEN=0;

BLUK=0;

YELLOW=0;

}

if((cdata[1]》=100)&&(cdata[1]《200))

{

RED=0;

GREEN=1;

BLUK=0;

YELLOW=0;

}

if(cdata[1]》=200)

{

RED=1;

GREEN=1;

BLUK=1;

YELLOW=1;

}

}

}

总结

以上是生活随笔为你收集整理的dmx512协议c语言编程,dmx512协议c语言编程的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。