Implementation of User Graphical Interface of Digital Oscilloscope in Embedded System

Publisher:码上奇迹Latest update time:2012-11-03 Source: 21ic Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
1 Introduction

As the application field of embedded systems continues to expand, the complexity of the system is also increasing. Therefore, it has become a general trend to implement user graphics (GUI) in embedded systems. At present, most user graphical interfaces (GUI) in embedded systems are implemented by calling various API functions of the system with the support of operating systems (such as OS, WinCE, and Linix). These operating systems provide a large number of library functions for implementing GUIs and also provide programmers with a good platform for interface design. For example, WinCE can be used to easily design a Windows-style graphical interface.

The digital oscilloscope in this article is the DS1000 series launched by RIGOL. Its design is completely independent and close to the usage habits of Chinese people. Its user graphical interface (GUI) is developed based on VisualDSP++ 4.0 Kernel, and the interface style is closely related to the function of the instrument. On the basis of completing the display of the instrument's waveform and menu, the RIGOL team also made some general user graphical interfaces, such as file managers. Of course, the designed user graphical interface is far from being comparable to WinCE in terms of powerful functions, but it is convenient enough for the instrument users because it is the user graphical interface of the instrument after all, not the user graphical interface of a handheld computer (PDA).

2 Principles of user interface implementation on digital oscilloscopes

The implementation of the user graphical interface requires hardware and software support. As shown in Figure 1, through the deployment of the operation platform, the display program is called, the display program refreshes the display cache, and then the display driver displays the contents of the display cache on the LCD screen.

The following is a brief introduction to the main components in the figure above:

2.1 Hardware principle of realizing graphics

RIGOL DS1000 series digital oscilloscope uses a 320X234 resolution TFT liquid crystal display. Through the liquid crystal drive circuit, the liquid crystal can be displayed normally. Through the frame signal synchronization, line signal synchronization, and data signal clock synchronization, the data of the display dot matrix will be written from the SDRAM to the display buffer of the liquid crystal display, thereby displaying a color image.

As can be seen from Figure 1, if we want to update the content displayed on the liquid crystal display, we only need to update the display data in the LCD buffer.

2.2 Graphics standard library

for realizing the user graphical interface (GUI) To display various graphics and patterns on the user graphical interface, in addition to the support of hardware circuits, powerful software support is also required. Among them, the graphics standard library (GUI) is the most basic and indispensable.

The graphics standard library of the user graphical interface (GUI) includes the most basic functions of drawing points, drawing lines, drawing rectangles, filling rectangles, drawing circles, placing bmp patterns, displaying Chinese and English, etc. The more powerful the graphics library is, the more complex the user graphical interface (GUI) can be supported.

2.3 Support for the operating platform to realize the user graphical interface (GUI)
It is far from enough to realize the user graphical interface just by having a graphics standard library for drawing graphics. The graphics library is indispensable for a single screen, but to form an organic and operable user graphical interface, a stable and powerful operating system platform is also required in the background.

The operating platform determines the next state of the system based on the user's external input (usually the keyboard) and the current state of the system, and then calls the corresponding GUI interface. In this way, the user graphical interface is realized.

3 Design ideas for the graphical user interface (GUI) software of digital oscilloscopes

3.1 Classification of interface types

The design of the graphical user interface (GUI) cannot be completed simply and uniformly, and the user's operating interface in various situations must be considered. Based on the common points of these interfaces, we divide these interfaces into the following categories. The same type of interface will have the same or similar functional areas. Each interface will have a corresponding processing program and a dedicated data structure. [page]

According to the different functions implemented, we divide the following interface types:

A. Background grid display interface; B. Waveform display interface; B. Help document browsing interface; C. Menu display interface; D. File management browser interface; E. File name input interface; F. Foreground content display interface (including various parameter display information, measurement information and prompt information, etc.).

The various interface types are shown in the figure below:

3.2 Mutual coordination and response between interface area and external input

From the above, we can see that although the displayed graphics are of various shapes, they can all be abstracted into a certain data structure with common attributes. The data structure is like the soul of the graphical interface. If you master the data structure, you can change the graphical interface accordingly.

Then how to design, control, and change these data structures becomes the key to realizing the user graphical interface (GUI).

To respond to the input of external users, we need to formulate a set of mechanism operation rules, and this set of mechanism operation rules is the state machine (system status machine), which is also the operation platform (operation platform) used by users to operate the instrument. According to this set of operation rules, our system changes the data structures used in various interfaces according to external input, so as to realize the user's operation of the graphical interface.

Of course, in the actual design, the operation platform (operation platform) is not only to change the data structure of the GUI, but also to consider the changes in the data structure in task scheduling and other task modules.

4 Software Design Process of the User Graphical Interface (GUI) of Digital Oscilloscope

Designing a good user graphical interface is a huge and detailed project. It involves the relationship between various aspects and many details in the implementation process.

How to sort out the relationship between these numerous changes is the key to design. The RIGOL team used some global variables as labels for various states and modes to change the user's graphical interface. However, due to the large number of variables, the possibility of matching between variables has increased exponentially, and the state transfer relationship will also increase exponentially. For programmers, this is more like doing a very complex logical combination problem than programming.

Therefore, this idea is feasible in theory, but it is not advisable in practice. We should try to remove the branches and leaves and find variables or structures that can run through the entire system and mark different states and modes. In the end, we use the keyboard input key value as the main line, supplemented by various global variables to control the changes in system state. Although there are many key values, because there is only one variable as the state variable, the changes in system state can be controlled. Therefore, in this system, the key value variable KEY_ID becomes the protagonist, and the user interface will change around it.

The key value variable KEY_ID should change according to the user's input. Here we will not describe how the state variable is transferred. We will introduce how to complete the output of the user graphical interface for the given key value variable KEY_ID.

The following figure is the software flow chart for implementing the user graphical interface.

5 Conclusion

At present, in addition to the low performance indicators of measuring signals, domestic digital oscilloscopes are not as well considered as foreign products in terms of system integrity and user operability.

In order to make up for the shortcomings of domestic products in this regard, the DS1000 series digital oscilloscope developed by the RIGOL development team not only realizes high storage depth, high measurement accuracy and other functions, but also pays attention to the design of the graphical user interface. Continuing to maintain its advantages in technological innovation and humanization and localization, the new user graphical interface enables users to measure and analyze waveforms more easily than ever before. As the functions

of the instrument increase, higher requirements will be placed on the user graphical interface (GUI), which requires the GUI to be more systematic, modular and functional. Therefore, we still have a lot of work to do in this regard.

[1] VisualDSP++4.0 Kernal (VDK) User's Guide, Analog Devices, Inc. 2005
[2] Blackfin Series DSP Principles and System Design, Chen Feng, Publishing House of Electronics Industry, 2004
[3] Data Acquisition and Processing Technology, Ma Mingjian, Zhou Changcheng, Xi'an Jiaotong University Press, 2001
[4] Digital Circuit Design and Application Practice Tutorial, Wang Zhenhong, Machinery Industry Press, 2003
[5] Military Electronic Measurement Instrument Application Guide, Mei Jinsong, Publishing House of Electronics Industry, 2001
[6] RIGOL "DS5000 Series Digital Oscilloscope Technical Documents", internal document, 2004 (end)
Reference address:Implementation of User Graphical Interface of Digital Oscilloscope in Embedded System

Previous article:Differences between analog oscilloscopes and digital oscilloscopes
Next article:Application of Oscilloscope Technology in Automobile Fault Detection and Diagnosis

Latest Test Measurement 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号