<?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 One question about FlexRay tx null-frame in S12 / MagniV Microcontrollers</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/One-question-about-FlexRay-tx-null-frame/m-p/1933481#M20102</link>
    <description>&lt;P&gt;hi everyone!&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; I have successfully implemented the sending and receiving of felxray messages. I want to tx null-frame, but I have not been able to achieve this function. I have read the MC9S12XF512 Reference Manual, and set the CMT register to 0 according to the rules. However, I used the Flexray bus monitoring tool to observe the frame type and found that it is still a data-frame, not a null-frame. I want to ask how to modify a static frame single cache message to null frame?&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; If there is a code example to send flexray null frame messages using MC9S12XF, I would be extremely grateful.&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;following&amp;nbsp;is the code I modified:&lt;/P&gt;&lt;DIV&gt;void Fr_clear_MB_interrupt_flag(uint8 Fr_buffer_idx)&lt;/DIV&gt;&lt;DIV&gt;{&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; volatile uint16 temp_value_1 = 0;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Temporary variable used for bit operation&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; volatile uint16 Fr_MB_registers_offset_add_temp; // Temporary offset adress of message buffer registers&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Temporary offset address of MB registers&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; Fr_MB_registers_offset_add_temp = Fr_buffer_idx * 4;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Clear Transmit Buffer Interrupt Flag&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Read MBCCSRn and select only necessary bits&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; temp_value_1 = (Fr_CC_reg_ptr[FrMBCCSR0 + Fr_MB_registers_offset_add_temp] &amp;amp; 0xF900);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; temp_value_1 |= FrMBCCSR_MBIF;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // Set MBIF flag - clear TX MB interrupt flag&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; /* change MBCCSRn.CMT to 0 */&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;temp_value_1 &amp;amp;= (~FrMBCCSR_CMT); &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; Fr_CC_reg_ptr[FrMBCCSR0 + Fr_MB_registers_offset_add_temp] = temp_value_1;&amp;nbsp; // Clear Transmit Buffer Interrupt Flag&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="clipbord_1723791287659.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/293588i4CFA0E3BDFBDF381/image-size/large?v=v2&amp;amp;px=999" role="button" title="clipbord_1723791287659.png" alt="clipbord_1723791287659.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 16 Aug 2024 07:15:49 GMT</pubDate>
    <dc:creator>tangchao</dc:creator>
    <dc:date>2024-08-16T07:15:49Z</dc:date>
    <item>
      <title>One question about FlexRay tx null-frame</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/One-question-about-FlexRay-tx-null-frame/m-p/1933481#M20102</link>
      <description>&lt;P&gt;hi everyone!&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; I have successfully implemented the sending and receiving of felxray messages. I want to tx null-frame, but I have not been able to achieve this function. I have read the MC9S12XF512 Reference Manual, and set the CMT register to 0 according to the rules. However, I used the Flexray bus monitoring tool to observe the frame type and found that it is still a data-frame, not a null-frame. I want to ask how to modify a static frame single cache message to null frame?&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; If there is a code example to send flexray null frame messages using MC9S12XF, I would be extremely grateful.&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;following&amp;nbsp;is the code I modified:&lt;/P&gt;&lt;DIV&gt;void Fr_clear_MB_interrupt_flag(uint8 Fr_buffer_idx)&lt;/DIV&gt;&lt;DIV&gt;{&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; volatile uint16 temp_value_1 = 0;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Temporary variable used for bit operation&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; volatile uint16 Fr_MB_registers_offset_add_temp; // Temporary offset adress of message buffer registers&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Temporary offset address of MB registers&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; Fr_MB_registers_offset_add_temp = Fr_buffer_idx * 4;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Clear Transmit Buffer Interrupt Flag&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; // Read MBCCSRn and select only necessary bits&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; temp_value_1 = (Fr_CC_reg_ptr[FrMBCCSR0 + Fr_MB_registers_offset_add_temp] &amp;amp; 0xF900);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; temp_value_1 |= FrMBCCSR_MBIF;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // Set MBIF flag - clear TX MB interrupt flag&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; /* change MBCCSRn.CMT to 0 */&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;temp_value_1 &amp;amp;= (~FrMBCCSR_CMT); &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; Fr_CC_reg_ptr[FrMBCCSR0 + Fr_MB_registers_offset_add_temp] = temp_value_1;&amp;nbsp; // Clear Transmit Buffer Interrupt Flag&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="clipbord_1723791287659.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/293588i4CFA0E3BDFBDF381/image-size/large?v=v2&amp;amp;px=999" role="button" title="clipbord_1723791287659.png" alt="clipbord_1723791287659.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Aug 2024 07:15:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/One-question-about-FlexRay-tx-null-frame/m-p/1933481#M20102</guid>
      <dc:creator>tangchao</dc:creator>
      <dc:date>2024-08-16T07:15:49Z</dc:date>
    </item>
  </channel>
</rss>

