<?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>Kinetis Software Development KitのトピックRe: SAI for multi-channel PCM</title>
    <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/SAI-for-multi-channel-PCM/m-p/455650#M3201</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, MADEng,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Firstly, I think the SAI module can meet your requirement to use 32 slots, the word length is 8 bits, the bit clock output frequency is 2.048MHz.&lt;/P&gt;&lt;P&gt;I do not suggest you call SDK function which will initialize a SAI structure and call an init function. I suggest you write the SAI registers directly, the method is straightforward, and easy to implement.&lt;/P&gt;&lt;P&gt;I attach an example of SAI, but you have to modify it.&lt;/P&gt;&lt;P&gt;If you do want to develop code based on SDK or have issue to modify the example code, pls update the ticket.&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 12 May 2015 03:29:03 GMT</pubDate>
    <dc:creator>xiangjun_rong</dc:creator>
    <dc:date>2015-05-12T03:29:03Z</dc:date>
    <item>
      <title>SAI for multi-channel PCM</title>
      <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/SAI-for-multi-channel-PCM/m-p/455649#M3200</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We are trying to configure the I2S or now the SAI SDK driver on a 24F for 8 bit voice audio, with a bit clock of 2.048Mhz, a frame rate of 8kHz, and the ability to accept 32 channels (slots). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After trolling through countless app notes, I have come initialization code below.&amp;nbsp; However, I am not aware of a straight forward approach without using the the codec or example in the SAI demo.&amp;nbsp; Our application does not require high audio quality, dsp or fancy filtering .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In particular, for protocols beyond I2S, ie more channels than just 2, I am stuck on the configuration procedure.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Initialize config structure.&lt;/P&gt;&lt;P&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; sai_user_config_t&amp;nbsp; tx_config;&lt;/P&gt;&lt;P&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; tx_config.channel = 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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; / *!&amp;lt; Which FIFO is used to transfer. */&lt;/P&gt;&lt;P&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; tx_config.slave_master = kSaiMaster;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*!&amp;lt; Master (generates own clock) or slave (uses extern clk) .&lt;/P&gt;&lt;P&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; tx_config.sync_mode = kSaiModeSync;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*!&amp;lt; Synchronous or asynchronous. */&lt;/P&gt;&lt;P&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; tx_config.protocol =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ??? - not I2S&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*!&amp;lt; I2S left, I2S right or I2S type. */&lt;/P&gt;&lt;P&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; tx_config.bclk_source = kSaiBclkSourceMclkDiv;&lt;/P&gt;&lt;P&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; tx_config.mclk_source = kSaiMclkSourceSysclk;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*!&amp;lt; Master clock source. */&lt;/P&gt;&lt;P&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; tx_config.mclk_divide_enable = true;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*!&amp;lt; Enable the divide of master clock to generate bit clock. */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Format of audio data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sai_data_format_t sai_tele_audio_config; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sai_tele_audio_config.sample_rate = 8000U; /*!&amp;lt; Sample rate of the PCM file */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sai_tele_audio_config.mclk = 256 * sai_tele_audio_config.sample_rate ; /*!&amp;lt; Master clock frequency */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sai_tele_audio_config.bits = 8U; /*!&amp;lt; How many bits in a word */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sai_tele_audio_config.mono_streo = kSaiStreo;//&amp;nbsp; ??? Is this just 0x1F for 32 channels/slots?&amp;nbsp;&amp;nbsp; /*!&amp;lt; How many word in a frame */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;Many thanks in advance for advice&amp;nbsp; on the above setup procedure.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333330154419px;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 Apr 2015 20:42:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/SAI-for-multi-channel-PCM/m-p/455649#M3200</guid>
      <dc:creator>MADEng</dc:creator>
      <dc:date>2015-04-29T20:42:30Z</dc:date>
    </item>
    <item>
      <title>Re: SAI for multi-channel PCM</title>
      <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/SAI-for-multi-channel-PCM/m-p/455650#M3201</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, MADEng,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Firstly, I think the SAI module can meet your requirement to use 32 slots, the word length is 8 bits, the bit clock output frequency is 2.048MHz.&lt;/P&gt;&lt;P&gt;I do not suggest you call SDK function which will initialize a SAI structure and call an init function. I suggest you write the SAI registers directly, the method is straightforward, and easy to implement.&lt;/P&gt;&lt;P&gt;I attach an example of SAI, but you have to modify it.&lt;/P&gt;&lt;P&gt;If you do want to develop code based on SDK or have issue to modify the example code, pls update the ticket.&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 May 2015 03:29:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/SAI-for-multi-channel-PCM/m-p/455650#M3201</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2015-05-12T03:29:03Z</dc:date>
    </item>
  </channel>
</rss>

