Research on GUI Development Based on ARM Embedded System

Publisher:ananan一二三四五Latest update time:2012-01-16 Keywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

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. [page]

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.

Keywords:ARM Reference address:Research on GUI Development Based on ARM Embedded System

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

4412ARM Development Board Study Notes (I)
Before starting development, it is recommended that novices watch the 01-Xunwei Electronic Development Board Getting Started video. After you have a certain understanding of the development board and the development environment, do not blindly connect and start the machine. The following is a little experience of mine
[Microcontroller]
4412ARM Development Board Study Notes (I)
Microsoft and Qualcomm cooperate to provide more complete support for ARM Windows 10 devices
Microsoft today announced a partnership with Qualcomm to provide better support for applications running on Windows on ARM. Microsoft will expand App Assure with the FastTrack testing platform. Microsoft's App Assure with FastTrack program is available free of charge to qualified developers or customers. App Assure
[Mobile phone portable]
Technical characteristics and differences of ARM, DSP and FPGA
In the field of embedded development, ARM is a very popular microprocessor with a very high market coverage. DSP and FPGA are coprocessors for embedded development, helping microprocessors to better realize product functions. What are the technical characteristics and differences between the three? The following is a
[Embedded]
Technical characteristics and differences of ARM, DSP and FPGA
Alignment processing under ARM
from DUI0067D_ADS1_2_CompLib 3.13 Type qualifiers Some excerpts from the ARM compiler documentation on alignment Alignment usage: 1.__align(num)    This is used to modify the byte boundary of the highest level object. When using LDRD or STRD in assembly,    this command __align(8) is used to modify the limit. T
[Microcontroller]
ARM architecture version and corresponding kernel name
 Architecture  Kernel Name  ARM V7  Cortex Series: Cortex-M3 / Cortex-R / Cortex A8/Cortex A9/Cortex A15 Scorpion: Designed by Qualcomm based on Cortex A8 after obtaining ARM license.  ARM V4T  ARM7 TDMI  ARM V5TE  ARM10 TDMI / ARM 10E / XScale / ARM 9  ARM9 series includes:
[Microcontroller]
ARM architecture version and corresponding kernel name
SAM L21 microcontroller: ARM architecture, 5 different modes
  Atmel, a microcontroller manufacturer based in San Jose, California, recently demonstrated a new product that uses an ARM architecture-based microcontroller with extremely low power consumption, which is expected to greatly extend the battery life of small, low-power devices. The product belongs to the new SAM L21 3
[Microcontroller]
SAM L21 microcontroller: ARM architecture, 5 different modes
ARM vs. x86: Which is more suitable for the cloud computing era in the future?
ARM和英特尔处理器架构之争不断升温。英特尔x86如今的地位确实难以动摇,但是ARM具有显著的功耗优势,在未来更具吸引力。那么什么样的CPU最能满足未来的需求呢?   ARM released the Cortex-A15 processor in 2011, which is a multi-core out-of-order superscalar design that can run at up to 2.5GHz. The Cortex-A15 is significant because it is a departure from previous ARM designs, which sacrificed pe
[Analog Electronics]
ARM vs. x86: Which is more suitable for the cloud computing era in the future?
Implementation of single power supply ECG detection module based on ARM core
The design given in this article uses a single power supply, which can solve the above problems and reduce product costs. At the same time, the design also uses a simple and practical algorithm in an embedded system based on the arm core, which can quickly and accurately locate the QRS complex (that is, calculate th
[Microcontroller]
Implementation of single power supply ECG detection module based on ARM core
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
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号