element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Freedom development platform
  • Products
  • Dev Tools
  • Freedom development platform
  • More
  • Cancel
Freedom development platform
Documents Codewarrior Trick & Tips: S-Record Generation and S19 Files Decoding
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Freedom development platform to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Engagement
  • Author Author: FreescaleTools_and_Software
  • Date Created: 23 Apr 2013 12:35 PM Date Created
  • Last Updated Last Updated: 8 Oct 2021 5:28 AM
  • Views 3848 views
  • Likes 0 likes
  • Comments 0 comments
Related
Recommended

Codewarrior Trick & Tips: S-Record Generation and S19 Files Decoding

This tutorial was extracted from Erich Styger blog http://mcuoneclipse.wordpress.com with his agreement.

image image

    

With my Freescale Freedom FRDM-KL25Z board, I’m using the GNU/gcc build tools and Eclipse/CodeWarrior. When I wanted to create an S19 file of my application using the GNU tools, this was not that easy to find out. So here are the steps to do this:

   

I open the project setting using the menu Project > Properties and go to C/C++ Build > Settings > Additional Tools and enable’Create Flash Image‘:

   

Additional Tools gcc Settings

Additional Tools gcc Settings

   

   

 

Now I need to press the Apply button:

    

Apply Button

Apply Button

    

     

Pressing the Apply button will show up an additional ‘Create Flash Image’ group. Many other formats are available in the drop down as shown in the screenshot.

    

Create Flash Image Option

Create Flash Image Option

     

     

Now I can specify S-Record/S19 as output format:

     

Settings to create S-Record

Settings to create S-Record

     

     

Pressing OK, and building my project again will show up the S19 file together with the application file:

     

S19 File Generated

S19 File Generated

   

   

After dealing with S19 file generation, let see how get a simple decoder of the file format.

The good thing is that such a decoder is provided with CodeWarrior for MCU10.x :-)

That capability is built into the Decoder.exe which is delivered with the Freescale S08 (or S12) tool chain, and is located inside the MCU\prog folder:

   

Decoder.exe inside MCU prog Folder

Decoder.exe inside MCU prog Folder

   

   

 

That Decoder is usually used to disassemble Freescale S08 object or absolute files. But as S19/S-Records files are very generic, that decoder can even decode ARM Cortex S-Record files: it just cannot understand the assembly code, but this does not matter for my use case.

The decoder comes with a command line interface. But I can use it with a GUI (Graphical User Interface) if I launch it without any arguments (or start it from the Windows Explorer):

  

Decoder Application Window

Decoder Application Window

  

   

The simplest way to decode files is: simply drag&drop the file into that window :-)

    

Drag and Drop of S19 file into decoder

Drag and Drop of S19 file into decoder

     

     

This creates the .lst listing which I can open in a text editor:

     

Decoded S19 File

Decoded S19 File

    

   

Now I can easily inspect each S-Record line with type, length, address, data and checksum :-)

 

Happy Decoding :-)

  • Cortex-M
  • kinetis
  • codewarrior
  • generator
  • s19
  • arm
  • hex
  • freedom
  • file
  • decoder
  • Share
  • History
  • More
  • Cancel
  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube