Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

Publisher:yunhaoLatest update time:2020-08-17 Source: elecfansKeywords:ARM  Cortex-M01  Processor  DMX512 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1 Introduction

The DMX512 protocol is a digital multiplexing protocol developed by the United-States Institute for Theater Technology (USITT). Its original intention was to make the numerous dimmers and controllers used in stages, theaters, etc. compatible with each other. Although it is not an industry or national standard, it has been generally recognized by manufacturers and users around the world since its introduction due to its simplicity and practicality. In China, more and more manufacturers are producing or paying attention to digital dimming equipment using the DMX512 protocol.


This paper proposes a design of a DMX512 dimming device based on the Cortex-M0 microcontroller. This solution can access 2 DMX signals, merge them for dimming, detect the silicon circuit temperature, voltage and current according to the internal AD, and then report them to the console.


2.Cortex-M0

The ARM Cortex-M01 processor is the smallest, lowest energy consumption and most energy efficient ARM processor currently available. The processor has a very small silicon area, extremely low energy consumption and requires very little code. It is a 32-bit RISC processor with a 16-bit Thumb instruction set and high code density. The highly optimized power consumption and area make it more suitable for low-cost and low-power occasions. The automatic protection of the interrupt site minimizes the software overhead when entering and exiting the interrupt. At the same time, it has a certain instruction execution time to ensure that the execution time of each instruction is always the same, so as to achieve a real-time control. As the lowest-end product of ARM, it also has the characteristics of high cost performance, stability and reliability. Therefore, choosing this chip and applying ARM's MDK integrated development tool can improve development efficiency and shorten the development cycle.


3. System hardware design

This DMX512 dimming device is based on NUC100 (Cortex-M0) as the control core. The hardware part of the whole system includes DMX512 signal access module, MCU, phase detection module, dimming output module, temperature, voltage and current detection module, communication module, display module, etc. The block diagram of the whole DMX512 dimming device is shown in Figure 1.

Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

The essence of DMX512 signal is RS485 signal, so it can meet the requirements by connecting through the serial port of NUC100 and adding 485 chip. The temperature and current detection module converts the temperature and current into corresponding voltage signals through the peripheral current and samples them through the AD channel of NUC100. The phase detection module correctly detects the zero crossing point of the AC power through the LM258 comparator. The dimming output module outputs PWM signal from NUC100 to control the silicon block to control the light intensity. The communication module can report the real-time detected temperature and current to the console through the serial port, and the console can set the device through this interface. The hardware block diagram of the entire device is shown in Figure 2 below.

Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

4. System software design

The software part adopts program modular design to facilitate the debugging and implementation of various functions. The system software program mainly consists of five modules: main program, Dmx512 signal processing, dimming control PWM output processing, communication processing, and display processing.


4.1 Main program module

The main program module uses a loop query until the power is cut off to exit, so as to achieve the purpose of controlling the brightness of the light. The main program flow is shown in Figure 3.

Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

4.2 Dmx512 signal processing module

The DMX512 signal processing module receives the DMX512 signal from the outside. After receiving the break signal, it starts to receive data. After receiving the next break signal, the reception of one frame of DMX512 data is completed. The DMX512 data reception process is shown in Figure 4.

Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

4.3 Dimming Control PWM Output Processing Module

The PWM output processing module outputs a PWM signal with a period of 10ms according to the DMX512 data. Figure 5 shows the PWM dimming output process.

Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

4.4 Communication Processing Module

The communication processing module processes the signals from the console and performs equipment initialization, configuration, and debugging.

4.5 Display Processing Module

The display processing module is responsible for displaying the start address of the display device using the DMX512 signal.


5. Conclusion

This paper proposes a design scheme of DMX512 dimming device based on Cortex-M0. The scheme is based on 485 serial communication technology, and from the application perspective, the hardware and software design of DMX512 dimming adjustment is given. Practical application proves that the device is easy to operate, runs well, and has stable and reliable functions.

Keywords:ARM  Cortex-M01  Processor  DMX512 Reference address:Software and hardware system design of DMX512 dimming equipment using ARM Cortex-M01 processor

Previous article:Functional characteristics, working principle and data acquisition application analysis of LTC2207 chip
Next article:Development of IMX35 in-vehicle infotainment module based on ARM11

Recommended ReadingLatest update time:2024-11-22 21:09

Design of car display system based on ARM single chip microcomputer
0 Introduction The 8-bit 51 single-chip microcomputer has long occupied the mainstream market of microcontrollers (MCU), but with the development of technology and demand, the application growth rate of 32-bit microcontrollers is also rising. At present, 32-bit microprocessors based on the ARM core are in a leading p
[Microcontroller]
Design of car display system based on ARM single chip microcomputer
Research on ARM S3C2410 Driving TFT-LCD
The data and control pins of the LCD controller of S3C2410 are introduced, and the control flow of LCD and the setting rules of the TFT-LCD controller are given. The driving circuit of TFT-LCD CJM10C0101 is designed with reference to its logic requirements and timing requirements, and the main LCD registers are set.
[Microcontroller]
Research on ARM S3C2410 Driving TFT-LCD
Keil for ARM and C++
1. If your program uses C++ global variables, then *do not* use MicroLIB, otherwise Keil will say that a certain symbol cannot be found. 2. One problem with not using MicroLIB is that KEIL will use semihosting SWI to complete sys_io (for example, when printingf), and we need a retarget.c to disable semihosting. KEIL
[Microcontroller]
ARM's common IO application--light up the LED lamp
The program is not much different from the microcontroller, only the register definitions are different. Just read the documentation and don't make any mistakes, and there will be no problem. The procedure is as follows: #include LPC213x.H #define L5_Communicatin_Flag (1 28) //define P0.28 pin Sys_Init() {  PI
[Microcontroller]
Application of ARM core board in EEG monitoring TCI injection pump
1.1 Background Events When the anesthetic dosage exceeds the standard, it is easy to cause cardiac arrest and respiratory arrest, thus causing brain damage. Traditional anesthetic injection relies on the experience of the anesthesiologist, while the new EEG monitoring TCI injection pump combines BIS (EEG monitoring)
[Power Management]
Application of ARM core board in EEG monitoring TCI injection pump
How to get the most out of your ARM Cortex-M3 and M4 microcontrollers
    Preface     Many embedded developers are familiar with the ARM Cortex processor architecture, but few are able to fully understand this popular architecture and take advantage of its unique features and performance. This is especially true of the new ARM Cortex-M4 processor, which boasts an enhanced architecture,
[Microcontroller]
How to get the most out of your ARM Cortex-M3 and M4 microcontrollers
ARM interrupt macro definition
MACRO     $HandlerLabel HANDLER $HandleLabel     $HandlerLabel     sub sp,sp,#4 ;decrement sp(to store jump address) stores PC jump address     stmfd sp!,{r0} ;PUSH the work register to stack(lr does not push because it return to original address)     ldr r0,=$HandleLabel ;load the address of HandleXXX to r0
[Microcontroller]
ARM interrupt macro definition
ARM assembly MOV PC, LR
BL NEXT ; Jump to subroutine   .........; Execute at NEXT   NEXT   ..........   MOV PC,LR ;Return from subroutine Here BL means jump, LR (R14) saves the return address, PC (R15) is the current address, and giving LR to PC means returning from the subroutine. 1.SP(R13)、 LR(R14)、PC(R15) 2. The role of LR (R14). Gen
[Microcontroller]
Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号