With the development of embedded systems, they are becoming more and more complex in software and hardware, and the requirements for the efficiency of human-computer interaction are also increasing, especially for some complex industrial control equipment and consumer electronic products. Therefore, the graphical user interface (GUI) has been separated from the system program of the embedded system. Since the development of embedded GUI, there are many types and powerful functions. Embedded GUI has become an indispensable component of a successful embedded system [1]. This paper develops a graphical interface on an embedded system with ARM as the core and simulates the Windows interface.
1 ARM processor
Embedded systems are the result of combining advanced computer technology, semiconductor technology, electronic technology, and specific applications in various industries. Embedded systems are application-centric, computer-based, and tailorable hardware and software. They are suitable for application systems and have strict requirements on functions, reliability, cost, volume, and power consumption. They are generally composed of the following parts: embedded microprocessors; peripheral hardware devices; embedded operating systems. Embedded systems are the result of combining advanced computer technology, semiconductor technology, electronic technology, and specific applications in various industries. This determines that it must be a technology-intensive, capital-intensive, highly decentralized, and constantly innovative knowledge integration system. Therefore, when getting involved in the embedded system industry, you must have a correct positioning. For example, the reason why Palm occupies more than 70% of the market in the PDA field is because it is based on personal electronic consumer products and focuses on the development of graphical interfaces and multi-task management; and the reason why Wind River's Vxworks is used on the Mars rover is because of its high real-time performance and high reliability.
Specific application ARM (Advanced RISC Machines) microprocessor is a microprocessor that uses ARM technology intellectual property (IP) core. This ARM core technology is authorized by ARM, a British company. Major semiconductor manufacturers in the world purchase ARM microprocessor cores designed by ARM, and add appropriate peripheral circuits according to their different application fields to form their own ARM microprocessor chips and enter the market. ARM processor is a 32-bit reduced instruction set (RISC) processor architecture, which is widely used in many embedded system designs. ARM processor features: small size, low power consumption, low cost, high performance; support Thumb (16-bit)/ARM (32-bit) dual instruction sets, can be well compatible with 8-bit/16-bit devices; a large number of registers are used, and instruction execution speed is faster; most data operations are completed in registers; addressing mode is flexible and simple, and execution efficiency is high; instruction length is fixed.
2 Graphical User Interface Characteristics and Development Trends
2.1 Characteristics of Graphical User Interface
A graphical user interface or graphical user interface (GUI) refers to a user interface of a computer operating environment that is displayed in a graphical manner. Compared with the command line interface used in early computers, the graphical interface is easier to use for users. The widespread application of GUI is one of the major achievements of today's computer development. It greatly facilitates the use of non-professional users. People no longer need to memorize a large number of commands. Instead, they can use windows, menus, buttons and other methods to conveniently operate. The embedded GUI has the following basic requirements: lightweight, low resource consumption, high performance, high reliability, easy portability, and configurability. The widespread popularity of is one of the major achievements of today's computer technology. It greatly facilitates the use of non-professional users. People no longer need to memorize a large number of commands, but can conveniently operate through windows and menus. The main features of the graphical user interface are as follows:
1. WIMP
W (Windows) refers to windows, which refers to a working area of a user or system. There can be multiple windows on a screen. I (Icons) refers to graphics, which are figurative graphic symbols that are easy for people to understand. M (Menu) refers to menus, which are function prompts that users can choose. P (Pointing Devices) refers to the mouse, etc., which makes it easy for users to directly operate screen objects.
2. User Model
GUI uses many desktop metaphors to share an intuitive interface framework for users. Because people are familiar with the desk, they can easily understand the meaning of the graphic symbols displayed on the computer, such as folders, inboxes, brushes, workbooks, keys, and clocks.
3. Direct operation
In the past, interfaces not only required memorizing a large number of commands, but also required specifying the location of the operation object, such as line number, number of spaces, X and Y coordinates, etc. After adopting GUI, users can directly operate objects on the screen, such as dragging, deleting, inserting, and even enlarging and rotating. After the user performs the operation, the screen can immediately give feedback information or results, so it is called what you see is what you get. Using viewing and clicking (mouse) instead of memorizing and clicking (keyboard) brings convenience to users.
2.2 Development Trends of Graphical User Interfaces
With the rapid development of virtual reality, scientific computing visualization and multimedia technology, new human-computer interaction technologies continue to emerge, and more natural interaction methods will gradually be valued by people. The main features of the new generation of interfaces can be described as follows: user-centric, intelligent, high-bandwidth, unlimited location, graphic programming, etc.
3 ARM Embedded System GUI Development
In recent years, embedded systems have developed rapidly, with various product forms. As embedded products become more commercialized, the requirements for graphical user interfaces (GUIs) are becoming higher and higher.
3.1 LCD and its driver
This design uses a 2.2-inch TFT LCD screen - TFT6758 LCD module, which has an operating voltage of 3.3V and a built-in white LED backlight. It can be directly connected to the controller using an 8-bit, 16-bit or 18-bit bus (because the LCD module contains HD66781 and HD66783 LCD control drivers). When using the LCD screen, you need to add its corresponding driver first. The driver chip of the dot matrix LCD display TFT6758 is HD66781, and the gate driver chip is HD66783.
Figure 1 TFT6758 LCD module application circuit
3.2 Selection of software platform
At present, there are several mature and representative embedded GUI development software on the market, such as MiniGUI of Beijing Feiman Software Company, MicroWindows of Century Software Company in the United States, Qt/Embedded of Troltech Company in Norway, etc. These GUI systems have their own characteristics, but most of them need to be ported to embedded operating systems, which will definitely increase the investment of time and energy. Therefore, after comprehensively considering various factors, ZLG/GUI is used as the software platform for this design.
3.3 Design and implementation of simulating Windows interface
The desktop of the Windows system that we often use is a gorgeous graphical user interface, so the design simulates the graphical interface of the Windows desktop.
The design idea of this interface is: fill the full screen with a picture as the desktop background pattern of Windows. After calculating the coordinate value of the status bar, select green and blue to fill two rectangles at the bottom of the LCD screen as the status bar. Determine whether a key is pressed. If not, continue to display the desktop. If a key is pressed, display the start menu. The process of displaying the Windows interface is shown in Figure 2. The simulated Windows interface is displayed on the LCD as shown in Figure 3.
Figure 2 shows the Windows interface process
Figure 3 Simulating Windows interface
4 Conclusion
In recent years, with the development of embedded technology, embedded systems have developed rapidly. Embedded devices will be applicable to a wider range of fields, such as aerospace, aviation, military, medicine, as well as home appliances, transportation, communications, etc. that are closely related to people's lives. As embedded products become more commercialized, they will involve issues of user convenience, and the requirements for graphical user interfaces (GUIs) are getting higher and higher. How to develop a GUI system suitable for one's own hardware conditions has become an important part of embedded system development. This design uses ZLG/GUI as the software platform, and for complex applications, MiniGUI and other software can be used as the software platform.
Previous article:Application of ARM in Embedded Linux Kernel Cutting and Transplantation
Next article:Analysis of the optimization and implementation of ARM926EJ-S in MPEG-4 soft decoder
Recommended ReadingLatest update time:2024-11-16 23:32
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- A collection of autonomous driving technical materials, download now without any points!
- Switch OUT?! Nintendo's latest recruitment may be aimed at the next generation console
- 【ST NUCLEO-H743ZI Review】+ 3. Key input
- Today's Live Broadcast | Outlook for DLP Technology in AR HUD and In-Vehicle Display Applications
- Award-winning live broadcast: Focus on "TI FPD-Link III automotive chipset" Ideal solution for automotive video transmission
- Playing with Zynq Serial 1——Zynq Linux boot process
- 【AT-START-F425 Review】Overclocking Performance of AT32F425
- I can't access GitHub anymore, what should I do? I can't access it at all
- [Mill MYB-YT507 development board trial experience] opencv face detection
- TouchGFX application development based on STM32CubeMX on STM32H7A3 processor - HelloWorld!