Automotive body electronic control system solution based on 16-bit controller

Publisher:炉火旁的YyeLatest update time:2011-03-28 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
As the complexity of automotive body control applications continues to increase, the performance requirements of 16-bit microcontrollers (MCUs) are also increasing. Door control, seat adjustment, interior lighting and air conditioning systems that were previously controlled mechanically are now electronically controlled. A large number of dedicated semiconductor solutions from many semiconductor manufacturers, including Motorola, have made these new electronic control applications possible. These new solutions not only provide the necessary control functions, but also provide advanced diagnostic capabilities that the old mechanical systems cannot provide. Consumers expect the control system in new cars to provide timely warning information about any system operating failures in the car. This article focuses

on Motorola's MC9S12DP256 16-bit MCU and several peripheral IC products, which are designed to adapt to the harsh environments commonly found in automotive systems. In addition, the advanced diagnostic functions provided by these products are discussed in detail.

Power System

The power system is one of the most important subsystems in any automotive system design. Overall power consumption, battery reverse polarity protection, vehicle tripping, vehicle noise and vehicle sleep are all factors that must be considered. If the power design is poor, even the best system will not function properly. Motorola provides intelligent power semiconductor products that can well manage all aspects of the power subsystem.

Motorola's system-on-chip (SBC) MC33989 has two power rectifiers to provide power for the MCU and peripheral devices. It also provides a CAN interface with a speed of 1 megabit, four high-voltage wake-up inputs and system protection functions. This intelligent semiconductor device can provide the necessary system voltage. It has an internal low-noise 200mA rectifier to power peripheral devices. In addition, there is a device to control an external pass transistor to power peripheral devices. This external pass transistor allows the secondary power supply to be adjusted to meet the power consumption limit required for each special application. The secondary power supply can also cut off the power supply of selected peripheral devices as required, thereby achieving the purpose of reducing power consumption. The input power comes directly
from the vehicle battery. Only an external diode is needed to achieve the purpose of battery polarity protection. The SBC can complete the protection action under all overvoltage conditions. The application of power MOSFET process technology also enables this device to work normally when the battery voltage is as low as 4.5V, and it can output a battery fault alarm signal when the battery voltage is as low as 3V. The power system also has an over-temperature protection function. When the temperature reaches 160 degrees Celsius, it will perform internal thermal shutdown processing. When the temperature is 130 degrees Celsius, it will output an alarm signal. The SBC can also provide a low-power sleep mode, in which the system current can be reduced to 40uA.

CAN transceiver
In addition to providing system power, the SBC also integrates a 1-Mbaud CAN transceiver. The transceiver has functions such as master state timeout detection, internal thermal protection, and CAN+ and CAN- input short-circuit protection. The transceiver also has protection for the CAN+ and CAN- inputs against jump start, reverse battery connection, and short connection to power or ground. The 4 high-voltage wake-up inputs give the device a powerful wake-up function. The maximum withstand voltage of these wake-up inputs can reach 40V. The pull-up source of the input can be generated on the chip. Since only the pull-up source is needed to detect the change of the switch input at any time, the power consumption can be reduced well. The device also has a periodic wake-up function. In addition, the SBC also provides reset adjustment and low-voltage detection functions for the MCU.

Multiple Switch Detection Interface

Automotive electronics require highly complex input sensing circuits to detect switch states due to the need for special contact wetting currents and circuit fault detection. Motorola's Multiple Switch Detection Interface (MSDI) device MC33993 is designed for this purpose.
Systems that require a large number of switch interfaces have many discrete components that take up a lot of space on standard printed circuit boards and must be tested for solder joint integrity. Integrated solutions reduce the number of solder joints, occupy less space, and provide a wider operating voltage, thus providing greater flexibility. The MSDI device performs the switch detection function and can detect the open and closed states of up to 22 switch contacts. These detected open and closed states are then transmitted to the MCU via a high-speed serial link. Protection against transient interference can be achieved by adding a suitable electrostatic discharge capacitor to the input. Likewise, all inputs have reverse battery, trip and load removal protection functions.
The MSDI also has selectable wetting currents. These internal current sources greatly reduce the number of system components and make it possible to use metal or rubber switches. The large wetting current used to detect metal switches can be selectively used during the detection process, thereby reducing power consumption. The internal current source allows the input to be used as a power supply for light loads such as sensors, LEDs or MOSFET gates. This approach further enhances the system design performance by allowing these inputs to be used for other purposes when switch detection is not required.

High-impedance analog circuits are particularly susceptible to noise from other signals on the board. Shortening the analog signal path and allowing the device to buffer the signal can reduce this effect. The MC33993 has powerful analog interface capabilities, which can reduce system wiring and failure modes compared to traditional systems. The MC33993 also integrates a 22-to-1 analog multiplexer to improve device performance. Channel selection is achieved through a high-speed serial link. The device can provide advanced switch diagnostics and allow the use of analog sensor interfaces and ladder impedance interfaces.
MCU output circuits cannot directly drive automotive loads, and integrated circuits such as lamps, relays, motors, range meters and LED drivers are also required. These special input interface devices also provide protection and error detection functions.

Output System

After the power system and input adjustment are confirmed, the output system must be considered. Many automotive loads cannot be driven directly by MCU or low-current interface devices, including motors and lights. Relays or mechanical switches are the main high-current switching devices in today's automotive body control structures. Due to the low cost and mature design of electromagnetic systems, many system architects are still willing to choose them. However, the use of electromagnetic systems will cause many problems, such as:

1. The limited life of mechanical contacts limits the switching frequency of relays. Because the contacts have a certain inertia when opening or closing, there will be a certain degree of jump before stabilizing to the next state. This jump limits the maximum operating frequency. If this frequency is exceeded, the life of the relay will be greatly shortened.

2. Electromagnetic systems do not have diagnostic functions. In the harsh automotive environment, the reliability of these devices is a big problem.


Using drivers designed specifically for these loads, these loads can be easily integrated into the system. The MC33888 switch with 4 high-end and 8 low-end provided by Motorola is designed specifically for driving automotive loads. This device can directly control 4 high-end loads with a power of up to 60W and 8 low-end loads with a small current (2.5W). The MC33888 device also has built-in functionality to handle the surge currents associated with incandescent lamps.

The surge currents caused by incandescent lamps can reach 10 to 15 times the normal operating current, which can cause major problems for systems that do not have these large surge current handling circuits. The most common response to these loads is to trigger the overcurrent protection circuit to cut off these loads.


The MC33888 solves this problem well by using a startup timer to allow the incandescent lamp to preheat before the overcurrent protection circuit operates. The startup of the overcurrent protection circuit requires the detection of the state and pulse width signal that regulates the acceptable level of the output driver device.

Complete battery strike-back protection, load dump protection and low power consumption all help reduce system complexity and the number of external components. Diagnostic features include open load detection, short circuit detection and over-temperature detection. As an additional protection feature, the MC33888 device also has a built-in watchdog timer that can be used to shut down the device if communication between the device and the MCU is interrupted. Control of the device is achieved through a high-speed serial interface, thus greatly reducing the number of MCU pins required.

Electronic Motor Control
The last issue to consider is electronic motor control. The MC33887 motor driver is well suited for this task. It is a complete H-bridge driver. The device has a continuous current drive capability of more than 5A, making it ideal for locking motors, antenna motors or wiper pumps. The MC33887 also has a high-side current sensing feedback function that can modify the motor drive frequency and duty cycle based on real-time motor current feedback. Just like the lamp driver, it can automatically pulse-width modulate the output when an overcurrent condition is detected. The MC33887 device has full control over the H-bridge activation direction and interrupt control of the load.

Embedded Emulators

Designed specifically for complex automotive electronic applications, the MC38993, MC33887, and MC33888 devices offer solutions with advanced performance and diagnostic capabilities. Complex, multi-pin MCUs often cause development problems. The MC9S12DP256 provides a single-wire background debug interface that facilitates extensive debugging in an automotive environment without the difficulties commonly encountered with traditional circuit embedded emulators. The background debug interface can also be used to program the main flash memory at the end of the production line, or even to perform reprogramming operations in the vehicle.
Modern automotive microcontrollers often use flash memory to store the main operating program. The best way to program flash memory is to program the main program into the complete electronic control module after final assembly, which effectively avoids the risks and delays compared to having the main program programmed into the MCU by a third party before the module is assembled.

The main program is programmed into the MCU through a simple serial interface after the module is assembled, usually during final test. Some manufacturers use inexpensive stand-alone programmers to complete this operation, while others integrate the programming operation into the test equipment at the end of the production line.

Motorola's related devices provide a single-wire background debug interface for flash programming, verification and general debugging operations. When the device is working normally, the serial communication pin is pulled high at reset, so the background system is not activated. When a programmer or debug system is connected to this pin, the pin will be pulled low at reset, forcing the MCU to enter an active background mode instead of starting the application.
To facilitate debugging, a host system can be connected to the target MCU system when the device is working normally, so that the contents of the flash memory or registers can be monitored without interfering with the operation of the device. The connected debug system can also replace the control of the MCU to read and write CPU registers, set hardware breakpoints or trace single instructions.

Traditional circuit embedded emulators usually require 30 to 40 connections between the target system, while the above background debug interface only requires 2 to 4 connections. A single BKGD communication signal and a common ground are required. Adding a reset signal makes it easier for the host to force and control the system reset, and in some cases adding VDD allows the debug fixture to "steal" power from the target system.
This simple interface provides automotive electronics designers with debug access to the MCU installed in the electronic control module of a sports car. Many problems can only be discovered through debugging when the car is running under normal road conditions.

Memory Programming


The most important factors related to flash programming are speed and convenience. Programming speed depends on the programming time of the flash cells and the data transfer speed from the programmer to the target MCU. Of course, there are other factors, such as the time to erase the array before programming and the time to verify the success of the programming operation. The MC9S12DP256 takes 45ms to program any 16-bit word, but a burst programming operation allows any additional words in the same row of 32 words of flash to be programmed at a speed of 20ms. Theoretically, a word of information can be transmitted in 27ms using a single-wire background debug interface, which is slightly slower than the actual programming time of flash. Actual programming also requires additional task overhead, such as verification overhead. The stand-alone programmer tool SCBDMPGMR12 can complete the erase, program and verify operations of 256KB flash in slightly less than 10s.

Verification is a significant factor that generates overhead. Retransmitting all the data to verify word-for-word will double the programming time. A faster approach is to perform the CRC calculation as the data is programmed into the flash, then reread the flash contents to verify the CRC value after the entire flash is programmed. This operation can be performed at full bus speed and does not require retransmitting the data.


Separating the data transfer to the target so that it is completed before the data is programmed into the flash will also double the programming time. A better approach is to perform the data transfer in parallel with the programming operation. Typically, the programming algorithm is sent to the target MCU first, which facilitates the management of the received data and sends the data to the RAM buffer, and then controls the erase and program operations. The programming algorithm uses two data buffers to receive the data to be programmed into the flash. When the first buffer is full of data, the programming algorithm begins programming the data into the flash while the new data is loaded into the second buffer. A background interface can be used to receive data and write them to RAM without interfering with the target CPU, which reads data from another buffer to program into the flash.

The flash in the MC9S12DP256 is divided into four independent 64KB blocks, so the erase and program operations can be performed independently of each other. In the case of background debug based flash programming, it is not practical to attempt to interleave programming operations of the individual arrays because the data transfer speed is slightly slower than the average word programming speed of the flash, but it is possible to perform a bulk erase operation on all four blocks in parallel.


Background access provides an extremely convenient way to program the flash for the first time, but some users still want to use other system buses such as CAN, J1850 or serial interface buses to complete all field reprogramming operations. This can be easily achieved by including a suitable boot loader in the main application. In response to some special code from one of the buses in the finished vehicle, the boot loader should be able to erase the flash and accept the new programming data.
Reference address:Automotive body electronic control system solution based on 16-bit controller

Previous article:Design and application of a multi-point temperature measurement and temperature control system
Next article:L484 Magnetic Induction Electronic Ignition Controller

Latest Industrial Control 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号