<?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>topic Re: problem ILLEGAL_BP mc9s12xdp512 in CodeWarrior for MCU</title>
    <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203508#M7753</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;You say, for one interruption : I must do this ? What is signification of #pragma CODE_SEG DEFAULT and #pragma CODE_SEG NON_BANKED ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void interrupt 8 TOC0_ISR () {&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;#pragma CODE_SEG NON_BANKED&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&amp;nbsp; TFLG1 = TFLG1_C0F_MASK ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;BR /&gt;&amp;nbsp; buffer_empty1 = buffer_lenght - buffer_full1;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;if (buffer_empty1 == buffer_lenght) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB =0b00000100&amp;nbsp; ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sendOnCanEmpty ()&amp;nbsp;&amp;nbsp; ;&amp;nbsp; &lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp; if ( read_buffer_wheel1 &amp;lt; buffer_lenght ){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //test taille de la memoire&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 ++&amp;nbsp;&amp;nbsp;&amp;nbsp; ; //incrementation compteur lecture&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 = 0&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rebouclage memoire&amp;nbsp;&amp;nbsp; .&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;#pragma CODE_SEG DEFAULT&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;} &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 13 Dec 2012 14:20:40 GMT</pubDate>
    <dc:creator>Claire</dc:creator>
    <dc:date>2012-12-13T14:20:40Z</dc:date>
    <item>
      <title>problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203495#M7740</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I must create a programm that generate signal from bus CAN data with timer interrupt (ECT). But when I send frame (in debug) I have Illegal_bp in command windows.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I don't know how to correct this error. Can you help me ? If you have any question ask me.&lt;/P&gt;&lt;P&gt;I programm this:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;void timer_counter () {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TIOS = 0xFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; timer output compare register&lt;/P&gt;&lt;P&gt;&amp;nbsp; TCNT = 0x0000;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //timer count register&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR1 = 0x80;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //timer system control register&lt;/P&gt;&lt;P&gt;&amp;nbsp; TSCR2 = 0x05;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //timer system control register 2&lt;/P&gt;&lt;P&gt;//&amp;nbsp; TCTL1 = 0x55;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //timer control register output mode&lt;/P&gt;&lt;P&gt;&amp;nbsp; TCTL2 = 0x55;&lt;/P&gt;&lt;P&gt;&amp;nbsp; TIE = 0x0F;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //timer interupt enable&lt;/P&gt;&lt;P&gt;&amp;nbsp; TFLG1 = 0x0F;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //main timer interrupt flag&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;void interrupt 8 TOC0_ISR () {&lt;BR /&gt;&amp;nbsp; DisableInterrupts;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; TFLG1 = TFLG1_C0F_MASK ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;BR /&gt;&amp;nbsp; buffer_empty1 = buffer_lenght - buffer_full1;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;if (buffer_empty1 == buffer_lenght) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB =0b00000100&amp;nbsp; ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sendOnCanEmpty ()&amp;nbsp;&amp;nbsp; ;&amp;nbsp; &lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp; if ( read_buffer_wheel1 &amp;lt; buffer_lenght ){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //test taille de la memoire&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 ++&amp;nbsp;&amp;nbsp;&amp;nbsp; ; //incrementation compteur lecture&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 = 0&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rebouclage memoire&amp;nbsp;&amp;nbsp; .&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;/P&gt;&lt;P&gt;&amp;nbsp; EnableInterrupts ;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;} &lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;Thank you !!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Dec 2012 07:16:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203495#M7740</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-11T07:16:55Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203496#M7741</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Illegal_bp could means almost anything (any unexpected behaviour), but in most of the cases it presents unexpected interrupt.&lt;/P&gt;&lt;P&gt;I have for you few tips for you:&lt;/P&gt;&lt;OL style="list-style-type: decimal;"&gt;&lt;LI&gt;TCNT register is not writable in normal mode&lt;/LI&gt;&lt;LI&gt;You enables 4 output compare interrupts&amp;nbsp; (TC0, TC1, TC2, TC3; command TIE = 0x0F;). If you don’t have defined TC1..TC3 interrupt routines (interrupts 9..11), this will be probably root cause of your issue.&lt;/LI&gt;&lt;LI&gt;Commands DisableInterrupts; and EnableInterrupts ; inside interrupt routine is not necessary. I bit is set automatically when MCU enter into interrupt and RTI (return from interrupt) instruction restore I bit during interrupt routine leave.&lt;/LI&gt;&lt;LI&gt;Do you have enabled interrupts for CAN modules? Do you have interrupt routines for CAN interrupts?&lt;/LI&gt;&lt;LI&gt;Example code below contains Interrupt catcher. This code you can use for detection of unexpected interrupts or directly in your code for handle unexpected interrupts.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;volatile unsigned int number_of_ISR = 0;&lt;/P&gt;&lt;P&gt;volatile unsigned char sc0_data_in;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void Unimplemented_ISR(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; asm nop;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //insert breakpoint here. If the code stops here, check the "number_of_ISR"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG NON_BANKED&lt;/P&gt;&lt;P&gt;interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;…//please fill&lt;/P&gt;&lt;P&gt;interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_19&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;//interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_20&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_21&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;…//please fill&lt;/P&gt;&lt;P&gt;interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 119&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISR_119&amp;nbsp; (void)&amp;nbsp;&amp;nbsp;&amp;nbsp; {number_of_ISR = 119&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Unimplemented_ISR();}&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG DEFAULT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//==============================================================================&lt;/P&gt;&lt;P&gt;//Example of SCI0 Interrupt routine&lt;/P&gt;&lt;P&gt;//==============================================================================&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG NON_BANKED&lt;/P&gt;&lt;P&gt;interrupt 20 void SCI0_Isr(void)&lt;/P&gt;&lt;P&gt;{&amp;nbsp; &lt;/P&gt;&lt;P&gt;//your SCI routine&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG DEFAULT&lt;/P&gt;&lt;P&gt;//==============================================================================&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 14:15:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203496#M7741</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2012-12-12T14:15:58Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203497#M7742</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ok I try.&lt;/P&gt;&lt;P&gt;For the CAN I programm this :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//---------initMSCAN------------------------------------------------------&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;void initMSCAN () {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int c2=0;&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;&amp;nbsp;&amp;nbsp; int c1=0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; while (!CAN2CTL1_INITAK) {&amp;nbsp;&amp;nbsp; // tant que le module ne confirme pas le mode init&lt;/P&gt;&lt;P&gt; c1++; &lt;BR /&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp; CAN2CTL1 |= CAN2CTL1_CANE_MASK;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // activation du module CAN (inactif par défaut)&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; CAN2CTL1 &amp;amp;= (~CAN2CTL1_LISTEN_MASK);&amp;nbsp;&amp;nbsp;&amp;nbsp; // Désactivation du mode lecture seule&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; CAN2BTR0 = 0x40; // Prescaler = 1 et Synchronisation jump width = 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; CAN2BTR1 = 0xA3;&amp;nbsp;&amp;nbsp;&amp;nbsp; // TSEG1=4tq er TSEG2=3tq (voir calcul doc calcul_bit_rate.pdf v3.1)&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; //Bit 7 SAMP = 1 3 échantillon par bit &lt;BR /&gt;&amp;nbsp; CAN2IDMR0 = 0xFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //accepte tous les messages&lt;BR /&gt;&amp;nbsp; CAN2IDMR1 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR2 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR3 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR4 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR5 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR6 = 0xFF;&lt;BR /&gt;&amp;nbsp; CAN2IDMR7 = 0xFF;&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; &lt;BR /&gt;&amp;nbsp; CAN2CTL0 &amp;amp;= (~CAN2CTL0_INITRQ_MASK);&amp;nbsp;&amp;nbsp;&amp;nbsp; // demande de sortie du mode initialization&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; while (CAN2CTL1_INITAK) { //test sortie d'init&lt;/P&gt;&lt;P&gt; c2++; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; //---------------SendOnCan-------------------------------------------------&lt;BR /&gt; &lt;BR /&gt;void sendOnCan (){&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; unsigned char txbuffer;&lt;BR /&gt;&amp;nbsp; while (!CAN2TFLG){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //test tampon de libre&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; CAN2TBSEL=CAN2TFLG;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //selection du buffer ayant la plus petite adresse&lt;BR /&gt;&amp;nbsp;&amp;nbsp; txbuffer = CAN2TBSEL;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXDLR = 0x04 ;&amp;nbsp;&amp;nbsp; //Détermine la lenght de la trame de donnée.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXIDR0 = 0xD3;&amp;nbsp;&amp;nbsp; //IDE = Détermine l’identificateur du message ID recu 69E&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXIDR1 = 0xC0;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXDSR0 = buffer_full1;&amp;nbsp;&amp;nbsp; // Insertion des données que l’on souhaite transmettre.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXDSR1 = buffer_empty1&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXDSR2 = write_buffer_wheel1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAN2TXDSR3 = read_buffer_wheel1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //CAN2TXDSR7 = 0xFF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; CAN2TFLG = txbuffer;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; while ((CAN2TFLG &amp;amp; txbuffer) != txbuffer) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //attendre la fin de la transmissin&lt;BR /&gt;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;} &lt;/P&gt;&lt;P&gt;//------receiveOnCan-----------------------------------------&lt;/P&gt;&lt;P&gt;void receiveOnCan (){&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp; unsigned char lenght, index;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; DisableInterrupts;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; if (CAN2RFLG &amp;amp; CAN2RFLG_RXF_MASK) {&amp;nbsp; //message disponible&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lenght = ( CAN2RXDLR &amp;amp; 0x0F);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //prend en compte la taille max du message (message = 8 octets max)&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB = 0b00001000;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; for (index = 1 ; index &amp;lt; lenght; index++) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp; receive_data [index] = *(&amp;amp;CAN2RXDSR0 + index);&amp;nbsp; // Transfert du message vers un tampon&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; buffer1 =&amp;nbsp; write_buffer_wheel1 - read_buffer_wheel1 ;&lt;BR /&gt;&amp;nbsp; buffer2 =&amp;nbsp; buffer_lenght + buffer1 ;&lt;BR /&gt;&amp;nbsp; buffer_full1 = buffer2 % buffer_lenght;&lt;/P&gt;&lt;P&gt;//ecriture memoire roue 1 et test memoire pleine wheel1 ------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (buffer_full1 == 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB =0b00000001&amp;nbsp; ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sendOnCanFull ()&amp;nbsp;&amp;nbsp; ;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (write_buffer_wheel1&amp;lt; buffer_lenght)&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //test de la taille de la memoire&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; wheel1 [write_buffer_wheel1]= receive_data[1] + (256*receive_data[0]) ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //ecriture dans la memoire&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; write_buffer_wheel1 ++;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //incrementation du compteur ecriture&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; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; else {&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; write_buffer_wheel1 = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rebouclage de la memoire&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; wheel1 [write_buffer_wheel1]= receive_data[1] + (256*receive_data[0]) ;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; sendOnCan();&lt;/P&gt;&lt;P&gt;CAN2RFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //flag lors de la reception d'un message&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnableInterrupts; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 14:36:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203497#M7742</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-12T14:36:26Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203498#M7743</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;I suppose I have a problem in CAN config because now I have no Illegal_bp but my programm don't exit of Interrupt.&lt;/P&gt;&lt;P&gt;I think it's more easier if you see all the programm but I don't know how to join document.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 14:40:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203498#M7743</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-12T14:40:42Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203499#M7744</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try switch to "Use advanced editor" - blue text in right upper corner.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 14:54:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203499#M7744</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2012-12-12T14:54:14Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203500#M7745</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can see the document ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 14:57:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203500#M7745</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-12T14:57:55Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203501#M7746</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, I will check the code tommorow.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 15:04:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203501#M7746</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2012-12-12T15:04:26Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203502#M7747</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, thank you v&lt;SPAN style="text-decoration: underline;"&gt;ery much&lt;/SPAN&gt; !!&amp;nbsp; I try to find the solution for a week.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 15:09:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203502#M7747</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-12T15:09:02Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203503#M7748</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;void interrupt 8 TOC0_ISR () {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TFLG1 = TFLG1_C0F_MASK ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void interrupt 9 TOC1_ISR ()&amp;nbsp; {&amp;nbsp;&amp;nbsp; //adresse de la deuxième interruption périodique&lt;/P&gt;&lt;P&gt;&amp;nbsp; TFLG1 = TFLG1_C1F_MASK ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void interrupt 10&amp;nbsp; TOC2_ISR ()&amp;nbsp; {&amp;nbsp;&amp;nbsp; //adresse de la troisième interruption périodique&lt;/P&gt;&lt;P&gt; TFLG1 = &lt;SPAN style="color: #ff0000;"&gt;TFLG1_C3F_MASK&lt;/SPAN&gt; ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void interrupt 11&amp;nbsp; TOC3_ISR ()&amp;nbsp; {&amp;nbsp;&amp;nbsp; //adresse de la quatrième interruption périodique&lt;/P&gt;&lt;P&gt; TFLG1 = &lt;SPAN style="color: #ff0000;"&gt;TFLG1_C4F_MASK&lt;/SPAN&gt; ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;C2F flag is never serviced, TOC2_ISR exits and immediately reenters until COP reset occurs and you see ILLEGAL_BP&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;SPAN class="mce_paste_marker"&gt;Please, instead of using "magic" numbers 8, 9, etc, open header file for your derivative and use instead defines like VectorNumber_Vtimch0, VectorNumber_Vtimch1 etc.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 15:22:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203503#M7748</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2012-12-12T15:22:07Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203504#M7749</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes I don't see the TFLG2's error.&lt;/P&gt;&lt;P&gt;And for the header file what is signification of&amp;nbsp; VectorNumber_Vtimch0. &lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;I write&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;just like that&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;writing 8 but I don't know his signification.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Dec 2012 15:59:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203504#M7749</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-12T15:59:26Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203505#M7750</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;claire delange wrote:&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;And for the header file what is signification of&amp;nbsp; VectorNumber_Vtimch0. &lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;I write&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;just like that&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;writing 8 but I don't know his signification.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;&lt;P&gt;It is bad coding practice to use weird numbers you know today and forget tomorrow. How do I know that 8 in your case is right number for timer channel 0 vector number? I don't remember this number to find a clue why your code isn't working, I would need to open datasheet or other document to verify that your 8 is right. VectorNumber_Vtimch0 would save me some work, also will save you the same work later, when you cam back to your code few years later.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is similar with code like TIE = 0x0F;. OK if you know perfectly that 0xF stands for bits 0,1,2 and 3 set. But you could write the same like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TIE = (1&amp;lt;&amp;lt;3) | (1&amp;lt;&amp;lt;2) | (1&amp;lt;&amp;lt;1) | (1&amp;lt;&amp;lt;0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;, which compiles the same like TIE = 0x0F;&lt;/P&gt;&lt;P&gt;I don't say this ^^ is much better, but for more hard bit patterns like 0xDB, it would be much much easier to decifier what bits did you want to set. Though it doesn't matter when compiler supports binary patterns like 0b00001111, if you do smth like this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define CHARGE_CHANNEL 2&lt;/P&gt;&lt;P&gt;#define DISCHARGE_CHANNEL 4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TIE = (1&amp;lt;&amp;lt;CHARGE_CHANNEL) | (1&amp;lt;&amp;lt;DISCHARGE_CHANNEL);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.. then later you will say yourself a lot of "thank you" in case you need to swap some timer channels or do something like this. With good coding it is very easy to do such tasks. It is nightmare to do the same with code full of 0x45 0x0F 0xF0...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 09:51:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203505#M7750</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2012-12-13T09:51:40Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203506#M7751</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Interruptions don't accept VectorNumber_Vtimch0. I think (if I remenber correctly) The number decide where I save interruption.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And I prefere stay in hexa for my regsister It's easier for me. If I will must return on my programm I will must read the doc an other time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I replay my programm and I have many problem. One time I see Illegal_bp, an other time the interrpution aren't activate and an other time I stay in interruption. For the same programm. :smileycry:&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 10:08:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203506#M7751</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-13T10:08:02Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203507#M7752</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I shortly look at your code and I have for you few points:&lt;/P&gt;&lt;OL style="list-style-type: decimal;"&gt;&lt;LI&gt;Eduard has true. In TOC2_ISR you should clear flag by TFLG1_C2F_MASK and not by TFLG1_C3F_MASK. The same valid for TOC3_ISR – you should use TFLG1_C3F_MASK instead of TFLG1_C4F_MASK.&lt;/LI&gt;&lt;LI&gt;In TOC2_ISR interrupt routine you used code “TC0 = TC0 + whe...” I suppose that there should be TC2…&lt;/LI&gt;&lt;LI&gt;Main possible issue: Interrupt vectors contains only 16bit addresses, therefore all interrupt routines have to be placed in non banked memory. Please add command #pragma CODE_SEG NON_BANKED before your interrupt routines and command #pragma CODE_SEG DEFAULT at end of ISRs. Note: Better practice is hold these commands for every interrupt routine. &lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 14:11:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203507#M7752</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2012-12-13T14:11:08Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203508#M7753</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;You say, for one interruption : I must do this ? What is signification of #pragma CODE_SEG DEFAULT and #pragma CODE_SEG NON_BANKED ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void interrupt 8 TOC0_ISR () {&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;#pragma CODE_SEG NON_BANKED&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&amp;nbsp; TFLG1 = TFLG1_C0F_MASK ;&amp;nbsp;&amp;nbsp;&amp;nbsp; // rabaisse le flag de l'interruption&lt;BR /&gt;&amp;nbsp; buffer_empty1 = buffer_lenght - buffer_full1;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;if (buffer_empty1 == buffer_lenght) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB =0b00000100&amp;nbsp; ; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sendOnCanEmpty ()&amp;nbsp;&amp;nbsp; ;&amp;nbsp; &lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp; if ( read_buffer_wheel1 &amp;lt; buffer_lenght ){&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //test taille de la memoire&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 ++&amp;nbsp;&amp;nbsp;&amp;nbsp; ; //incrementation compteur lecture&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; read_buffer_wheel1 = 0&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rebouclage memoire&amp;nbsp;&amp;nbsp; .&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TC0 = TC0 + wheel1[read_buffer_wheel1] ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //lecture des donnees &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;#pragma CODE_SEG DEFAULT&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;} &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 14:20:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203508#M7753</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-13T14:20:40Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203509#M7754</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I programm like your suggestion but now the message Illegal_bp is return. I don't understand what causes this error.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 14:49:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203509#M7754</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-13T14:49:20Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203510#M7755</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This way:&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG NON_BANKED&lt;/P&gt;&lt;P&gt;void interrupt 8 TOC0_ISR () {&lt;/P&gt;&lt;P&gt;…&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;#pragma CODE_SEG DEFAULT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These commands are dedicated for linker. This way linker know where you want place your code. There are different ways how to do it, but this is simply and comfortable.&lt;/P&gt;&lt;P&gt;Similar commands: &lt;/P&gt;&lt;P&gt;#pragma DATA_SEG – for variables&lt;/P&gt;&lt;P&gt;#pragma CONST_SEG – for constants &lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Dec 2012 15:38:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203510#M7755</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2012-12-13T15:38:29Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203511#M7756</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;I corrected&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;my program&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;but the message&lt;/SPAN&gt; Illegal_bp &lt;SPAN class="hps"&gt;still appears.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Do you want&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;I'll&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;send&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;the new program ?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2012 06:37:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203511#M7756</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-14T06:37:14Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203512#M7757</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;I don't see : When I did debug, I have message "segment pragma has not handled" for the second interrupt.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2012 07:08:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203512#M7757</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-14T07:08:42Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203513#M7758</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't see (again) I 'm not comment this line&amp;nbsp; "CAN2RIER = 0x01;" in receive on CAN. This line create en error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now It's OK my program run !!&lt;/P&gt;&lt;P&gt;I just have last question : the message "illegal_bp" is corrected by #pragma CODE_SEG NON_BANKED and #pragma CODE_SEG DEFAULT ? Why ?&lt;/P&gt;&lt;P&gt;(&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;if I encounter&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;this error&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;again&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;I&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;want to be able&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;to fix it&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;without help)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2012 07:16:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203513#M7758</guid>
      <dc:creator>Claire</dc:creator>
      <dc:date>2012-12-14T07:16:55Z</dc:date>
    </item>
    <item>
      <title>Re: problem ILLEGAL_BP mc9s12xdp512</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203514#M7759</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Don't ignore linker warnings and you will be warned about missing __NON_BANKED.&lt;/P&gt;&lt;P&gt;These #pragma CODE_SEG are required to place interrupt handlers in non banked memory. On interrupts page isn't switched, vector table entry is nonbanked address, so you need to force interrupt handlers to non banked memory.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Dec 2012 10:49:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/problem-ILLEGAL-BP-mc9s12xdp512/m-p/203514#M7759</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2012-12-14T10:49:18Z</dc:date>
    </item>
  </channel>
</rss>

