CodeWarrior Development Tools Knowledge Base

cancel
Showing results for 
Search instead for 
Did you mean: 

CodeWarrior Development Tools Knowledge Base

Labels
  • General 75

Knowledge Base Articles

Sometimes we don't use external debugger but OpenSDA on-board . The debugger controller clock setting need more attention because of slow debug by  OpenSDA on-board. if you set the bus clock too high to make step by OpenSDA. The Non error will report at the stage of download(Fig2) and pause, even stop(Fig1). Fig 1  Pause and stop error  Fig 1  Download error  when you encounter. you can set debugger follow some steps. 1 open debug  configurations-Target setting-Edit... 2 In Edit you need remove the selection of 'use bus clock as debug controller clock source ' and then reopen the CW and project debug fine works. Enjoy!
View full article
This post will step by step show how to report a software  defect or problem to NXP support team. Please take a few minutes to read it. This will help us investigate the issue more efficiently and quickly. Basically we need prepare:      1. Your IDE version: - If you use classic version: Start the IDE and click on Help | About Freescale CodeWarrior. Click on Installed Products. Save all info displayed into a txt file. - If you use eclipse version: Start the IDE and click on Help | About CodeWarrior Development Studio or About Kinetis Design Studio. Save the version and build id. 2. Demo Code: - Create a demo project to show the problem.  Then send the entire sample code folder in zip format. - If the problem is in NXP SW package, for example SDK package, please provide the SW version or download link.      3. Mention how to reproduce the problem step by step with the demo code.      4. Error screenshot.     Steps of submitting the case: 1. Go to Sales and Support page, click on Hardware & Software for Submit new ticket: http://www.nxp.com/support/sales-and-support:SUPPORTHOME     2. Then click on “Add a new case”   3. Fill the New Case form. Here is an example:                                                         
View full article
Inside {CW10 install folder}\eclipse there is ecd.exe which is used to run build projects from command line. this article focuses on ecd.exe usage with examples. Especially How to use ecd.exe command to build, generateMakefiles,make and reference a project.
View full article
Standalone Programming is widely used when user doesn’t need a debugger for programming in CodeWarrior 10. Thus people only uses elf/s19 file to program target without using project and source files. There is a very famous article written by Erich Styger regarding using “Flash File to Target” as a standalone programmer for target programming. https://mcuoneclipse.com/2012/08/02/standalone-flash-programmer/   Besides this method, Flash Programmer Task is also good for standalone programming.  As I know some customers prefer to use this method because it can also do checksum, dump flash,etc during programming. I will introduce how to utilize Flash Programmer Task step by step in the following for brainstorming. This article is based on CodeWarrior 10.6.4 and FRDM-K64 board, but the method is same for all Kinetis,HCS08,HCS12Z,etc devices   For detail, see attached article and video.
View full article
This project is an example of using the DSC CodeWarrior linker to place code in a different area of memory.  In this case, the FlexNVM flash block is used. The example uses three different methods in the linker command file to force specific code to a different memory segment, see examples below.  For more information on the linker syntax, see the manual installed with CodeWarrior at \CW MCU v10.6.x\MCU\Help\PDF\MCU_DSC_Compiler.pdf     This project was developed for the TWR-56F8400 Tower development board, using CodeWarrior for Microcontrollers v10.6.6.  The project was created using Processor Expert, and blinks an LED using the PIT timer interrupt.     The linker command file is located at \Project_Settings\Linker_Files\FLASH_SDM.cmd.Here are the key changes to the project:     MEMORY {         # Added .p_FlexNVM memory segment         .p_FlexNVM(RWX) : ORIGIN = 0x00068000, LENGTH = 0x00004000 }     # Added .FlexNVM_Code memory section .FlexNVM_Code : {   TI1_c.obj (.text) # Place whole source file in this section   OBJECT (FPE_low_level_init, cpu_c.obj) # Place individual function in this section   * (FlexNVM_code.text) # Place from section defined in source code, see main.c     } > .p_FlexNVM     and in main.c: #pragma define_section FlexNVM_code "FlexNVM_code.text"  RX #pragma section FlexNVM_code begin void main(void) {   /* Write your code here */ } #pragma section FlexNVM_code end
View full article
CodeWarrior Development Studio for HCS12(X) Microcontrollers (Classic IDE) v5.2 has been released for several months.   Recently, since v5.2 release, I have received many questions from customers. These questions are almost similar: how to add the missing devices back to my CodeWarrior v5.2 ?   From my side I think there is one workaround if a specific device has a service pack. For detail, please see attached document.
View full article
The following is a list of our documents in regards to developing MCU on CodeWarrior platform.   If you need to log an issue in Case System,  or obtain a license for your CodeWarrior product, please refer to:  How to log an issue in Case system instead CRM (Service request - not used anymore)?   1.  CodeWarrior Common Feature   1.1 Reversion Release History CodeWarrior for MCU V10.6 Update 3.0.0 available New CodeWarrior for MCU v10.6.4 available CodeWarrior v10.6.4 Update 5 available   1.2 IDE and Installation How install (or check availability) patch and update under Eclipse ? How to solve “IDE failed to start …” message - Classic version on Windows OS (most of the time 64 bit as Win 7 or Win 8.1)   1.3 Project Management Convert a Processor Expert project from linked mode to standalone mode   1.4 Build Tool Chain (Assembler, Compiler, Linker) Linking and compiling with CodeWarrior Classic - How to use dashboard (Jenkins) to build a CodeWarrior project?   2. CodeWarrior for Kinetis   2.1 Board Bring-up  How to work KV10 with CW10.5   2.2 RTOS  MQX applications...new at this, too?~   2.3 Build Tool Chain (Assembler, Compiler, Linker) How to fill unused memory for CW for 8/16bit and kinetis Gnu. Interrupt Vector Redirection Method in Kinetis Relocating Code and Data Using the CW GCC Linker File for Kinetis Relocate Code (configuration linker files) - CW10.6 - Kinetis Extended inline assembly with GCC in CodeWarrior   2.4 Programmer and Debugger Preserve Memory Ranges In CodeWarrior v10.6   3. CodeWarrior for MPC5xxx   3.1 Build Tool Chain (Assembler, Compiler, Linker) Generate CRC value for MPC56xx in CodeWarrior for MCU v10.6.4   3.2 Programmer and Debugger Debug code using CodeWarrior 10.5 Flash two .elf files using CodeWarrior 10.6   4. CodeWarrior for DSC   4.1 Project Management How to migrate PE project from Classic CodeWarrior to Eclipse CodeWarrior How to solve PE bean migration for 56F84xxx in CodeWarrior V10.3   4.2 Build Tool Chain (Assembler, Compiler, Linker) To use 56F800EX new additional 32bit multiplication instructions on CodeWarrior V10.3/V10.5/V10.6.   4.3 Programmer and Debugger Workaround for programming 56F8323 in CodeWarrior v10.6 debugger   4.4 External Tool Integration Integrate Quick Start 2.6 for DSC with CodeWarrior 10.6.4 Using TWR-56f8400 board with FreeMASTER via USBTAP interface   5. CodeWarrior for Coldfire   5.1 Build Tool Chain (Assembler, Compiler, Linker) Relocating code with CodeWarrior CodeWarrior and ColdFire get optimized!   5.2 Programmer and Debugger Problem with Multilink Rev C  - not running after MCU V10.6 Update3 installed & CW for MCF V7.2   6. CodeWarrior for 8/16bit MCU   6.1 IDE and Installation CW MCU v10.5 for 8bit MCU Banked Memory Patch Installation   6.2 Build Tool Chain (Assembler, Compiler, Linker) Classic - Is it possible (How) to use HCS12 on Eclipse? How to fill unused memory for CW for 8/16bit and kinetis Gnu.
View full article
How to log an issue in Case system instead CRM (Service request)?     After the merge of Freescale and NXP, technical support cases are answered in a different system. To submit your case into the new system, please follow below steps:    1) Go to http://www.nxp.com/support/sales-and-support:SUPPORTHOME .    2) On the bottom of the page under Submit New Issues, click Hardware & Software.    3) Register with your business email to access NXP technical online support.    4) A verification email will be sent to your account. Click the link embedded in that email to verify your access.    5) On the NXP online support page, select Contact Support from the top menu and click “submit a new case” to start the process.   Attached you will find a video explaining the process to follow.
View full article
Taking TWR-56F8400 as an example, this document shows how to create a project in CodeWarrior v10.6 and get its global data visualization in FreeMaster through USBTAP. This example shows three global variables (test8, test16, test32) in ‘Variable Watch Window’ of FreeMASTER , displays the changing curve of test8 in scope, and displays test16 as curve in Recorder.   
View full article
There is a problem in programming 56F8323 with CodeWarrior 10.6 and USBTAP.  The attached document gives a workaround before the update release is available.
View full article
Hello!   I'm currently trying to adapt a MC56F8356 Project on the Codewarrior 8.3. When I try to download my programme into the DSP,I failed with a outcom like this picture uploaded.   I doubt it's the hardware circuit problem,but I do not know where the problem is.   Can you tell in what situation this may be ?   Thank you for help! YANQING YU
View full article
Interrupt technology is an important method to improve the efficiency of real-time CPU. In Kinetis, interrupt vector table is allocated in lowest ROM address of whole memory.   However in some application, we need move vector table to other address. A typical usage is developing boot loader code. The boot loader code occupies the first region of the FLASH memory (the lowest memory address space starting from 0x0000000). This placement moves at the beginning of the available memory space and it is necessary to shift this address in the user application.   The CM0+ and CM4 core adds support for a programmable Vector Table Offset Register (VTOR) to relocate the exception vector table, which is not existing in Freescale 8/16bit MCU. This device supports booting from internal flash and RAM. Kinetis supports booting from internal flash with the reset vectors located at addresses 0x0 (initial SP_main), 0x4 (initial PC), and RAM with relocating the exception vector table to RAM.   for detail, see attached document and demo project made under CW10.6, and KDS
View full article
Greetings, The third update for CodeWarrior for MCU V10.6 is available. This update includes the previous 1.0.0 and 2.0.0 updates, and applies to CodeWarrior for MCU v10.6 only. New device support: •             S12Z: S12ZVC96, S12ZVCA128, S12ZVCA192, S12ZVCA64, S12ZVCA96 •             DSC: MWCT1012, MWCT1212, MWCT1111 Updated support for silicon revisions: •             Kinetis K Series: K11DN512A,  K11DX128A, K11DX256A, K21DN512A, K21DX128A, K21DX256A, K21FN1M0A, K21FX512A See attached release notes for further details.   There are two ways of installation: Offline or Online. Offline installation is recommended as the size of the installation files is up to 900 MB (depending on the installed architectures).   Offline Installation: Go to https://www.freescale.com/cwmcu10 Click on the 'Downloads' tab and select the product download: Select 10.6: Download the Update 3: From CodeWarrior for MCU10.6, select the menu Help > Install new Software and select the downloaded archive file: Check the MCU 10.6 Updates and go through the installation with 'Next >' button. Restart Eclipse as prompted.   Online Installation In CodeWarrior, use the menu Help > Install New Software Use the following Eclipse update site: http://freescale.com/lgfiles/updates/Eclipse/MCU10_6/com.freescale.mcu.updatesite Install the update Restart CodeWarrior as prompted   Full release notes are attached to this document.
View full article
How to use error directive in codewarrior version 10.6 as i am facing problem which is able to see in  attached sheet
View full article
This document shows a general way how to preserve memory range using target task in CW10.6.   I am using k64 freedom board and Segger J-link in my project as an example. K64 freedom board use MK64FN1M0 MCU which has 1 M size flash.  In my project I divide the flash into two areas in the link file as below:   /* Specify the memory areas */ MEMORY { m_interrupts       (rx) : ORIGIN = 0x00000000, LENGTH = 0x198 m_cfmprotrom       (rx) : ORIGIN = 0x00000400, LENGTH = 0x10 m_text             (rx) : ORIGIN = 0x00000800, LENGTH = 512K m_text2            (rx) : ORIGIN = 0x00080800, LENGTH = 512K - 0x800 m_data         (rwx) : ORIGIN = 0x1FFF0000, LENGTH = 64K                  /* Lower SRAM */ m_data2        (rwx) : ORIGIN = 0x20000000, LENGTH = 192K                 /* Upper SRAM */ } m_text2 is the memory area that I am trying to keep it from being erased while downloading the application to m_text memory area. Here are the steps to do this using target task in CW10.6. Add a target task view by clicking Window -> Show View -> other from menu bar, then select Debug -> Target Tasks view in the popup window. From the Target Tasks view, select “Import” from the context menu. Then select the flash (.xml) file for your target device. In this case I need to select MK64FN1M0.xml file. After that you will see a “MK64FN1M0” task in the list. Double click the task name, you will see there are two actions (“Erase” and “Program and Verify”) in the “Flash Programmer Actions” view.   The default Erase action will mass erase all flash, so I remove this action by unchecking the “Erase” action. I can add erase action in “Program and Verify” action later. Double click the “Program and Verify” action. In the popup dialog, check “Erase sectors before program” option. Check “Restrict to Addresses in this Range” option, and then specify the address range you want to program. The data/code out of this range will be preserved (will not be erased or changed). Click “Update Program Action” button to update the settings of this action. Move to Debug configurations window by clicking Run -> Debug configurations from Menu bar. Select a debug configuration, in this case I select the run configuration for Segger J-Link. Select Download tab which is under Debugger tab. By default, Standard Download will be executed and all the flash will be erased. As I am going to execute target task in this case, so uncheck “Perform Standard Download” and then check “Execute Tasks”. Click “Add” button to add a task. In this case I add K64F1M0M12 task which I created in previous step in target task view. Click “Debug” button, the application will be downloaded to flash but preserved area which was not specified in restrict flash range will not be erased. You can check this from memory view.   With the above steps, you can preserve a specified flash range while downloading application. I am using Segger J-link in my project as an example and the steps also work for other tools like P&E Multilink and USB Tap.
View full article
Processor Expert offers static code which allows choosing standalone mode and linked mode for each project. You can select either linked mode or standalone mode for static code during project creation. But what if you want to change mode for a created project? With the below steps you can learn how to convert a project from linked mode to standalone mode in CodeWarrior v10.6.   1. From the original linked mode PEx project, remove the “static_code” folder. 2. Close the project in CW10.6. Navigate to the top folder of the project, then open the ProcessorExpert.pe file using text editor software, for example, windows notepad. 3. Seach the key world “LINKED” in the ProcessorExpert.pe file. Replace the line <ProjectStaticFilesGenerationMode>LINKED</ProjectStaticFilesGenerationMode> with <ProjectStaticFilesGenerationMode>STANDALONE</ProjectStaticFilesGenerationMode>   4. Remove the .ProcessorExpert.g_c file and .ProcessorExpert.g_x file under the top folder of the project. 5. Then re-open the project in CW10.6. Click “Generate PEx Code” button from Pex components view.   You will see a “static files track changes” dialog pop up. Click OK, PEx will create static files under the project folder. 6. You will see that IO_Map, PDD and System files have been generated under Static_Code folder.   Unfortunately PEx doesn’t generate Peripherals files automatically. So you need copy the Peripherals files to the project manually. For dsc 56F82748 MCU in this case, the peripherals static files are located under the “C:\Freescale\CW MCU v10.6\MCU\ProcessorExpert\lib\56800\pdd2\MC56F82748VLH\perihperals” folder on my machine. You can simply drag and drop the folder to the project.     Then select “Copy files and folders” option and click “OK”.     7. Now you can see that the static files are placed under the project folder now. You can verify this by checking if there is an arrow mark on the static file icons. Alternatively, you can also check by right clicking on a static file and then click “Show In Windows Explorer” item from the context menu. The stitic files should be located under the project folder.   With above tricks, you can also convert a project from standalone mode to linked mode easily.
View full article