7.新唐DMX512 舞台灯光方案介绍
上电后,数码管显示“00”
黑色按键用于主/从选择
数码管显示”H*”表示平台作为主发送端.
数码管显示”S*”表示平台作为从接收端.
数码管中显示的数位表示当前LED灯对应的信道.
LED灯以二进位方式显示当前信道发送或接收的数据。
此按键用于切换信道,每按一次,信道加一.最多支持9个信道,从1到9循环改变。
信道数据加减键,主发送端有效.用于改变数码管显示信道的数据.数据值通过LED灯显示.
8.DMX512 Demo框图
使用以下资源:
- •硬件平台采用NUC240 Arduino Board+NuEdu Basic01.
- •两套平台采用同一套程序,主/从可通过按键选择.
- •两套平台通过UART0通信,程序中选择主/从后,将主端的TX连接从端的RX.
上电后,数码管显示“00”
黑色按键用于主/从选择
数码管显示”H*”表示平台作为主发送端.
数码管显示”S*”表示平台作为从接收端.
数码管中显示的数位表示当前LED灯对应的信道.
LED灯以二进位方式显示当前信道发送或接收的数据。
此按键用于切换信道,每按一次,信道加一.最多支持9个信道,从1到9循环改变。
信道数据加减键,主发送端有效.用于改变数码管显示信道的数据.数据值通过LED灯显示.
8.DMX512 Demo框图
使用以下资源:
- –一路UART,用于进行DMX512通信.
- –Systick,作为时间基准.
- –两个TIMER.TIMER0用于7段数码管显示,TIMER1用于发送端BREAK和MAB计时.
- –22个GPIO(10个GPIO用于数码管显示,4个GPIO用于按键扫描,8个用于LED显示)
9.DMX512 Demo—信号接收说明
–接收器要检查二个停止位。
•本Demo在收到错误的停止位时,帧错误标志置1。收到错误的字段之前的数据是有效的。
–在重定信号间的最大间隔内(1 s)。
•接收器未接收到下一个重定序列(重定信号、重定后标记和起始码),即视为数据丢失。本设计采用以SYSTICK为基准时间,main中循环检测是否超时.
–本设计采用双缓冲区
–重定信号最小88 us。
•NUC240 uart模块中可通过置寄存器UA_LCR中BCB为1,可强制将TX输出’0’。本Demo中在设置UA_LCR中BCB位为1后,启动TIMER1,定时到88us后将清BCB位为0。
–MAB时间为8us.
•由于从DATA写入到UART中,到从TX端发送出来需要约4us的延时,另加代码执行时间,所以BREAK到START bit间只能延时3us,由TIMER1完成.`
10.DMX512 Demo—波形图
11.DMX512 Demo—代码
參考來源