Freescale Variable Key Security Protocol Transmitter User s Guide by: Ioseph Martínez and Christian Michel Applications Engineering - RTAC Americas

Size: px
Start display at page:

Download "Freescale Variable Key Security Protocol Transmitter User s Guide by: Ioseph Martínez and Christian Michel Applications Engineering - RTAC Americas"

Transcription

1 Freescale Semiconductor User s Guide VKSPTXUG Rev. 0, 06/2008 Freescale Variable Key Security Protocol Transmitter User s Guide by: Ioseph Martínez and Christian Michel Applications Engineering - RTAC Americas 1 Introduction The software explained in this document allows implementing a complete remote keyless entry RKE system. The variable key security protocol VKSP implements secure communication using one-way authentication with 128 bits of encryption. The VKSP software library is divided in two main blocks, transmitter and receiver. This document focuses only on the transmitter part. 2 VKSP Overview VKSP is a protocol intended mainly for RKE systems. It sends commands rather than information. The commands sent through the communications link are visible for any device monitoring the communications channel. VKSP carries two main tasks: the generation of authentic messages and the verification of received messages. These tasks are abstracted from the application layer. Contents 1 Introduction VKSP Overview Associating a Transmitter with a Receiver VKSP Transmitter Driver Overview Configuration of the VKSP Transmitter Driver VKSP Transmitter Application Program Interface Application Program Interface API Interfaces VKSP Transmitter Driver Implementation RKE Transmitter Overview Components Used Memory Interface Implementation Encryption Interface Implementation Pseudo Random Number Generation Interface Implementation Step-by-Step Setup Guide of VKSP Transmitter Application Freescale Semiconductor, Inc., All rights reserved.

2 A transmission frame is generated with every command sent. The transmission frame has two main parts: the data section and the message authentication code MAC section. The data section is sent un-encrypted to the receiver and has the following information: Transmitter ID: This is a three-byte identifier of the transmitter device. Command: This is the one-byte command that indicates the to receiver what action to perform. Variable Key: This is a four-byte value incremented with time and ensures that the messages received were not previously sent. Message authentication code: This 8-byte code authenticates messages on the receiver side. The message authentication code ensures that the data information is authentic. The MAC is generated automatically by the VKSP transmitter driver. To generate a MAC, the drivers use local keys generated internally and that cannot be accessed from external functions for security reasons. The next figure depicts how the transmission frame is generated. Encryption Block Truncated to 64 bits ID,CMD,VK, part of local key VK and local keys 128 bits data 128 bits key Out MAC 64 bits Transmission Frame ID, Command, Variable Key 64 bits Figure 1. Transmission Frame Generation The steps taken to verify the validity of a message are the following: 1. The ID data from the incoming message is extracted. This ID is looked-up in the receiver database. If the ID is found in the receiver database, a local key and a variable key associated with that ID are fetched. 2. The received variable key must be greater than the stored variable key. This step ensures that any re-transmitted frame a frame that was already sent before is not accepted. 3. The authentication is performed. A message authentication code MAC is generated from the received data, local data, and local keys. This generated MAC is compared to the received MAC from the received message. If these two MACs are equal, the command is accepted. The authentication process is illustrated in the Figure 2. MAC 64 bits 2 Freescale Semiconductor

3 Figure 2. Normal Transmission Validation 2.1 Associating a Transmitter with a Receiver A learning sequence is a process that must be performed each time a new transmitter is registered in the receiver system. For example, if a car user acquires a new transmitter key fob, it is necessary to register that key fob into the database of the car. This is done by performing a learning sequence. When the car receiver system receives the learning sequence, it stores the ID and local keys that pertain to that specific transmitter. Below is how a learning sequence is performed. These steps are also explained in Figure 3. The VKSP transmitter has a source of data from a pseudo random number generator PRNG, which generates the local keys. Inside the integrated encoder, this pseudo random data is scrambled and two frames are generated. This information is called agreement info. The frames are depicted in Figure 4. Learning Frame 1: Contains a 3-byte header with ID information and a 1-byte field identifying the frame as a learning frame. Value 0xFE in this field indicates this is the learning frame number 1. The rest of the frame has agreement information used in the receiver and transmitter to generate a common local key for that specific ID. The length of the learning frame body is 12 bytes. Freescale Semiconductor 3

4 Learning Frame 2: Contains a 3-byte header with ID information and a 1-byte field with value 0xFF identifying the frame as the learning frame number 2. The rest of the frame has agreement information 4 bytes and an 8-byte MAC. First, the receiver checks if there is a secure environment activated. This means the receiver must be in a mode that allows learning processes. For security reasons, it is not possible to perform the learning process in the receiver at any time. The integrated decoder receives the two frames. If the OEM key This is the manufacturer key that must be shared by all the authentic devices is the same on the transmitter and receiver, the information is saved on a transmitter database for future use. Figure 3. Learning Sequence Figure 4. Learning Frames 3 VKSP Transmitter Driver Overview The VKSP transmitter driver manages the generation of VKSP frames. The routines provided here initialize the VKSP module, generate the learning sequences, create the normal command frames, and manage the variable key or counter increments. The driver is developed for the S08 family. This library does not use any microcontroller hardware peripherals directly. Its flexibility allows the final application to use any drivers for encryption, random number generation, and non-volatile memory access. The Figure 5 depicts the library interface and the communication with other modules. 4 Freescale Semiconductor

5 Figure 5. VKSP Transmitter Block Interaction Diagram The main block in Figure 5 is the VKSP Library block. The VKSP block interacts with other layers through an interface. These interfaces offer flexibility and allow the user to select different customized drivers. PRNG Interface: Interface to obtain pseudo random numbers. Depending on the hardware used, these numbers can be generated by software or hardware. Ciphering Interface: Interface to encrypt data. Allows using any encryption algorithm. Non-Volatile Memory Interface: Interface used to store non-volatile data. Non volatile data may be stored in memories such as flash or EEPROM. The details about the requirements of each driver are explained in the interfaces section. The VKSP API allows the user application to initialize, generate messages, and perform a learning sequence. 4 Configuration of the VKSP Transmitter Driver The vksp_tx_cfg.h file contains all the initialization parameters that must be adapted for a specific application. This is the only file that you should modify. These parameters are linker time effective. This means the VKSP core could already be compiled and provided as object code and changes on the parameters continue to have effect. Table 1 shows all the user defined values for the VKSP transmitter driver: Freescale Semiconductor 5

6 Table 1. Configuration Parameters MAX_LEARN_COUNT Defines the maximum number of learning sequences that can be performed during the life of the application. The learning counter variable is a value stored in non-volatile memory and checked below the range of MAX_LEARN_COUNT. Example of usage: #define MAX_LEARN_COUNT 64 VKSPTX_OEM_KEY This is the 16 bytes manufacturer key that must be the same in all the devices intended to be used together. If a transmitter and a receiver have different OEM keys, it is not possible to execute a successful learning sequence. Example of usage: #define VKSPRX_OEM_KEY {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15} VKSPTX_ID Specifies the transmitter identifier. Every transmitter should have a unique identifier. Example of usage: #define VKSP_ID {0,0,1} VKSPTX_OBSCURE_ KEY Specifies the 16-byte obscure key used for the VKSP algorithm. This parameter is used for obscuring and generating seeds. It is recommended to choose a random number for this parameter. Example of usage: #define VKSP_OBSCURE_KEY {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15} 5 VKSP Transmitter Application Program Interface After the driver is configured and compiled, you may use the application program interface API provided to integrate VKSP in the user application. The following section details the VKSP API and the VKSP functions used to interface with the non-volatile memory block, the pseudo random number generation block, and the encryption block. 6 Freescale Semiconductor

7 5.1 Application Program Interface API VfnVkspTx_Init vfnvksptx_init void vfnvksptx_init const VkspTx_ConfigType *scfgptr Pointer to the selected structure. This structure contains the necessary data to initialize the VKSP module, taken from the configuration parameters. This routine initializes the VKSP module. It uses a global pointer to point to the selected constant structure. You can generate the structure by modifying the configuration parameters and using the variable svksp_initstruct. This function calls the PRNG interface the first time it is used VfnVkspTx_GenerateFrame vfnvksptx_generateframe void vfnvksptx_generateframe VkspTx_CommandType Command, VkspTx_MessageType *Message Command: Command value to send to the receiver. Possible values go from 0 to 253. Values 254 and 255 are used only for learning frames. Message: This parameter is a pointer to the 16-byte array used to store the frame generated by this function. This function generates a command frame. The frame is created according to the protocol and is returned in the message pointer provided as parameter. This function is called by the main application before sending the frame to the receiver. This function calls the encryption interface and may call the memory interface if the value of the variable key has not been updated yet. Freescale Semiconductor 7

8 5.1.3 VfnVkspTx_PerformLearningSequence1 vfnvksptx_performlearningsequence1 void vfnvksptx_performlearningsequence1 VkspTx_MessageType *Message Message: Pointer to a 16 byte-array used to store the learning sequence generated by this function. This function generates the first learning sequence frame. The user application should call this function and then send the generated learning frame. The learning sequence process must be executed once for every transmitter before initiating a normal communication with the receiver. The learning process consists in generating two learning sequence frames and transmit these to the receiver while the secure mode is enabled. If the driver is not initialized, this function does not perform any task VfnVkspTx_PerformLearningSequence2 vfnvksptx_performlearningsequence2 void vfnvksptx_performlearningsequence2 VkspTx_MessageType *Message Message: Pointer to a 16 byte-array used to store the learning sequence generated by this function. This function implements the generation of the second learning sequence frame. This function verifies that the first learning sequence has already been generated. If this is not the case, the second learning sequence is not generated VfnVkspTx_UpdateVariableKey vfnvksptx_updatevariablekey void vfnvksptx_updatevariablekey void 8 Freescale Semiconductor

9 This function updates the variable key value and must be called cyclically by a time interrupt function. Because the variable key must be different on every transmission, the developer must make sure the interrupt period is fast enough to afford two consecutive frames have different variable keys at least one call between the generation of two consecutive frames. A common strategy is to set a slow interrupt rate while the microcontroller is in low-power mode for example, 1 second to reduce the power consumption, and increase the interrupt rate for example 100ms when the microcontroller wakes up. This allows the user to send several frames in a small time window. 5.2 Interfaces Interfaces are functions that allow the VKSP Transmitter core to communicate with external blocks. Contrarily to the functions contained in the VKSP API, these interfaces are functions with bodies where code can be modified to fit the user application. The complexity of the code may vary depending on the user application and may go from a simple function call to data management necessary to fit the interface requirements VfnVkspTx_SaveSeeds vfnvksptx_saveseeds void vfnvksptx_saveseeds VkspTx_SeedsType *Data Data: Pointer to a buffer in RAM. Contents of this buffer are stored in non-volatile memory. This function must write 16 bytes into non-volatile memory. This function is called once in the life of the transmitter device. The address where this data is saved is defined by the user and is used as return value with vfnvksptx_getseeds function. Freescale Semiconductor 9

10 5.2.2 VfnVkspTx_GetSeeds vfnvksptx_getseeds VkspTx_DataType* vfnvksptx_getseeds void It returns the address where the seeds are saved in non volatile memory. This function must return the starting address where the data is located in non-volatile memory VfnVkspTx_SetSetup vfnvksptx_setsetup void vfnvksptx_setsetup void This function must program the value VKSPTX_INITIALIZED in non-volatile memory. This function is called once in the life of the transmitter application VfnVkspTx_GetSetup vfnvksptx_getsetup VkspTx_SetupType vfnvksptx_getsetup void Returns a value from non-volatile memory, possible values are VKSPTX_INITIALIZED and VKSPTX_UNINITIALIZED This function must return a value that indicates if the microcontroller was already initialized or if it is the first time it is powered on. 10 Freescale Semiconductor

11 5.2.5 VfnVkspTx_SaveCounter vfnvksptx_savecounter void vfnvksptx_savecounter void This function must increment the previous value of the 16-bits variable key or counter by one and save it in non-volatile memory VfnVkspTx_LoadCounter vfnvksptx_loadcounter void vfnvksptx_loadcounter VkspTx_HCounterType *Counter Counter: Pointer to the current value of the pointer This function must return the current value of the counter located in non-volatile memory VfnVkspTx_SaveLearnCounter vfnvksptx_savelearncounter void vfnvksptx_savelearncounter VkspTx_LCounterType LCounter LCounter: Value to be saved in the non-volatile location that holds the learning counter. This function must save the input parameter LCounter into non-volatile memory; it must also set the value of the normal counter to zero. Freescale Semiconductor 11

12 5.2.8 VfnVkspTx_LoadLearnCounter vfnvksptx_loadlearncounter void vfnvksptx_loadlearncounter VkspTx_LCounterType *LCounter LCounter: Value to be saved in the non-volatile location that holds the learning counter. This function must return the value of the learning counter in the location pointed by the argument VfnVkspTx_Encrypt Key vfnvksptx_encrypt void vfnvksptx_encrypt const VkspTx_DataType *Data, const VkspTx_DataType *Key, VkspTx_DataType *Result Data: Pointer to the 128 bits of raw data to be encrypted. Pointer to the 128-bit key used to encrypt data. Result: Pointer to the 128-bit encrypted text result. This function performs a block encryption of 128 bits data/key and saves the result in a 128-bit result buffer VfnVkspTx_GeneratePRN vfnvksptx_generateprn void vfnvksptx_encrypt VkspTx_DataType *Data, VkspTx_DataType Size 12 Freescale Semiconductor

13 Size: Number of random elements that are generated. Data: Pointer to buffer in RAM where the generated pseudo random numbers are stored. This function generates [pseudo] random numbers. This function is used for the generation of the seeds. It is called once by vfnvksptx_init function. The parameter size indicates how many numbers must be generated. VKSP core requires only 16 numbers. 6 VKSP Transmitter Driver Implementation This section explains how to set-up a RKE Transmitter application from scratch. The application is designed in a layered approach that facilitates the migration to different microcontrollers. 6.1 RKE Transmitter Overview To build a RKE Transmitter application it is necessary to implement other modules aside from the VKSP transmitter core. You must understand what functionalities are managed by the VKSP transmitter core and what functionalities are not. What VKSP transmitter core driver does: Reorganizes information to generate MACs. Manages the variable key Determines how to generate learning sequences What VKSP transmitter core driver does not do: Encrypts Uses MCU resources directly Determines how the messages are sent by the physical layer The present VKSP transmitter driver and the RKE application were designed using software architecture with a layered software design and to ease the migration to different platforms. The software architecture used divides software into different layers. From a high-level perspective, the software can be described as follows: Hardware Abstraction Layer: Provides drivers to control MCU peripherals needed for the RKE application, such as timers, GPIO control, and KBI interrupts. Hardware Independent Layer: Provides drivers dependent on the electronic module used but independent on the hardware used. Examples of these drivers are the radio driver, the signal abstraction driver, and the VKSP driver. Services Layer: Drivers contained in this layer are often used by other layers. Timing control and power modes are two examples. Freescale Semiconductor 13

14 Application Layer: This layer implements the application and initializes and integrates the rest of the drivers. 6.2 Components Used Figure 6. RKE Transmitter Layer Structure The transmitter device provides the following functionality: Reads inputs Implements low power modes Codifies messages Sends messages thru the RF link Below is a brief description of the software components and their functionality HAL Drivers Real Time: This driver implements the software to control the real time clock or Interrupt peripheral. It implements a callback and an interrupt flag. Timer: This driver implements the software to control the TPM peripheral. It implements a callback and an interrupt flag. It is also possible to set the interrupt frequency based on the BUS frequency. Flash Driver: Driver implements control functions to write and erase flash memory. The functions are copied and executed from RAM. GPIO: Abstracts the microcontroller pins to virtual ports. It also implements a function to set the ports into low power modes. IRQ: This driver configures the IRQ peripheral to wake up the microcontroller when it is in SLEEP mode. KBI: This driver configures the KBI peripheral to wake up the microcontroller when it is in SLEEP mode. 14 Freescale Semiconductor

15 6.2.2 HIL Drivers Signals: Abstracts the virtual ports to named signals from the electronic module. For example, it allows access to signals as buttons or LEDs. It uses the GPIO driver Radio: Handler that implements the functions to generate the messages received by the echo transceiver. It uses the TimingCtrl driver. PRNG: This driver generates pseudo random numbers. It uses uninitialized memory plus the inequity from the timer and real time clock sources to generate random numbers, depending on the selected configuration parameters AES: Implements the AES encryption module. This driver does not use any of the HAL drivers. VKSP Transmitter: Driver that implements the VKSP for the transmitter. Requires some files to interface with other modules, like the PRNG, flash, and the encryption module Services Drivers Common: Declares common types used by all other modules. MCU: Implements miscellaneous routines and macros like initialization, access to assembler instructions and public parameters like the bus frequency. TimingCtrl: Implements the usage of timer drivers and allows having two calls of different period using the same time base. The call period is configurable. Vectors: Defines the interrupts locations in program memory. This driver provides portability to the code. Low Power Ctrl: Controls the low-power modes in the microcontroller. It sets up the signals states and wake up signals Application This layer integrates the HIL and Services drivers implementing the following features: Initializes the MCU, Signals, Memory, VKSP, Radio, and TimingCtrl drivers. Configures the callbacks for the TimingCtrl module. Enables/Disables the interrupts. Reads the state of the input signals and performs actions accordingly. Configures and sets the microcontroller up into stop mode. Reconfigures the microcontroller after a wake-up event Linker Parameters Interrupts must be declared in the vectors module but allocation of variables and sections is done in the linker parameter file. VKSP library requires saving non-volatile data and must be reserved in this implementation space. The memory interface is open and implementation is up to you, but in this case the example provided uses one sector of memory to save the learning counter and the counter. That space must be reserved and not used for program code. Freescale Semiconductor 15

16 6.3 Memory Interface Implementation Memory interface for VKSP is open and flexible so it can be adapted to user needs. VKSP requires allocation for four non-volatile variables: Seeds 16 bytes Setup 1 byte Counter 2 bytes Learning Counter 1 byte Seeds and setup are saved only once and never modified again. The counter and the learning counter require to be written over several times. The learning counter is overwritten each time a learning sequence is performed and the number of learning sequences that can be performed is limited. The counter is updated more often than the other variables each time there is a transmission and the lower counter has not overflowed there, is a write access to the non-volatile memory. If the average increment of the counter is T seconds, worst case per day of write accesses to the counter is: N access = Seconds per Day / 2^16 * T Eqn. 1 If the value of T is 0.70 seconds, there are approximately two accesses per day. In 20 years, there will be cycles. Make sure the memory used can afford this quantity of cycles. A strategy must be implemented to overcome the physical limitations of the memory used. Based on the previous hypothetical case an S08 flash memory can afford such a stress. However, it is possible to implement a more complex memory management to increase the life of the peripheral. The seeds and the setup variables can be allocated in any write-once memory space in flash memory. They are not overwritten and can be allocated anywhere in the same memory sector where code is located Simple Memory Model The following section explains how to implement a method to save the values of the learning counter and the counter using one flash memory sector. This method provides reliability because it is simple. The drawback is that it has a limited life time and an erase action must be performed, adding execution time and power consumption, every time the values are updated. These drawbacks may not be an issue in most of the cases. A one-byte space is reserved for the learning counter and a two-byte space is reserved for the counter. If the counter needs to be updated, learning counter and counter are first saved in RAM. Then, the memory sector is erased. Finally, the learning counter and the updated counter are programmed again. When a learning counter needs to be updated, the learning counter is saved in RAM, the memory sector is erased, and the updated learning counter and the cleared counter are programmed. 16 Freescale Semiconductor

17 Memory Sector Learning Counter 1 byte Counter 2 bytes Unused space Affected when the erase command is performed Complex Memory Model Figure 7. Simple Memory Model Because the counter is incremented by one at every update, it is not necessary to save the complete 2-byte counter. A flag that indicates the increment is sufficient. IIn one memory sector there is a one byte space to save the value of the learning counter, two bytes to save the value of the counter and the rest for flags that indicate the increments of the counters. Figure 8 describes the structure of this approach. Figure 8. Complex Memory Model Freescale Semiconductor 17

18 In the complex memory model, the memory endurance is increased 510 times. Erase sequences in the transmitter are only done every 510 byte program sequences. This model is recommended for those applications where an extended life is required. 6.4 Encryption Interface Implementation VKSP allows you to select the encryption protocol of your choice for the generation of MACs. The code for the call to the encryption driver must be located in the encryption interface. The interface requires the usage of a 128-bits block size encryption algorithm with a 128 bits key. Some encryption algorithms that do not comply with this requirement can be adapted so they can be used. Figure 9 depicts the adaptation of a hypothetical algorithm. Figure 9. Encryption Adaptation to VKSP Requirements In the application provided, the advanced encryption standard AES was chosen because it complies directly with the input/output requirements. 6.5 Pseudo Random Number Generation Interface Implementation The PRNG interface generates random or pseudorandom numbers used as seeds for the VKSP core. Inside the PRNG interface, place a call to the function of your choice that does this. The PRNG module provided with the example application uses uninitialized RAM locations and differences between the real time and timer events to produce pseudo-random values. 18 Freescale Semiconductor

19 7 Step-by-Step Setup Guide of VKSP Transmitter Application Before implementing the steps below, you must have: A driver to save and read values in non-volatile memory An encryption driver A pseudo random number generator In the following steps, the term if required is used. This means it is possible to change the code provided in the sample application if the user requires it. For simplicity, this section does not explain how to implement the RF driver or other peripherals that have no direct relation with the VKSP driver. 1. Add the following files to your project: the vksp_tx.obj core file, the VKSP configuration files, vksp_tx_cfg.h, vksp_tx_cfg.c and the interface files MemIf.c, CipherIf.c and PrngIf.c. 2. Modify the configuration parameters as needed refer to Section 4, Configuration of the VKSP Transmitter Driver. 3. Modify code in the encryption interface if required. For example: Insert a call to your encryption driver. 4. Modify code in the memory interface if required vfnvksptx_saveseeds: Write code to save 16 bytes of data in non-volatile memory. vfnvksptx_getseeds: Write code to return the address to the first byte where the Seeds are located vfnvksptx_setsetup: Write code to write into non-volatile memory the value VKSPTX_INITIALIZED. vfnvksptx_getsetup: Write code to return the value of setup variable from non-volatile memory vfnvksptx_savecounter: Write code to increment the counter by one and save it in non-volatile memory. Size of this counter is 16 bits. vfnvksptx_loadcounter: Write code to retrieve the value of the 16 bits counter. It is used only when the driver is initialized. vfnvksptx_savelearncounter: Write code to save the learning counter in non-volatile memory and initialize the value of the normal counter to zero. vfnvksptx_loadlearncounter: Write code to retrieve the value from non-volatile memory of the learning counter. 5. Modify code in the pseudo random numbers generation interface if required. For example, insert within the body of the interface function which generator driver to call. The simplest solution is to gather those numbers from uninitialized RAM. 6. Setup vfnvksptx_updatevariablekey call. This function must be called by a periodic interrupt. For example, while the microcontroller is in sleep mode, the real time module can wake up the microcontroller and call this function each second. When a button event is detected, increment the call rate to 100ms. Freescale Semiconductor 19

20 7. In the main application, initialize the driver that programs non-volatile memory before calling vfnvksptx_init. 8. In the main application, initialize VKSP by calling vfnvksptx_init. 9. To perform a learning sequence, call first vfnvksptx_performlearningsequence1 and send the generated frame; then, call vfnvksptx_performlearningsequence2 and send the generated frame. 10. To perform a normal transmission, call vfnvksptx_generateframe and send the frame. How to Reach Us: Home Page: Web Support: USA/Europe or Locations Not Listed: Freescale Semiconductor, Inc. Technical Information Center, EL East Elliot Road Tempe, Arizona or Europe, Middle East, and Africa: Freescale Halbleiter Deutschland GmbH Technical Information Center Schatzbogen Muenchen, Germany English English German French Japan: Freescale Semiconductor Japan Ltd. Headquarters ARCO Tower 15F 1-8-1, Shimo-Meguro, Meguro-ku, Tokyo Japan or Asia/Pacific: Freescale Semiconductor China Ltd. Exchange Building 23F No. 118 Jianguo Road Chaoyang District Beijing China Information in this document is provided solely to enable system and software implementers to use Freescale Semiconductor products. There are no express or implied copyright licenses granted hereunder to design or fabricate any integrated circuits or integrated circuits based on the information in this document. Freescale Semiconductor reserves the right to make changes without further notice to any products herein. Freescale Semiconductor makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Freescale Semiconductor assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. Typical parameters that may be provided in Freescale Semiconductor data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. All operating parameters, including Typicals, must be validated for each customer application by customer s technical experts. Freescale Semiconductor does not convey any license under its patent rights nor the rights of others. Freescale Semiconductor products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Freescale Semiconductor product could create a situation where personal injury or death may occur. Should Buyer purchase or use Freescale Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Freescale Semiconductor was negligent regarding the design or manufacture of the part. RoHS-compliant and/or Pb-free versions of Freescale products have the functionality and electrical characteristics as their non-rohs-compliant and/or non-pb-free counterparts. For further information, see or contact your Freescale sales representative. For information on Freescale s Environmental Products program, go to Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc All rights reserved. Freescale Semiconductor Literature Distribution Center P.O. Box 5405 Denver, Colorado or Fax: Document Number: VKSPTXUG Rev. 0 06/2008

etpu Host Interface by:

etpu Host Interface by: Freescale Semiconductor Application Note AN2821 Rev. 2, 08/2007 etpu Host Interface by: David Paterson Ming Li MCD Applications 1 Introduction This application note discusses the enhanced Time Processing

More information

Software Real Time Clock Implementation on MC9S08LG32

Software Real Time Clock Implementation on MC9S08LG32 Freescale Semiconductor Document Number: AN4478 Rev. 0, 03/2012 Software Real Time Clock Implementation on MC9S08LG32 by: Nitin Gupta Automotive and Industrial Solutions Group 1 Introduction The MC9S08LG32

More information

Connecting Low-Cost External Electrodes to MED-EKG

Connecting Low-Cost External Electrodes to MED-EKG Freescale Semiconductor Document Number: AN4223 Application Note Rev. 0, 11/2010 Connecting Low-Cost External Electrodes to MED-EKG by: Carlos Casillas RTAC Americas Guadalajara Mexico 1 Introduction This

More information

How To Control A Motor Control On An Hvac Platform

How To Control A Motor Control On An Hvac Platform Freescale Semiconductor Document Number:AN4616 Application Note Rev. 0, 10/2012 Flap Motor Control Based On HVAC Platform by: Shawn Shi, Albert Chen, Alex Liu 1 Introduction According to the world market

More information

IRTC Compensation and 1 Hz Clock Generation

IRTC Compensation and 1 Hz Clock Generation Freescale Semiconductor Document Number: AN4257 Application Note Rev. 0, January 2011 IRTC Compensation and 1 Hz Clock Generation by: Derek Liu Applications Engineering Shanghai 1 Introduction The MC9S08GW64

More information

Connecting to an SMTP Server Using the Freescale NanoSSL Client

Connecting to an SMTP Server Using the Freescale NanoSSL Client Freescale Semiconductor Document Number: AN4363 Application Note Rev. 0, 10/2011 Connecting to an SMTP Server Using the Freescale NanoSSL Client by: Paolo Alcantara Microcontroller Solutions Group 1 Introduction

More information

Flexible Active Shutter Control Interface using the MC1323x

Flexible Active Shutter Control Interface using the MC1323x Freescale Semiconductor Document Number: AN4353 Application Note Rev. 0, 9/2011 Flexible Active Shutter Control Interface using the MC1323x by: Dennis Lui Freescale Hong Kong 1 Introduction This application

More information

Cyclic Redundant Checker Calculation on Power Architecture Technology and Comparison of Big-Endian Versus Little-Endian

Cyclic Redundant Checker Calculation on Power Architecture Technology and Comparison of Big-Endian Versus Little-Endian Freescale Semiconductor Document Number:AN4657 Application Note Rev. 0, 01/2013 Cyclic Redundant Checker Calculation on Power Architecture Technology and Comparison of Big-Endian Versus Little-Endian by:

More information

How To Build A Project On An Eclipse Powerbook For Anarc (Powerbook) On An Ipa (Powerpoint) On A Microcontroller (Powerboard) On Microcontrollers (Powerstation) On Your Microcontroller 2 (Powerclock

How To Build A Project On An Eclipse Powerbook For Anarc (Powerbook) On An Ipa (Powerpoint) On A Microcontroller (Powerboard) On Microcontrollers (Powerstation) On Your Microcontroller 2 (Powerclock Freescale Semiconductor Document Number: AN4819 Application Note Rev. 1, 10/2013 Building a Project using IAR Eclipse Plugin Processor Expert Microcontrollers Driver Suite Processor Expert Microcontrollers

More information

Blood Pressure Monitor Using Flexis QE128 Gabriel Sanchez RTAC Americas

Blood Pressure Monitor Using Flexis QE128 Gabriel Sanchez RTAC Americas Freescale Semiconductor Application Note Document Number: AN3500 Rev. 0, 08/2007 Blood Pressure Monitor Using Flexis QE128 by: Gabriel Sanchez RTAC Americas 1 Introduction Product designers and developers

More information

Windows 7: Using USB TAP on a Classic CodeWarrior Installation (MGT V9.2 DSC V8.3)

Windows 7: Using USB TAP on a Classic CodeWarrior Installation (MGT V9.2 DSC V8.3) Freescale Semiconductor Document Number: AN4338 Application Note Rev. 1.0, 12/2011 Windows 7: Using USB TAP on a Classic CodeWarrior Installation (MGT V9.2 DSC V8.3) Technical Information & Commercial

More information

Local Interconnect Network (LIN) Physical Interface

Local Interconnect Network (LIN) Physical Interface Freescale Semiconductor Engineering Bulletin EB215 Rev. 1.0, 03/2005 Local Interconnect Network (LIN) Physical Interface Difference Between MC33399 and MC33661 Introduction This engineering bulletin highlights

More information

Using WinUSB in a Visual Studio Project with Freescale USB device controller

Using WinUSB in a Visual Studio Project with Freescale USB device controller Freescale Semiconductor Document Number: AN4378 Application Note Rev. 0, 10/2011 Using WinUSB in a Visual Studio Project with Freescale USB device controller by: Paolo Alcantara Microcontroller Solutions

More information

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide Freescale Semiconductor User Guide Document Number: EGUICUG Rev. 1, 08/2010 Freescale Embedded GUI Converter Utility 2.0 Quick User Guide 1 Introduction The Freescale Embedded GUI Converter Utility 2.0

More information

Initializing the TSEC Controller

Initializing the TSEC Controller Freescale Semiconductor Application Note Document Number: AN2925 Rev. 0, 11/2005 Initializing the TSEC Controller by Ahsan Kabir Digital Systems Division Freescale Semiconductor, Inc. Austin, TX This application

More information

Understanding LCD Memory and Bus Bandwidth Requirements ColdFire, LCD, and Crossbar Switch

Understanding LCD Memory and Bus Bandwidth Requirements ColdFire, LCD, and Crossbar Switch Freescale Semiconductor Application Note Document Number: AN3606 Rev. 0, 03/2008 Understanding LCD Memory and Bus Bandwidth Requirements ColdFire, LCD, and Crossbar Switch by: Melissa Hunter TSPG Applications

More information

Using the Performance Monitor Unit on the e200z760n3 Power Architecture Core

Using the Performance Monitor Unit on the e200z760n3 Power Architecture Core Freescale Semiconductor Document Number: AN4341 Application Note Rev. 1, 08/2011 Using the Performance Monitor Unit on the e200z760n3 Power Architecture Core by: Inga Harris MSG Application Engineering

More information

Installation of the MMA955xL CodeWarrior Service Pack Author: Fengyi Li Application Engineer

Installation of the MMA955xL CodeWarrior Service Pack Author: Fengyi Li Application Engineer Freescale Semiconductor Application Note Document Number: AN4128 Rev. 0, 10/2011 Installation of the MMA955xL CodeWarrior Service Pack Author: Fengyi Li Application Engineer 1 Overview The Freescale MMA955xL

More information

How to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications Engineer

How to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications Engineer Freescale Semiconductor Application Note Document Number: AN4317 Rev. 0, 08/2011 How to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications

More information

USB HID bootloader for the MC9S08JM60

USB HID bootloader for the MC9S08JM60 Freescale Semiconductor Document Number: AN4252 Application Note Rev. 0, 4/2011 USB HID bootloader for the MC9S08JM60 by: Derek Lau System and Solution Engineering, Microcontroller Solutions Group Hong

More information

Programming Audio Applications in the i.mx21 MC9328MX21

Programming Audio Applications in the i.mx21 MC9328MX21 Freescale Semiconductor Application Note Document Number: AN2628 Rev. 1, 10/2005 Programming Audio Applications in the MC9328MX21 by: Alfred Sin 1 Abstract The MC9328MX21 () processor has two dedicated

More information

Performance Monitor on PowerQUICC II Pro Processors

Performance Monitor on PowerQUICC II Pro Processors Freescale Semiconductor Application Note Document Number: AN3359 Rev. 0, 05/2007 Performance Monitor on PowerQUICC II Pro Processors by Harinder Rai Network Computing Systems Group Freescale Semiconductor,

More information

Hardware Configurations for the i.mx Family USB Modules

Hardware Configurations for the i.mx Family USB Modules Freescale Semiconductor Application Note Document Number: AN4136 Rev. 0, 06/2010 Hardware Configurations for the i.mx Family USB Modules by Multimedia Applications Division Freescale Semiconductor, Inc.

More information

MCF54418 NAND Flash Controller

MCF54418 NAND Flash Controller Freescale Semiconductor Application Note Document Number: AN4348 Rev. 0, 09/2011 MCF54418 NAND Flash Controller by: Liew Tsi Chung Applications Engineer 1 Introduction The ColdFire MCF5441x family is the

More information

Point-of-Sale (POS) Users Guide Lech José Olmedo Guerrero Jaime Herrerro Gallardo RTAC Americas

Point-of-Sale (POS) Users Guide Lech José Olmedo Guerrero Jaime Herrerro Gallardo RTAC Americas Freescale Semiconductor Users Guide Document Number: POSUG Rev. 0, 03/2007 Point-of-Sale (POS) Users Guide by: Lech José Olmedo Guerrero Jaime Herrerro Gallardo RTAC Americas 1 Introduction This quick

More information

Emulated EEPROM Implementation in Dual Flash Architecture on MC9S08LG32 With Demo Description

Emulated EEPROM Implementation in Dual Flash Architecture on MC9S08LG32 With Demo Description Freescale Semiconductor Application Note Document Number: AN3822 Rev. 0, 2/2009 Emulated EEPROM Implementation in Dual Flash Architecture on MC9S08LG32 With Demo Description by: Saurabh Jhamb Reference

More information

PowerQUICC II Pro (MPC83xx) PCI Agent Initialization

PowerQUICC II Pro (MPC83xx) PCI Agent Initialization Freescale Semiconductor Application Note Document Number: AN3373 Rev. 0, 04/2007 PowerQUICC II Pro (MPC83xx) PCI Agent Initialization by: David Smith Field Application Engineering Raleigh, NC In many designs,

More information

Handling Freescale Pressure Sensors

Handling Freescale Pressure Sensors Freescale Semiconductor Application Note Rev 3, 11/2006 Handling Freescale Pressure by: William McDonald INTRODUCTION Smaller package outlines and higher board densities require the need for automated

More information

Using the Kinetis Security and Flash Protection Features

Using the Kinetis Security and Flash Protection Features Freescale Semiconductor Document Number:AN4507 Application Note Rev. 1, 6/2012 Using the Kinetis Security and Flash Protection Features by: Melissa Hunter Automotive and Industrial Solutions Group 1 Introduction

More information

MC13783 Buck and Boost Inductor Sizing

MC13783 Buck and Boost Inductor Sizing Freescale Semiconductor Application Note Document Number: AN3294 Rev. 0.1, 01/2010 MC13783 Buck and Boost Inductor Sizing by: Power Management Application Team 1 Introduction The purpose of this application

More information

Improving Embedded Software Test Effectiveness in Automotive Applications

Improving Embedded Software Test Effectiveness in Automotive Applications Improving Embedded Software Test Effectiveness in Automotive Applications Author, D Brook Document Number: CODETESTTECHWP Rev. 0 11/2005 As the automotive industry introduces more and more safety-critical,

More information

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX4080D.

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX4080D. Freescale Semiconductor Integrated Silicon Pressure Sensor + On-Chip Signal Conditioned, Temperature Compensated and Calibrated The series piezoresistive transducer is a state-of-the-art monolithic silicon

More information

Using XGATE to Implement LIN Communication on HCS12X Daniel Malik 8/16-Bit Products Division East Kilbride, Scotland

Using XGATE to Implement LIN Communication on HCS12X Daniel Malik 8/16-Bit Products Division East Kilbride, Scotland Freescale Semiconductor Application Note Document Number: AN2732 Rev. 0, 05/2004 Using XGATE to Implement LIN Communication on HCS12X By Daniel Malik 8/16-Bit Products Division East Kilbride, Scotland

More information

Using eflexpwm Module for ADC Synchronization in MC56F82xx and MC56F84xx Family of Digital Signal Controllers

Using eflexpwm Module for ADC Synchronization in MC56F82xx and MC56F84xx Family of Digital Signal Controllers Freescale Semiconductor Document Number:AN4675 Application Note Rev. 0, 01/2013 Using eflexpwm Module for ADC Synchronization in MC56F82xx and MC56F84xx Family of Digital Signal Controllers by: Pavel Grasblum

More information

Generate Makefiles from Command Line Support in Eclipse-Based CodeWarrior Software

Generate Makefiles from Command Line Support in Eclipse-Based CodeWarrior Software Freescale Semiconductor Document Number: AN4272 Application Note Rev. 0, 03/2011 Generate Makefiles from Command Line Support in Eclipse-Based CodeWarrior Software by Devtech Customer Engineering Freescale

More information

MLPPP in the Evolving Radio Access Network

MLPPP in the Evolving Radio Access Network Freescale Semiconductor White Paper Document Number: MLPPPWP Rev. 0, 09/2010 MLPPP in the Evolving Radio Access Network by Networking and Multimedia Group Freescale Semiconductor, Inc. East Kilbride, Scotland

More information

Processor Expert Software Microcontrollers Driver Suite Getting Started Guide

Processor Expert Software Microcontrollers Driver Suite Getting Started Guide Freescale Semiconductor Document Number: PEXDRVSGETSTARTEDUG Rev. 2, 09/2012 Processor Expert Software Microcontrollers Driver Suite Getting Started Guide This document introduces Microcontrollers Driver

More information

Data Movement Between Big-Endian and Little-Endian Devices

Data Movement Between Big-Endian and Little-Endian Devices Freescale Semiconductor Application Note AN2285 Rev. 2.2, 3/2008 Data Movement Between Big-Endian and Little-Endian Devices by Kyle Aubrey, Field Technical Leader Ashan Kabir, System Engineering Freescale

More information

ColdFire Security SEC and Hardware Encryption Acceleration Overview

ColdFire Security SEC and Hardware Encryption Acceleration Overview Freescale Semiconductor Application Note Document Number: AN2788 Rev. 1, 05/2008 ColdFire Security SEC and Hardware Encryption Acceleration Overview by: Melissa Hunter MSG Applications This application

More information

User Interface Design using CGI Programming and Boa Web Server on M5249C3 Board

User Interface Design using CGI Programming and Boa Web Server on M5249C3 Board Freescale Semiconductor Application Note AN3238 Rev. 0, 02/2006 User Interface Design using CGI Programming and Boa Web Server on M5249C3 Board by: H.K. Au MCD Applications 1 Introduction This application

More information

Configuring the FlexTimer for Position and Speed Measurement with an Encoder

Configuring the FlexTimer for Position and Speed Measurement with an Encoder Freescale Semiconductor Application Note Document Number: AN4381 Rev. 0, 12/2011 Configuring the FlexTimer for Position and Speed Measurement with an Encoder by: Matus Plachy System Application Engineer,

More information

Detecting a CPM Overload on the PowerQUICC II

Detecting a CPM Overload on the PowerQUICC II Freescale Semiconductor Application Note Document Number: AN2547 Rev. 1, 11/2006 Detecting a CPM Overload on the PowerQUICC II by Qiru Zou NCSD Applications Freescale Semiconductor, Inc. Austin, TX This

More information

How To Measure Power Of A Permanent Magnet Synchronous Motor

How To Measure Power Of A Permanent Magnet Synchronous Motor Freescale Semiconductor Document Number:AN4680 Application Note Rev. 0, 02/2013 PMSM Electrical Parameters Measurement by: Viktor Bobek 1 Introduction The vector control, also known as the field-oriented

More information

Robust Over-the-Air Firmware Updates Using Program Flash Memory Swap on Kinetis Microcontrollers

Robust Over-the-Air Firmware Updates Using Program Flash Memory Swap on Kinetis Microcontrollers Freescale Semiconductor Document Number:AN4533 Application Note Robust Over-the-Air Firmware Updates Using Program Flash Memory Swap on Kinetis Microcontrollers by: Maclain Lobdell Automotive, Industrial,

More information

Avoiding Read While Write Errors When Developing In-Software Flash Programming Applications for Kinetis and ColdFire+ MCUs

Avoiding Read While Write Errors When Developing In-Software Flash Programming Applications for Kinetis and ColdFire+ MCUs Freescale Semiconductor Document Number:AN4695 Application Note Rev. 0, 04/2013 Avoiding Read While Write Errors When Developing In-Software Flash Programming Applications for Kinetis and ColdFire+ MCUs

More information

Comparison of MC9S08QE128 and MCF51QE128 Microcontrollers Scott Pape and Eduardo Montanez Systems Engineering, Freescale Microcontroller Division

Comparison of MC9S08QE128 and MCF51QE128 Microcontrollers Scott Pape and Eduardo Montanez Systems Engineering, Freescale Microcontroller Division Freescale Semiconductor White Paper Document Number: QE128COMPWP Rev. 0, 05/2007 Comparison of MC9S08QE128 and MCF51QE128 Microcontrollers by: Scott Pape and Eduardo Montanez Systems Engineering, Freescale

More information

Software Marketing, Embedded Real-Time Solutions

Software Marketing, Embedded Real-Time Solutions Software Marketing, Embedded Real-Time Solutions Author, Katie Smith Document Number: BARRIERSWP Rev. 0 11/2005 The current economic climate is adding to the increasing pressure being experienced in new

More information

3-Phase BLDC Motor Control with Hall Sensors Using 56800/E Digital Signal Controllers

3-Phase BLDC Motor Control with Hall Sensors Using 56800/E Digital Signal Controllers Freescale Semiconductor Application Note AN1916 Rev. 2.0, 11/2005 3-Phase BLDC Motor Control with Hall Sensors Using 56800/E Digital Signal Controllers Leonard N. Elevich Contents 1. Application Benefits...1

More information

MSC8156 and MSC8157 PCI Express Performance

MSC8156 and MSC8157 PCI Express Performance Freescale Semiconductor Application Note Document Number: AN3935 Rev. 1, 11/2011 MSC8156 and MSC8157 PCI Express Performance This application note presents performance measurements of the MSC8156 and MSC8157

More information

MPC8245/MPC8241 Memory Clock Design Guidelines: Part 1

MPC8245/MPC8241 Memory Clock Design Guidelines: Part 1 Freescale Semiconductor AN2164 Rev. 4.1, 03/2007 MPC8245/MPC8241 Memory Clock Design Guidelines: Part 1 by Esther C. Alexander RISC Applications, CPD Freescale Semiconductor, Inc. Austin, TX This application

More information

How to Do EEPROM Emulation Using Double Flash Array on MC9S08LC60 Ronald Gonzalez and Tatiana Orofino RTAC Americas

How to Do EEPROM Emulation Using Double Flash Array on MC9S08LC60 Ronald Gonzalez and Tatiana Orofino RTAC Americas Freescale Semiconductor Application Note Document Number: AN3404 Rev. 1, 03/2007 How to Do EEPROM Emulation Using Double Flash Array on MC9S08LC60 by: Ronald Gonzalez and Tatiana Orofino RTAC Americas

More information

Enhanced Serial Interface Mapping

Enhanced Serial Interface Mapping Freescale Semiconductor Application Note Document Number: AN3536 Rev. 1, 11/2007 Enhanced Serial Interface Mapping 16 E1/T1 QUICC Engine Solution for TDM Connectivity by Netcomm Applications Networking

More information

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi.

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi. Design Examples of On Board Dual Supply Voltage Logic Translators Prepared by: Jim Lepkowski ON Semiconductor Introduction Logic translators can be used to connect ICs together that are located on the

More information

VLE 16-bit and 32-bit Instruction Length Decode Algorithm

VLE 16-bit and 32-bit Instruction Length Decode Algorithm Freescale Semiconductor Document Number: AN4648 Application Note Rev. 1, 3/2013 VLE 16-bit and 32-bit Instruction Length Decode Algorithm by: Pavel Bohacik 1 Introduction The Qorivva MPC56xx 32-bit microcontroller

More information

Efficient Low-Level Software Development for the i.mx Platform

Efficient Low-Level Software Development for the i.mx Platform Freescale Semiconductor Application Note Document Number: AN3884 Rev. 0, 07/2009 Efficient Low-Level Software Development for the i.mx Platform by Multimedia Applications Division Freescale Semiconductor,

More information

Using Program Memory As Data Memory. 1. Introduction. 2. 56800 Program Memory and Data. Contents. Memory. Freescale Semiconductor Application Note

Using Program Memory As Data Memory. 1. Introduction. 2. 56800 Program Memory and Data. Contents. Memory. Freescale Semiconductor Application Note Freescale Semiconductor Application Note AN1952 Rev. 0, 9/2005 Using Program Memory As Data Memory William Jiang 1. Introduction Microcontrollers with Harvard architecture have separate program and data

More information

Real Time Development of MC Applications using the PC Master Software Visualization Tool. 1. Introduction. 2. Development of Motor Control.

Real Time Development of MC Applications using the PC Master Software Visualization Tool. 1. Introduction. 2. Development of Motor Control. Freescale Semiconductor Application Note AN1948 Rev. 1, 11/2005 Real Time Development of MC Applications using the PC Master Software Visualization Tool The PC Master Software Visualization Tool Simplifies

More information

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX5500.

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX5500. Freescale Semiconductor Integrated Silicon Pressure Sensor + On-Chip Signal Conditioned, Temperature Compensated and Calibrated Series Pressure Rev 7, 09/2009 0 to 500 kpa (0 to 72.5 psi) 0.2 to 4.7 V

More information

NOT RECOMMENDED FOR NEW DESIGN

NOT RECOMMENDED FOR NEW DESIGN Technical Data RF Power Field Effect Transistor N- Channel Enhancement- Mode Lateral MOSFET Designed for broadband commercial and industrial applications with frequencies up to 00 MHz. The high gain and

More information

Techniques and Tools for Software Analysis

Techniques and Tools for Software Analysis Techniques and Tools for Software Analysis Freescale Semiconductor Document Number: CODETESTTECHWP Rev. 0 11/2005 Understanding how software development can be optimized through the use of software analysis

More information

Using the HC08 SCI Module

Using the HC08 SCI Module Freescale Semiconductor Application Note AN3035 Rev. 0, 09/2005 Using the HC08 SCI Module By Jorge Zambada Tinoco Oscar Luna González RTAC Americas Mexico 2005 Overview This document is intended to serve

More information

Ref Parameters Symbol Conditions Min Typ Max Units. Standby 3.5 10 μa. 3 Range 50 115 kpa. 4 Resolution 0.15 kpa. 5 Accuracy -20ºC to 85ºC ±1 kpa

Ref Parameters Symbol Conditions Min Typ Max Units. Standby 3.5 10 μa. 3 Range 50 115 kpa. 4 Resolution 0.15 kpa. 5 Accuracy -20ºC to 85ºC ±1 kpa Freescale Semiconductor Miniature I 2 C Digital Barometer The is an absolute pressure sensor with digital output for low cost applications. A miniature 5 x 3 x 1.2 mm LGA package ideally suits it for portable

More information

VGA Output using TV-Out Extension Solution i.mx21

VGA Output using TV-Out Extension Solution i.mx21 Freescale Semiconductor Application Note Document Number: AN3378 Rev. 0, 11/2006 VGA Output using TV-Out Extension Solution i.mx21 by: Tatiana Orofino 1 Abstract Freescale first thought of a TV-Out Extension

More information

PQ-MDS-T1 Module. HW Getting Started Guide. Contents. About This Document. Required Reading. Definitions, Acronyms, and Abbreviations

PQ-MDS-T1 Module. HW Getting Started Guide. Contents. About This Document. Required Reading. Definitions, Acronyms, and Abbreviations HW Getting Started Guide PQ-MDS-T1 Module April 2006: Rev. 0.3 Contents Contents................................................................................. 1 About This Document.......................................................................

More information

White Paper. Freescale s Embedded Hypervisor for QorIQ P4 Series Communications Platform

White Paper. Freescale s Embedded Hypervisor for QorIQ P4 Series Communications Platform White Paper Freescale s Embedded for QorIQ P4 Series Communications Platform Document Number: EMHYPQIQTP4CPWP Rev 1 10/2008 Overview Freescale Semiconductor s QorIQ communications platform P4 series processors

More information

NOT RECOMMENDED FOR NEW DESIGN

NOT RECOMMENDED FOR NEW DESIGN Technical Data RF Power Field Effect Transistor N-Channel Enhancement-Mode Lateral MOSFET Designed for broadband commercial and industrial applications with frequencies up to 00 MHz. The high gain and

More information

Implementing Positioning Algorithms Using Accelerometers

Implementing Positioning Algorithms Using Accelerometers Freescale Semiconductor Application Note Rev 0, 02/2007 Implementing Positioning Algorithms Using Accelerometers by: Kurt Seifert and Oscar Camacho OVERVIEW This document describes and implements a positioning

More information

i.mx28 Ethernet Performance on Linux

i.mx28 Ethernet Performance on Linux Freescale Semiconductor Document Number:AN4544 Application Note Rev. 0, 6/2012 i.mx28 Ethernet Performance on Linux 1 Introduction The aim of this document is to show how to measure the ENET "Ethernet

More information

Understanding Pressure and Pressure Measurement

Understanding Pressure and Pressure Measurement Freescale Semiconductor Application Note Rev 1, 05/2005 Understanding Pressure and Pressure Measurement by: David Heeley Sensor Products Division, Phoenix, Arizona INTRODUCTION Fluid systems, pressure

More information

Adding SDIO Wi-Fi Solution to i.mx Windows CE 5.0/Windows CE 6.0

Adding SDIO Wi-Fi Solution to i.mx Windows CE 5.0/Windows CE 6.0 Freescale Semiconductor Application Note Document Number: AN3981 Rev. 0, 04/2010 Adding SDIO Wi-Fi Solution to i.mx Windows CE 5.0/Windows CE 6.0 by Multimedia Applications Division Freescale Semiconductor,

More information

3-Phase BLDC Motor Control with Hall Sensors Using the MC56F8013

3-Phase BLDC Motor Control with Hall Sensors Using the MC56F8013 3-Phase BLDC Motor Control with Hall Sensors Using the MC56F8013 Targeting User Guide 56F8000 16-bit Hybrid Controllers 56F8013BLDCUG Rev. 1 11/2005 freescale.com TABLE OF CONTENTS About This Book Audience.............................................................

More information

DRM for Driver Information System on S12G128. Reference Design

DRM for Driver Information System on S12G128. Reference Design DRM for Driver Information System on S12G128 Reference Design Document Number: DRM134 Rev. 0, 04/2012 2 Freescale Semiconductor, Inc. Contents Section Number Title Page Chapter 1 Introduction 1.1 Introduction...5

More information

How To Fit A 2Mm Exposed Pad To A Dfn Package

How To Fit A 2Mm Exposed Pad To A Dfn Package EVERSPIN s New 2mm Exposed Pad DFN Package Meets Both SOIC-8 and DFN8 PCB Layouts This Application Note is to inform Everspin customers that a new, DFN8 package with a 2mm bottom exposed pad has been added

More information

User Guide. Introduction. HCS12PLLCALUG/D Rev. 0, 12/2002. HCS12 PLL Component Calculator

User Guide. Introduction. HCS12PLLCALUG/D Rev. 0, 12/2002. HCS12 PLL Component Calculator User Guide HCS12PLLCALUG/D Rev. 0, 12/2002 HCS12 PLL Component Calculator by Stuart Robb Applications Engineering Motorola, East Kilbride Introduction The MC9S12D amily o MCUs includes a Phase-Locked Loop

More information

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ nc. Order this document by MC68328/D Microprocessor and Memory Technologies Group MC68328 MC68328V Product Brief Integrated Portable System Processor DragonBall ΤΜ As the portable consumer market grows

More information

Developing an Application for the i.mx Devices on the Linux Platform

Developing an Application for the i.mx Devices on the Linux Platform Freescale Semiconductor Application Note Document Number: AN3870 Rev. 0, 08/2010 Developing an Application for the i.mx Devices on the Linux Platform by Multimedia Applications Division Freescale Semiconductor,

More information

How To Improve Performance On A P4080 Processor

How To Improve Performance On A P4080 Processor QorIQ Advanced Multiprocessing (AMP) Series Delivers More than Moore Freescale s new QorIQ AMP series pushes the compute and energy performance envelope beyond the P4080 processor such that its performance

More information

Using the High Input Voltage Charger for Single Cell Li-Ion Batteries (KIT34671EPEVBE)

Using the High Input Voltage Charger for Single Cell Li-Ion Batteries (KIT34671EPEVBE) Freescale Semiconductor User s Guide Document Number: KT3467UG Rev..0, 3/008 Using the High Input Voltage Charger for Single Cell Li-Ion Batteries (KIT3467EPEVBE) Purpose This User Guide helps the Lithium-Ion

More information

NOT RECOMMENDED FOR NEW DESIGN

NOT RECOMMENDED FOR NEW DESIGN Technical Data RF Power Field Effect Transistor N-Channel Enhancement-Mode Lateral MOSFET Designed for broadband commercial and industrial applications with frequencies up to 1000 MHz. The high gain and

More information

Green Embedded Computing and the MPC8536E PowerQUICC III Processor

Green Embedded Computing and the MPC8536E PowerQUICC III Processor White Paper Green Embedded Computing and the MPC8536E PowerQUICC III Processor Document Number: MPC8536EWP Rev 1 Introduction Growing energy demands from embedded electronics and increasing evidence of

More information

Genesi Pegasos II Setup

Genesi Pegasos II Setup Freescale Semiconductor Application Note AN2666 Rev. 0, 07/2004 Genesi Pegasos II Setup by Maurie Ommerman CPD Applications Freescale Semiconductor, Inc. Austin, TX This application note is the first in

More information

RF Power Field Effect Transistors N- Channel Enhancement- Mode Lateral MOSFETs

RF Power Field Effect Transistors N- Channel Enhancement- Mode Lateral MOSFETs Technical Data RF Power Field Effect Transistors N- Channel Enhancement- Mode Lateral MOSFETs Designed for GSM and GSM EDGE base station applications with frequencies from 864 to 894 MHz. Suitable for

More information

ITU-T V.42bis Data Dictionary Search on the StarCore SC140/SC1400 Cores

ITU-T V.42bis Data Dictionary Search on the StarCore SC140/SC1400 Cores Freescale Semiconductor Application Note AN2270 Rev. 1, 11/2004 ITU-T V.42bis Data Dictionary Search on the StarCore SC140/SC1400 Cores By Emilian Medve 1 This application note presents a StarCore SC140/SC1400

More information

i.mx Applications Processors with Hantro's Multimedia Framework

i.mx Applications Processors with Hantro's Multimedia Framework Freescale Semiconductor White Paper IMXHANTROWP/D Rev. 2, 09/2004 i.mx Applications Processors with Hantro's Multimedia Framework By: Clint Powell, Freescale Semiconductor Inc. Marko Nurro, Hantro Products

More information

Motion and Freefall Detection Using the MMA8451, 2, 3Q

Motion and Freefall Detection Using the MMA8451, 2, 3Q Freescale Semiconductor Application Note Document Number: Rev 1, 10/2011 Motion and Freefall Detection Using the MMA8451, 2, 3Q by: Kimberly Tuck Applications Engineer 1.0 Introduction The MMA8451, 2,

More information

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start SYSTEM REQUIREMENTS Hardware Operating System Intel Pentium 4 processor, 2 GHz or faster, Intel Xeon, Intel

More information

A Utility for Programming Single FLASH Array HCS12 MCUs, with Minimum RAM Overhead

A Utility for Programming Single FLASH Array HCS12 MCUs, with Minimum RAM Overhead Freescale Semiconductor Application Note AN2720 Rev. 2, 04/2008 A Utility for Programming Single FLASH Array HCS12 MCUs, with Minimum RAM Overhead By Jim Williams 8/16-Bit Applications Engineering Austin,

More information

AND8365/D. 125 kbps with AMIS-4168x APPLICATION NOTE

AND8365/D. 125 kbps with AMIS-4168x APPLICATION NOTE 125 kbps with AMIS-4168x Introduction Question Is it possible to drive 125kB with the AMIS 41682? Please consider all possible CAN bit timings (TSEG1, TSEG2, SJW), a capacitive load at each can pin about

More information

KIT34845EPEVME Evaluation Board

KIT34845EPEVME Evaluation Board Freescale Semiconductor User s Guide Document Number: KT34845UG Rev. 1.0, 6/2009 KIT34845EPEVME Evaluation Board Table of Contents Figure 1. 33845 Evaluation Board (EVB) 1 Kit Contents / Packing List......................................................................

More information

Using the XGATE for Manchester Decoding Lech Olmedo Guadalajara, Mexico Manuel Alves Austin, USA

Using the XGATE for Manchester Decoding Lech Olmedo Guadalajara, Mexico Manuel Alves Austin, USA Freescale Semiconductor Application Note AN3015 Rev. 0, 10/2005 Using the XGATE for Manchester Decoding by: Lech Olmedo Guadalajara, Mexico Manuel Alves Austin, USA The objective of this document is to

More information

Pressure Freescale Semiconductor

Pressure Freescale Semiconductor Freescale Semiconductor Integrated Silicon Sensor On-Chip Signal Conditioned, Temperature Compensated and Calibrated The series piezoresistive transducer is a state-of-the-art monolithic silicon pressure

More information

Using the High-Input-Voltage Travel Charger for Single Cell Li-Ion Batteries (KIT34674EPEVBE)

Using the High-Input-Voltage Travel Charger for Single Cell Li-Ion Batteries (KIT34674EPEVBE) Freescale Semiconductor User s Guide Document Number: KT34674UG Rev..0, 3/008 Using the High-Input-Voltage Travel Charger for Single Cell Li-Ion Batteries (KIT34674EPEVBE) Purpose This User Guide helps

More information

How To Use A Watt Saver On A Microcontroller (Watt Saver) On A Cell Phone Or Mp3 Player

How To Use A Watt Saver On A Microcontroller (Watt Saver) On A Cell Phone Or Mp3 Player Watt Saver for a Cell Phone AC Adapter Reference Design Document Number: DRM130 Rev 1, 10/2013 2 Freescale Semiconductor, Inc. Contents Section number Title Page Chapter 1 Introduction 1.1 Overview...5

More information

Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs

Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs AN033101-0412 Abstract This describes how to interface the Dallas 1-Wire bus with Zilog s Z8F1680 Series of MCUs as master devices. The Z8F0880,

More information

ES_LPC4357/53/37/33. Errata sheet LPC4357/53/37/33. Document information

ES_LPC4357/53/37/33. Errata sheet LPC4357/53/37/33. Document information Rev. 1.1 8 August 2012 Errata sheet Document information Info Keywords Abstract Content LPC4357FET256; LPC4357FET180; LPC4357FBD208; LPC4353FET256; LPC4353FET180; LPC4353FBD208; LPC4337FET256; LPC4337FET180;

More information

CodeWarrior Development Studio Floating Licensing Quick Start

CodeWarrior Development Studio Floating Licensing Quick Start CodeWarrior Development Studio Floating Licensing Quick Start This quick start guide explains how to set up a floating license server of Freescale software products licensed with FLEXlm (e.g. CodeWarrior).

More information

BLDC Motor Control with Hall Effect Sensors Using the 9S08MP

BLDC Motor Control with Hall Effect Sensors Using the 9S08MP Freescale Semiconductor Application Note Document Number: AN458 Rev., 4/2 BLDC Motor Control with Hall Effect Sensors Using the 9S8MP by: Eduardo Viramontes Systems and Applications Engineering Freescale

More information

1 Introduction. Freescale Semiconductor Application Note. Document Number: AN3031 Rev. 1, 04/2010

1 Introduction. Freescale Semiconductor Application Note. Document Number: AN3031 Rev. 1, 04/2010 Freescale Semiconductor Application Note Document Number: AN3031 Rev. 1, 04/2010 Temperature Sensor for the HCS08 Microcontroller Family by: Donnie Garcia MCD Applications, Austin, Texas Rafael Peralez

More information

Migrating Between MC9S08AC and MCF51AC Flexis Devices

Migrating Between MC9S08AC and MCF51AC Flexis Devices Freescale Semiconductor Application Note Document Number: AN3732 Rev. 0, 06/2008 Migrating Between MC9S08AC and MCF51AC Flexis Devices by: Bruno Castelucci Bruno Nunes RTAC, Americas This application note

More information

CodeWarrior Development Studio for Freescale S12(X) Microcontrollers Quick Start

CodeWarrior Development Studio for Freescale S12(X) Microcontrollers Quick Start CodeWarrior Development Studio for Freescale S12(X) Microcontrollers Quick Start SYSTEM REQUIREMENTS Hardware Operating System Disk Space PC with 1 GHz Intel Pentum -compatible processor 512 MB of RAM

More information