SEGGER - Jobs
emWin upgrade     Trade-In program     Web shop
Flag icon Head office Germany
Flag icon US office
                   


ISO 9001 certified


Bin2C - Binary to C-converter

Bin2C is a command-line utility for Windows which takes a binary (or HTML or text) file as input and converts it to a C-array that can be directly included in target application code. The utility does not require additional software to be installed (runs stand-alone). Typical usage applications are data that need to be included in a C-program,
such as FPGA configuration data, bitmaps in portable format (such as GIF, PNG), webpages that need to be delivered by a built-in webserver, ....

 

pr-jlink-monitor-mode.html  Download bin2C - Binary to C converter for Windows

 

Using Bin2C

The Bin2C utility is very simple to use. It expects a path to an existing file as an input parameter as well as an path to an output file. The input file will be read as binary input data and output into a C-array in the output file. The C-array can be easily compiled into a application.

If the utility is started without any file input, it will print its usage information.

Example, create C-file from test.html

The following command-line is used:

Bin2C.exe test.html test

This results in the following files

  • test.html
  • test.c
  • test.h

Contents of test.html

<html>
<head></head>
<title>Testpage</title>
<body>
<p>This is a test paragraph</p>
<ol>
<li>This is a test list entry 0</li>
<li>This is a test list entry 1</li>
</ol>
</body>
</html>

Contents of test.c

/*********************************************************************
*               SEGGER MICROCONTROLLER GmbH & Co. KG                 *
*       Solutions for real time microcontroller applications         *
**********************************************************************
*                                                                    *
*       (c) 2002 - 2015  SEGGER Microcontroller GmbH & Co. KG        *
*                                                                    *
*       www.segger.com     Support: support@segger.com               *
*                                                                    *
**********************************************************************
 
----------------------------------------------------------------------
File    : test.c
Purpose : Automatically created from test.html using Bin2C.exe
--------  END-OF-HEADER  ---------------------------------------------
*/

#include "test.h"
const unsigned char test_file[198] =
{
  0x3c,  0x68,  0x74,  0x6d,  0x6c,  0x3e,  0x0d,  0x0a,  0x3c,  0x68,
  0x65,  0x61,  0x64,  0x3e,  0x3c,  0x2f,  0x68,  0x65,  0x61,  0x64,
  0x3e,  0x0d,  0x0a,  0x3c,  0x74,  0x69,  0x74,  0x6c,  0x65,  0x3e,
  0x54,  0x65,  0x73,  0x74,  0x70,  0x61,  0x67,  0x65,  0x3c,  0x2f,
  0x74,  0x69,  0x74,  0x6c,  0x65,  0x3e,  0x0d,  0x0a,  0x3c,  0x62,
  0x6f,  0x64,  0x79,  0x3e,  0x0d,  0x0a,  0x3c,  0x70,  0x3e,  0x54,
  0x68,  0x69,  0x73,  0x20,  0x69,  0x73,  0x20,  0x61,  0x20,  0x74,
  0x65,  0x73,  0x74,  0x20,  0x70,  0x61,  0x72,  0x61,  0x67,  0x72,
  0x61,  0x70,  0x68,  0x3c,  0x2f,  0x70,  0x3e,  0x0d,  0x0a,  0x3c,
  0x6f,  0x6c,  0x3e,  0x0d,  0x0a,  0x20,  0x20,  0x3c,  0x6c,  0x69,
  0x3e,  0x54,  0x68,  0x69,  0x73,  0x20,  0x69,  0x73,  0x20,  0x61,
  0x20,  0x74,  0x65,  0x73,  0x74,  0x20,  0x6c,  0x69,  0x73,  0x74,
  0x20,  0x65,  0x6e,  0x74,  0x72,  0x79,  0x20,  0x30,  0x3c,  0x2f,
  0x6c,  0x69,  0x3e,  0x0d,  0x0a,  0x20,  0x20,  0x3c,  0x6c,  0x69,
  0x3e,  0x54,  0x68,  0x69,  0x73,  0x20,  0x69,  0x73,  0x20,  0x61,
  0x20,  0x74,  0x65,  0x73,  0x74,  0x20,  0x6c,  0x69,  0x73,  0x74,
  0x20,  0x65,  0x6e,  0x74,  0x72,  0x79,  0x20,  0x31,  0x3c,  0x2f,
  0x6c,  0x69,  0x3e,  0x0d,  0x0a,  0x3c,  0x2f,  0x6f,  0x6c,  0x3e,
  0x0d,  0x0a,  0x3c,  0x2f,  0x62,  0x6f,  0x64,  0x79,  0x3e,  0x0d,
  0x0a,  0x3c,  0x2f,  0x68,  0x74,  0x6d,  0x6c,  0x3e, };

/****** End Of File *************************************************/

Contents of test.h

/*********************************************************************
*               SEGGER MICROCONTROLLER GmbH & Co. KG                 *
*       Solutions for real time microcontroller applications         *
**********************************************************************
*                                                                    *
*       (c) 2002 - 2015  SEGGER Microcontroller GmbH & Co. KG        *
*                                                                    *
*       www.segger.com     Support: support@segger.com               *
*                                                                    *
**********************************************************************
----------------------------------------------------------------------
File    : test.h
Purpose : Automatically created from test.html using Bin2C.exe
--------  END-OF-HEADER  ---------------------------------------------
*/
#ifndef __TEST_H__
#define __TEST_H__

#define TEST_SIZE 198

extern const unsigned char test_file[198];

#endif

//__TEST_H__

/****** End Of File *************************************************/