<?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>S12 / MagniV MicrocontrollersのトピックRe: HCS1232C memory problems</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192203#M7511</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;BLOCKQUOTE&gt;&lt;DIV&gt;&lt;HR /&gt;Sinky wrote:&lt;BR /&gt;&lt;DIV&gt;&lt;DIV&gt;Why would this wait for a byte to be sent back before it continues? Would it not just continue transmitting as long as the receive data register full flag is not set therefore transmitting 0x29 repeatedly until the flag is set?&lt;/DIV&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;DIV&gt;Because of this line:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;while ((SCISR1 &amp;amp; 0x20) == 0) ;&amp;nbsp;&amp;nbsp; /* Wait for received character */&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;This line waits until the RDRF flag is set.&amp;nbsp; Take a look at the datasheet for your microcontroller(link below), Page 391 and the description of the RDRF flag.&amp;nbsp; It explains how it is set and how to clear this flag.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC9S12C128V1.pdf?pspll=1" rel="nofollow" target="_blank"&gt;http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC9S12C128V1.pdf?pspll=1&lt;/A&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 21 Feb 2008 22:53:16 GMT</pubDate>
    <dc:creator>allawtterb</dc:creator>
    <dc:date>2008-02-21T22:53:16Z</dc:date>
    <item>
      <title>HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192193#M7501</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #000000; font-family: Tahoma; font-size: 2;"&gt;I have been writing programs in C for the HCS12C32 and need my program to remain on the microcontroller after i disconnect from the computer.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #000000; font-family: Tahoma; font-size: 2;"&gt;So far this is not the case as my SCI works (through the transmission and reception pins on the base of the HCS12) until i remove my serial cable then the transmission dies.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #000000; font-family: Tahoma; font-size: 2;"&gt;I have looked into memory remapping but not sure if this is what i want. Does anyone have any advice on this problem?&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #000000; font-family: Tahoma; font-size: 2;"&gt;Thanks&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 01:59:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192193#M7501</guid>
      <dc:creator>Sinky</dc:creator>
      <dc:date>2008-02-21T01:59:15Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192194#M7502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hmm, if you removed the cable, then how do you know it dies?&lt;BR /&gt;&lt;BR /&gt;Are you burning the program into flash?&lt;BR /&gt;Or are you using ram?&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 02:26:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192194#M7502</guid>
      <dc:creator>JimDon</dc:creator>
      <dc:date>2008-02-21T02:26:07Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192195#M7503</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;I have been using an oscilloscope to monitor the transmissions. I haven't specified in my program so it will be writing to whatever the default is; I assume that it is burning into the flash because when the flash is wiped after i run another program it is no longer there. &amp;nbsp;Am i right in assuming that i want it to be burned into ram?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 03:11:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192195#M7503</guid>
      <dc:creator>Sinky</dc:creator>
      <dc:date>2008-02-21T03:11:16Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192196#M7504</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;" Am i right in assuming that i want it to be burned into ram?"&lt;BR /&gt;&lt;BR /&gt;Did you mean ROM (FLASH). No, you do NOT what it to go into RAM.&lt;BR /&gt;&lt;BR /&gt;Just because it is gone when you run another program, does not mean it was in FLASH.&lt;BR /&gt;&lt;BR /&gt;What kind of board is it?&lt;BR /&gt;Are you using code warrior. If so post your PRM file.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 03:24:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192196#M7504</guid>
      <dc:creator>JimDon</dc:creator>
      <dc:date>2008-02-21T03:24:56Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192197#M7505</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;I am using a HCS12C32. Yes i did mean ROM(sorry) but&amp;nbsp;i am not sure if there is any on this because there is no EEPROM&amp;nbsp;on this microcontroller.&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I am using codewarrior. My program is:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;void main (void) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIBDH = 0x00;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIBDL = 0x34;&amp;nbsp;&amp;nbsp;&amp;nbsp;//baud of 9600&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCICR1 = 0x20;&amp;nbsp;&amp;nbsp; //8 bits,&amp;nbsp; no parity */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCICR2 = 0xFC;&amp;nbsp; //Enable transmitter and receiver&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; Transmission&lt;/DIV&gt;&lt;DIV&gt;while(1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIDRL = 0x29;&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; //send the bit sequence&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((SCISR1 &amp;amp; 0x80) == 0) ;&amp;nbsp;&amp;nbsp; // Wait for transmission buffer to be empty(TDRE)&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; Reception&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((SCISR1 &amp;amp; 0x20) == 0) ;&amp;nbsp;&amp;nbsp; /* Wait for received character */&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((SCISR1 &amp;amp; 0x0F) != 0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTA=1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB=0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 03:42:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192197#M7505</guid>
      <dc:creator>Sinky</dc:creator>
      <dc:date>2008-02-21T03:42:07Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192198#M7506</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Well there is FLASH 32K to be exact.&lt;BR /&gt;&lt;BR /&gt;In your project, find the PRM file and post that&lt;BR /&gt;Look in the files tab under PRM.&lt;BR /&gt;This file controls where things get&amp;nbsp; put.&lt;BR /&gt;&lt;BR /&gt;BTW In your&amp;nbsp; program, it will stop sending because it is waiting to receive a character, and it never will since you unplugged the cable.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 04:12:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192198#M7506</guid>
      <dc:creator>JimDon</dc:creator>
      <dc:date>2008-02-21T04:12:01Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192199#M7507</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;The initialization of the registers you have is confusing.&amp;nbsp; You have set the RSRC bit of SCICR1 as though you are doing a loopback test but you don't have the LOOPS bit set.&amp;nbsp; Also, you have enabled all SCI interrupts by setting the upper nibble of SCICR2 to 0xF but you seem to be polling the status registers in your forever while loop.&amp;nbsp; What exactly did you want to test with this program?&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 04:49:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192199#M7507</guid>
      <dc:creator>allawtterb</dc:creator>
      <dc:date>2008-02-21T04:49:45Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192200#M7508</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;I have fixed the registers to what they should be, I was just trying to implement a simple SCI at this point.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;void main (void) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIBDH = 0x00;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIBDL = 0x34;&amp;nbsp;&amp;nbsp;&amp;nbsp;//baud of 9600&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCICR1 = 0x00;&amp;nbsp;&amp;nbsp; //8 bits,&amp;nbsp; no parity */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCICR2 = 0x0C;&amp;nbsp; //Enable transmitter and receiver&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; Transmission&lt;/DIV&gt;&lt;DIV&gt;while(1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCIDRL = 0x29;&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; //send the bit sequence&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((SCISR1 &amp;amp; 0x80) == 0) ;&amp;nbsp;&amp;nbsp; // Wait for transmission buffer to be empty(TDRE)&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; Reception&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while ((SCISR1 &amp;amp; 0x20) == 0) ;&amp;nbsp;&amp;nbsp; /* Wait for received&amp;nbsp;sequence */&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((SCISR1 &amp;amp; 0x0F) != 0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTA=1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB=0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The HCS12_Serial_Monitor PRM linker file is:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;/* This is a linker parameter file for the MC9S12C32 */&lt;BR /&gt;NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */&lt;/DIV&gt;&lt;DIV&gt;SEGMENTS /* here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM = READ_WRITE 0x3800 TO 0x3FFF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* unbanked FLASH ROM */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_4000 = READ_ONLY&amp;nbsp; 0x4000 TO 0x7FFF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_C000 = READ_ONLY&amp;nbsp; 0xC000 TO 0xF77F;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* banked FLASH ROM */&lt;BR /&gt;/*&amp;nbsp; PAGE_3E = READ_ONLY&amp;nbsp; 0x3E8000 TO 0x3EBFFF; not used: equivalent to ROM_4000 */&lt;BR /&gt;/*&amp;nbsp; PAGE_3F = READ_ONLY&amp;nbsp; 0x3F8000 TO 0x3FBFFF; not used: equivalent to ROM_C000 */&lt;BR /&gt;&amp;nbsp; //OSVECTORS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp; 0xFF8A TO 0xFFFF;&amp;nbsp; /* OSEK interrupt vectors (use your vector.o) */&lt;BR /&gt;END&lt;/DIV&gt;&lt;DIV&gt;PLACEMENT /* here all predefined and user segments are placed into the SEGMENTS defined above. */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _PRESTART,&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; /* Used in HIWARE format: jump to _Startup at the code start */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; STARTUP,&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; /* startup data structures */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_VAR,&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; /* constant variables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; STRINGS,&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; /* string literals */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; VIRTUAL_TABLE_SEGMENT,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* C++ virtual table segment */&lt;BR /&gt;&amp;nbsp; //.ostext,&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; /* OSEK */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NON_BANKED,&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; /* runtime routines which must not be banked */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_ROM,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; COPY&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; /* copy down information: how to initialize variables */&lt;BR /&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* in case you want to use ROM_4000 here as well, make sure&lt;BR /&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; that all files (incl. library files) are compiled with the&lt;BR /&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; option: -OnB=b */&lt;BR /&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; ROM_C000/*, ROM_4000*/;&lt;BR /&gt;&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;&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;&lt;BR /&gt;&amp;nbsp; //.stackstart,&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; /* eventually used for OSEK kernel awareness: Main-Stack Start */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSTACK,&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; /* allocate stack first to avoid overwriting variables on overflow */&lt;BR /&gt;&amp;nbsp; //.stackend,&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; /* eventually used for OSEK kernel awareness: Main-Stack End */&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; INTO&amp;nbsp; RAM;&lt;BR /&gt;&amp;nbsp; //.vectors&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 OSVECTORS; /* OSEK */&lt;BR /&gt;END&lt;/DIV&gt;&lt;DIV&gt;ENTRIES /* keep the following unreferenced variables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* OSEK: always allocate the vector table and all dependent objects */&lt;BR /&gt;&amp;nbsp; //_vectab OsBuildNumber _OsOrtiStackStart _OsOrtiStart&lt;BR /&gt;END&lt;/DIV&gt;&lt;DIV&gt;STACKSIZE 0x100&lt;/DIV&gt;&lt;DIV&gt;VECTOR 0 _Startup /* reset vector: this is the default entry point for a C/C++ application. */&lt;BR /&gt;//VECTOR 0 Entry&amp;nbsp; /* reset vector: this is the default entry point for an Assembly application. */&lt;BR /&gt;//INIT Entry&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* for assembly applications: that this is as well the initialization entry point */&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I have unplugged the serial cable that is coming from the computer but there is still a transmission coming to the microcontroller via pin 7 in the bottom of the microcontroller.&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 05:06:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192200#M7508</guid>
      <dc:creator>Sinky</dc:creator>
      <dc:date>2008-02-21T05:06:00Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192201#M7509</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;You need to read the SCIDRL after you receive a&amp;nbsp;byte to clear the receive data register full flag.&amp;nbsp; Otherwise, once you receive one&amp;nbsp;byte your microcontroller will loop forever sending 0x29 because this flag is never cleared.&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Once you have changed this, your code should send an 0x29 on startup then wait for a byte to be sent back.&amp;nbsp; Every time it receives a byte it will send a 0x29 back&amp;nbsp;(which will show up as a ')' if you are monitoring for ASCII data).&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 05:30:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192201#M7509</guid>
      <dc:creator>allawtterb</dc:creator>
      <dc:date>2008-02-21T05:30:22Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192202#M7510</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;DIV&gt;Do you mean that at the end of the reception section i should input the line SCIDRL; to simply read the register to reset it? Or would writing 0x00 into the SCIDRL register to clear it at the end of the transmission section of code work?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Why would this wait for a byte to be sent back before it continues? Would it not just continue transmitting as long as the receive data register full flag is not set therefore transmitting 0x29 repeatedly until the flag is set?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Sorry i am pretty new to this.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 17:07:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192202#M7510</guid>
      <dc:creator>Sinky</dc:creator>
      <dc:date>2008-02-21T17:07:52Z</dc:date>
    </item>
    <item>
      <title>Re: HCS1232C memory problems</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192203#M7511</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;BLOCKQUOTE&gt;&lt;DIV&gt;&lt;HR /&gt;Sinky wrote:&lt;BR /&gt;&lt;DIV&gt;&lt;DIV&gt;Why would this wait for a byte to be sent back before it continues? Would it not just continue transmitting as long as the receive data register full flag is not set therefore transmitting 0x29 repeatedly until the flag is set?&lt;/DIV&gt;&lt;DIV&gt;&lt;HR /&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;DIV&gt;Because of this line:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;while ((SCISR1 &amp;amp; 0x20) == 0) ;&amp;nbsp;&amp;nbsp; /* Wait for received character */&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;This line waits until the RDRF flag is set.&amp;nbsp; Take a look at the datasheet for your microcontroller(link below), Page 391 and the description of the RDRF flag.&amp;nbsp; It explains how it is set and how to clear this flag.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC9S12C128V1.pdf?pspll=1" rel="nofollow" target="_blank"&gt;http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC9S12C128V1.pdf?pspll=1&lt;/A&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Feb 2008 22:53:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/HCS1232C-memory-problems/m-p/192203#M7511</guid>
      <dc:creator>allawtterb</dc:creator>
      <dc:date>2008-02-21T22:53:16Z</dc:date>
    </item>
  </channel>
</rss>

