Design of MC9328 MX1 Microprocessor Smartphone System

Abstract: Q2403A is designed and implemented as a wireless transceiver module and embedded Linux as the operating system of the smartphone system. The design can realize functions such as GSM voice communication, GPRS Internet access and PDA related application software, and has the advantages of clear structure and easy development.

This article refers to the address: http://

Keywords: Linux embedded system smartphone

With the rapid development of the handheld communication device market, the functions of mobile phones are gradually increasing. Nowadays, mobile phones are not only handheld devices for voice communication, but also an embedded communication platform that integrates additional functions such as SMS, MMS, Internet access and mobile office. A phone that integrates these features is called a smartphone. In recent years, the speed and functionality of embedded processors have been greatly improved, making many applications that were previously only available on PCs now available on handheld devices. At present, the smartphones on the market mainly use Microsoft's ocket PC, Palm OS and other commercial operating systems, but the open programs of these operating systems are not high enough, which limits the porting of many third-party applications. In order to enable the smart phone to provide a more open embedded platform for third-party application software, the author made a more in-depth study on the smart phone system, and proposed a Linux operating system, Motorola MX1 as a microprocessor. Design and implementation of a smartphone system using Wavecom's Q2403A as the RF module.

1 Hardware design of the smartphone system

The hardware design of the smartphone system is shown in Figure 1. The design uses Motorola's MX1 (MC9328) high-performance 32-bit microprocessor, Wavecom's Q2403A wireless transceiver module to achieve smart phone GSM calls, GPRS Internet access and other PDA applications.

1.1 microprocessor

The system's MC9328 MX1 microprocessor is the latest Motorola DragonBall family of microprocessors. It uses an advanced power-saving ARM920T core with speeds up to 200MHz. Integrated LCD controller, SRAM, USB interface, an A/D converter (supports touch screen control), and an MMC/SD host controller. 256-pin MPPBGA package.

1.2 Wireless transceiver module

The system uses WAVECOM's dedicated wireless transceiver module. It is a dual-band GSM module (EGSM900/1800MHz) designed and developed in accordance with the ETSI GSM Phase 2+ standard. With voice, GSM circuit data / fax, GPRS packet data, short messages and other functions. The module supports the AT command set and communicates with the MX1 via RS232.

1.3 Other peripherals

Other peripherals for smartphones include LCD, Touch panel, Audio CODEC and more.

2 Software design of smart phone system

System analysis and software design are one of the difficulties in the implementation of smart phone systems. The advantages and disadvantages of design are related to the stability and scalability of the system. The design of the smartphone software system has become relatively complicated because of the need to balance the GSM voice control with other smartphone applications. The system design divides the software into three layers, as shown in Figure 2. The bottom layer is the operating system layer, which mainly implements the transplantation of the Linux operating system, including the bootloader bootloader, the driver of the LCD and other devices. The middle layer is the service program layer, which mainly includes the GUI server and the GSM/GPRS control server. The key to the design of smartphone systems lies in the implementation of various functional applications. The layered design of the smartphone software is conducive to the coordinated operation of each function, and also facilitates the development and debugging of the software.

2.1 Embedded Linux Operating System

Linux was originally an open source, freely available operating system written and distributed by Linux Torvalds. Later, with the addition of hundreds of programmers on the Internet, Linux became an operating system that supported almost all mainstream 32-bit CPUs. Its main features are: efficient and stable kernel, open source code, portability, reduction, support for multi-tasking, etc.

The Linux kernel used in this design is based on ARM-Linux, and the boot program and power management control program conforming to the hardware design are written. For the hardware design of the system, hardware design drivers such as LCD and touch screen are written.

When the smartphone is based on the Linux operating system, the CPU is first initialized; then the device drivers are loaded, the memory and peripheral devices are initialized; and finally the service programs are started and the standby state is entered.

2.2 Design of the service program

The service programs in the smartphone system mainly include GUI Server and GSM/GPRS Server, which are the basis for the upper layer application.

2.2.1 GUI Server

In order to make the system support the complex interface applications such as browser and MMS, and have good scalability, the GUI Server design in this system adopts the client/server mode, and the graphics device is in the form of a dynamic link library. The interface is encapsulated, as shown in Figure 3.

The service process communicates with the application process using a message queue provided by Linux. The service process saves the description information of the system GUI environment, provides registration and some computing tasks for the application process, such as calculating the current cut domain content. In addition, it is also responsible for displaying the desktop. After the application is started, it first establishes a connection with the service process and interacts with it, and sends some description information of itself to the service process.

The service process and the application process implement the basic window display function by calling the dynamic library. The window tree and the clipping domain are defined in the dynamic library. For the service process or application, they are transparent and do not need to be managed. Because the service process runs in a different process space than the client process, although the same data is defined in the dynamic library, there is no conflict between them.

The design layered the functions encapsulated in the dynamic library. The function that directly outputs to the Framebuffer is at the lowest level of the system, which is the device context. Because each time a window is output, the design context must be established first. Therefore, the device context can always refer to the window structure. Naturally, it can also refer to the window clipping domain, and the output can be output within the scope of the clipping domain.

The graphics device interface is built on top of the device context, including points, lines, polygons, text, and so on. As mentioned above, before output, the device context is first established, ie the target of its output is the device context, not the window.

The upper layer of the graphics device interface is the application development interface, that is, the API layer. The desktop process and the client process implement system functions by calling API functions.

In addition, the system establishes an abstraction layer of inputs that shields different input devices.

2.2.2 GSM/GPRS Server multiplex communication server software

The GSM/GPRS Server multiplex communication server software is a daemon of telephone, short message and data services. It is responsible for responding to user operation events forwarded by the application and wireless communication module events obtained from the serial port, which is the core of the entire smart phone system. In this part of the work to achieve multi-link data communication, event priority discrimination, and in the implementation of data communication, to ensure access to telephones and text messages. The specific program device structure is shown in Figure 4.

2.3 Application Design in Smartphone System

With the middle layer service program, the upper application can be ported and developed according to the interface provided by GUI Server and GSM/GPRS Server. In this design, the telephone control program, the management of short message transmission and reception, and the application of data energy are realized. The following is a telephone control program as an example to introduce the design and implementation of a smartphone application.

The author divides the phone control program design into three operating states: PowerOn State, Idle State, and Execution State. Figure 5 shows the relationship between the three states and the conditions for entering each state.

The phone control program enters the Power-on State after the smart phone system is powered on and the GSM/GPRS Server is started. In the power-on state, the program first performs initialization work, communicates with the GSM/GPRS Server, and obtains the system status. After initialization, it enters the Idle State. In the idle state, the program loop waits for incoming calls from the GSM/GPRS Server and outgoing calls from the keyboard; when these events occur, the program enters the Execution State. In the execution state, the user performs voice communication, and after the call ends, the program returns to the idle state.

The system design has been successfully applied in practical engineering projects, and its feasibility and practicability have been tested in the actual application environment. In the next step, the CPU frequency of the system can be further improved, and the wireless communication module can be replaced with the 3G standard. In this way, a wider range of handheld device applications can be realized based on the design of the system.

USB-C HDMI Video Adapters

Dongguan Pinji Electronic Technology Limited , https://www.iquaxusb4cable.com

This entry was posted in on