<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>8-bit Microcontrollers中的主题 Re: sprintf Problem</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135182#M3972</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Thak you very much all of you.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I'll try Lundin's code!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Best regards&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Pablo&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 07 Jun 2007 00:27:54 GMT</pubDate>
    <dc:creator>PabloA</dc:creator>
    <dc:date>2007-06-07T00:27:54Z</dc:date>
    <item>
      <title>sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135176#M3966</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;DIV&gt;Hello to every body!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I'm new in the forum and I have a little problem with my C code for a MC908QB8 microcontroller.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I try to use&amp;nbsp;"sprintf " like this:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;#include &amp;lt;hidef.h&amp;gt; /* for EnableInterrupts macro */&lt;BR /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;BR /&gt;#include "derivative.h" /* include peripheral declarations */&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;void main(void)&lt;BR /&gt;{&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&amp;nbsp; char Str_Buffer [10] ;&lt;BR /&gt;&amp;nbsp; signed int Num = 1500;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; (void) sprintf (Str_Buffer, "%d", Num);&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&amp;nbsp; for(;&lt;A href="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif"&gt;&lt;IMG alt=":smileywink:" class="emoticon emoticon-smileywink" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif" title="Smiley Wink" /&gt;&lt;/A&gt;&lt;BR /&gt;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __RESET_WATCHDOG(); /* feeds the dog */&lt;BR /&gt;&amp;nbsp; } /* loop forever */&lt;BR /&gt;&amp;nbsp; /* please make sure that you never leave this function */&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;}&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;But wen I try to simulate it the Real Time Debugger Stop with the following mensage:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Error: At location 0002 -&lt;BR /&gt;Error: Attempt to use unimplemented (--) memory.&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;Im not using floating point.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I don't understand way it dosen't work, so if any body can help me I will appreciate it.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thank you very much!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Pablo Suarez&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 May 2007 23:46:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135176#M3966</guid>
      <dc:creator>PabloA</dc:creator>
      <dc:date>2007-05-29T23:46:06Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135177#M3967</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;the problem is the too small stack. A wizard generated projects allocates 0x30 bytes for the stack, but that sprintf did use 0x43 bytes for me (HC08 V5.1, SMALL memory model, default options).&lt;BR /&gt;&lt;BR /&gt;Here an adapted prm file providing 0x60 bytes for the stack.&lt;BR /&gt;&lt;BR /&gt;Daniel&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;SPAN class="msg_source_code"&gt;&lt;SPAN class="text_smallest"&gt;Code:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;PRE&gt;/* This is a linker parameter file for the QB8 */NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */SEGMENTS /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */    ROM                      =  READ_ONLY    0xDE00 TO 0xFDFF;    Z_RAM                    =  READ_WRITE   0x0040 TO 0x00DF;    SSTACK_AREA              =  READ_WRITE   0x00E0 TO 0x013F;    ROM1                     =  READ_ONLY    0xFFB0 TO 0xFFBD;    ROM2                     =  READ_ONLY    0xFFC2 TO 0xFFCF;ENDPLACEMENT /* Here all predefined and user segments are placed into the SEGMENTS defined above. */    SSTACK                                      INTO  SSTACK_AREA;    DEFAULT_ROM, ROM_VAR, STRINGS               INTO  ROM; /* ROM1,ROM2 In case you want to use ROM1,ROM2 as well, be sure the option -OnB=b is passed to the compiler. */    DEFAULT_RAM,_DATA_ZEROPAGE, MY_ZEROPAGE     INTO  Z_RAM;ENDSTACKSIZE 0x60VECTOR 0 _Startup /* Reset vector: this is the default entry point for an application. */&lt;/PRE&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 May 2007 02:36:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135177#M3967</guid>
      <dc:creator>CompilerGuru</dc:creator>
      <dc:date>2007-05-30T02:36:07Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135178#M3968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Thak you very much CompilerGuru&amp;nbsp;you are right!&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 May 2007 03:11:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135178#M3968</guid>
      <dc:creator>PabloA</dc:creator>
      <dc:date>2007-05-30T03:11:20Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135179#M3969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;On a mcu with limited memory, and possibly demands on realtime performance, you might want to concider writing your own int-to-ASCII routine instead of using sprintf(). sprintf() will not only give you RAM problems, but it will also slaughter the flash. Ahe function is also very slow, with a huge amount of overhead you don't need.&lt;BR /&gt;&lt;BR /&gt;No matter the platform, the only reason to use sprintf() is really when you are using float numbers, since that will be time and memory consuming no matter how you do. For simple integer to ASCII conversions, there are much smoother ways.&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 May 2007 13:43:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135179#M3969</guid>
      <dc:creator>Lundin</dc:creator>
      <dc:date>2007-05-30T13:43:23Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135180#M3970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Hello,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;It is my understanding that the simulation error occurred because the stack attempted to exceed the boundary&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;of the segment&lt;/FONT&gt; &lt;FONT size="2"&gt;used by the stack, and not when the STACKSIZE parameter was exceeded.&amp;nbsp; Had the boundary&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;not been exceeded, but more than the STACKSIZE limit used, an error would not have been reported, but&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;serious problems could still potentially occur.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;It would appear that the default PRM file generated by CW, specifically for the HC908QB8 device, has&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;significant&amp;nbsp;shortcomings for all but the simplest of projects.&amp;nbsp; The following is the default arrangement&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;generated by CW.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;/* This is a linker parameter file for the QB8 */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;NAMES END&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;SEGMENTS&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp; READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xDE00 TO 0xFDFF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Z_RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp; READ_WRITE&amp;nbsp;&amp;nbsp; 0x0040 TO 0x00FF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp; READ_WRITE&amp;nbsp;&amp;nbsp; 0x0100 TO 0x013F;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp; READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFFB0 TO 0xFFBD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp; READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFFC2 TO 0xFFCF;&lt;BR /&gt;END&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;PLACEMENT&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; RAM;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_ROM, ROM_VAR, STRINGS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; ROM;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _DATA_ZEROPAGE, MY_ZEROPAGE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; Z_RAM;&lt;BR /&gt;END&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;STACKSIZE 0x30&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Courier New" size="2"&gt;VECTOR 0 _Startup&lt;BR /&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Because there is no segment specifically allocated to the stack, the stack automatically becomes allocated to&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;DEFAULT_RAM.&amp;nbsp; Additionally, any global variables are also&amp;nbsp;allocated to DEFAULT_RAM.&amp;nbsp; This means that,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;by default, the stack and any global variables must share a total of only 64 bytes, with every chance that the&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;variables will be over-written by the stack, &lt;U&gt;without any warning&lt;/U&gt; whatsoever.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Daniel's alternative PRM neatly solves this problem by providing an explicit segment for the stack, and by&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;DEFAULT_RAM being allocated to the Z_RAM segment.&amp;nbsp; Thus there is much wider separation between the&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;global variables and the stack, and a simulation error should occur if the stack usage&amp;nbsp;exceeds its&lt;/FONT&gt; &lt;FONT size="2"&gt;segment&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;boundary.&amp;nbsp; The STACKSIZE value would appear unimportant&amp;nbsp;if using a separate stack segment.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;The alternative PRM would&amp;nbsp;seem a much better default arrangement for the QB8 device, to suit a wider&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;variety of projects.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;I totally agree with Lundin's comments concerning use of sprintf() - more than 1.5K just for that function, in&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;a device with 8K total flash - very expensive!&amp;nbsp; I recall that there are other threads within this forum that address&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;binary-to-BCD conversions.&amp;nbsp; These should be easily adapted for 16-bit binary-to-ASCII.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Regards,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Mac&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 May 2007 21:14:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135180#M3970</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2007-05-30T21:14:48Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135181#M3971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Actually... since the algo is pretty simple, here you go, no charge:&lt;BR /&gt;&lt;BR /&gt;void gpfunc_getDecStr (uint8* str, uint8 len, uint32 val)&lt;BR /&gt;{&lt;BR /&gt;uint8 i;&lt;BR /&gt;&lt;BR /&gt;for(i=1; i=len; i++)&lt;BR /&gt;{&lt;BR /&gt;str[len-i] = val % 10 + '0';&lt;BR /&gt;val /=10;&lt;BR /&gt;}&lt;BR /&gt;str[i-1]='\0';&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;On a HCS12 this gave 80 bytes instead of 1500 bytes. A slight improvement... &lt;IMG alt=":smileywink:" class="emoticon emoticon-smileywink" id="smileywink" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-wink.gif" title="Smiley Wink" /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2007 16:31:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135181#M3971</guid>
      <dc:creator>Lundin</dc:creator>
      <dc:date>2007-06-01T16:31:43Z</dc:date>
    </item>
    <item>
      <title>Re: sprintf Problem</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135182#M3972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Thak you very much all of you.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I'll try Lundin's code!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Best regards&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Pablo&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Jun 2007 00:27:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/sprintf-Problem/m-p/135182#M3972</guid>
      <dc:creator>PabloA</dc:creator>
      <dc:date>2007-06-07T00:27:54Z</dc:date>
    </item>
  </channel>
</rss>

