0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于MM32F5270的I2S音頻播放

jf_pJlTbmA9 ? 來(lái)源:瑞薩MCU小百科 ? 作者:瑞薩MCU小百科 ? 2023-10-30 17:13 ? 次閱讀

MM32F5270 系列控制器支持 I2S 總線(xiàn)接口,本章節(jié)在接下來(lái)會(huì)對(duì) MM32F5270 I2S進(jìn)行介紹,并使用 MM32F5270 和 CS4344 芯片進(jìn)行 I2S 通信來(lái)演示播放一段聲音。

I2S 簡(jiǎn)介

I2S ( Inter—IC Sound ) 總線(xiàn)是飛利浦公司為數(shù)字音頻設(shè)備之間的音頻數(shù)據(jù)傳輸而制定的一種總線(xiàn)標(biāo)準(zhǔn),該總線(xiàn)專(zhuān)責(zé)于音頻設(shè)備之間的數(shù)據(jù)傳輸,廣泛應(yīng)用于各種多媒體系統(tǒng)。它采用了沿獨(dú)立的導(dǎo)線(xiàn)傳輸時(shí)鐘與數(shù)據(jù)信號(hào)的設(shè)計(jì),通過(guò)將數(shù)據(jù)和時(shí)鐘信號(hào)分離,避免了因時(shí)差誘發(fā)的失真,為用戶(hù)節(jié)省了購(gòu)買(mǎi)抵抗音頻抖動(dòng)的專(zhuān)業(yè)設(shè)備的費(fèi)用。在飛利浦公司的 I2S 標(biāo)準(zhǔn)中,既規(guī)定了硬件接口規(guī)范,也規(guī)定了數(shù)字音頻數(shù)據(jù)的格式。

在 MM32F5270 中,SPI 與 I2S 共用引腳。在 I2S 的描述中,支持半雙工通信,也支持全雙工模式。I2S 與 SPI 區(qū)別在于,I2S 主模式的控制邏輯使用獨(dú)立的時(shí)鐘分頻處理單元。在半雙工模式下,可使用 MCK 引腳輸出驅(qū)動(dòng)時(shí)鐘,用于驅(qū)動(dòng)外部音頻組件。在全雙工模式下,為了能同時(shí)進(jìn)行數(shù)據(jù)的收發(fā),MCK 驅(qū)動(dòng)時(shí)鐘只能從專(zhuān)用的 MCK 功能引腳輸出。I2S 的功能框圖如圖 1 所示,包括時(shí)鐘單元,寄存器控制單元,主從模式控制單元等。

wKgaomUD3a6ActtQAAGSyMNl8oo423.png 圖1. I2S 功能框圖

MM32F5270 中 I2S 主要特征

● 支持半雙工通信(僅發(fā)射機(jī)或接收機(jī))和全雙工通信(SD,extSD 的數(shù)據(jù)方向根據(jù)主/從模式配置決定)兩種通信方式

● 9 位可編程線(xiàn)性預(yù)分頻器,以達(dá)到精確的音頻采樣頻率( 8KHz 到 192KHz)

● 數(shù)據(jù)幀格式可以是 16 位、 24 位或 32 位

● 數(shù)據(jù)包幀固定為 16 位(16 位有效數(shù)據(jù))或 32 位(16 位、 24 位、 32 位有效數(shù)據(jù))

● 可編程時(shí)鐘極性(穩(wěn)定狀態(tài))

● 發(fā)射模式下的下溢標(biāo)志(僅從機(jī)),接收模式下的上溢標(biāo)志(主和從機(jī))和接收/發(fā)射模式下的幀錯(cuò)誤標(biāo)志(僅從機(jī))

● 用于傳輸和接收的 32 位寄存器為兩個(gè)聲道分時(shí)復(fù)用

● 支持 I2S 協(xié)議

? 飛利浦標(biāo)準(zhǔn)

? MSB 對(duì)齊標(biāo)準(zhǔn)(左對(duì)齊)

? LSB 對(duì)齊標(biāo)準(zhǔn)(右對(duì)齊)

? PCM 標(biāo)準(zhǔn)(在 16 位信道幀上具有短幀和長(zhǎng)幀同步或擴(kuò)展到 32 位信道幀的 16 位數(shù)據(jù)幀)

● 數(shù)據(jù)方向始終是 MSB 優(yōu)先

DMA 傳輸能力

● 可配置輸出 MCLK 來(lái)驅(qū)動(dòng)外部音頻組件,比率固定在 256× FS(其中 FS 為音頻采樣頻率)

I2S 信號(hào)接口

I2S 和 SPI 共用三個(gè)公共管腳:

● 串行時(shí)鐘 CK

映射在 SCK 引腳上,也叫位時(shí)鐘 BCLK,是主模式下的串行時(shí)鐘輸出以及從機(jī)模式下的串行時(shí)鐘輸入。SCLK 頻率 = 2 x 采樣頻率 x 采樣位數(shù)

● 幀時(shí)鐘 WS

映射在 NSS 引腳上,是主模式下的串行時(shí)鐘輸出以及從機(jī)模式下的串行時(shí)鐘輸入。用于切換左右聲道,LRCK 頻率 = 采樣頻率

● 串行數(shù)據(jù) SD

映射在 MOSI 管腳上,二進(jìn)制補(bǔ)碼表示的音頻數(shù)據(jù),用于發(fā)送或接收兩次多路數(shù)據(jù)通道(僅在半雙工模式下)。

● 當(dāng)某些外部設(shè)備需要主時(shí)鐘輸入時(shí),可以使用一個(gè)附加的管腳輸出時(shí)鐘到音頻設(shè)備

● 主時(shí)鐘 MCLK

映射在 MISO 引腳或?qū)S?MCK 引腳上,當(dāng) I2S 配置為主模式時(shí)使用此時(shí)鐘。MCLK 頻率 = 256 x 采樣頻率 Fs

● I2S 引腳信號(hào)如圖 2 所示。

wKgaomUD3a-Ad28hAANfi7UKZ1M596.png 圖2. I2S 引腳信號(hào)

數(shù)據(jù)格式

三線(xiàn)總線(xiàn)處理音頻數(shù)據(jù),必須經(jīng)過(guò)分時(shí)復(fù)用兩個(gè)聲道:右聲道和左聲道。因?yàn)橹挥幸粋€(gè) 32 位寄存器用于傳輸或接收,所以軟件應(yīng)依次配置寄存器 TXREG 為各聲道的數(shù)據(jù),或依次讀取寄存器 RXREG 為各聲道的數(shù)據(jù)。按照 I2S 協(xié)議,總是先發(fā)送左聲道,然后發(fā)送右聲道。

數(shù)據(jù)格式可以采用以下格式進(jìn)行發(fā)送:

● 16 位數(shù)據(jù)打包在 16 位幀中

● 16 位數(shù)據(jù)打包在 32 位幀中

● 24 位數(shù)據(jù)打包在 32 位幀中

● 32 位數(shù)據(jù)打包在 32 位幀中

當(dāng)使用 32 位幀上發(fā)送 16 位數(shù)據(jù)時(shí),前 16 位(MSB)是有效的位,16 位 LSB 制為 0,無(wú)需任何軟件操作,通過(guò)硬件實(shí)現(xiàn),其他格式相似。

通信標(biāo)準(zhǔn)

I2S 接口支持四種音頻標(biāo)準(zhǔn),通過(guò)配置寄存器 SPI_I2S_I2SCFGR 中的 I2SSTD[1:0]、PCMSYNC 位進(jìn)行切換;數(shù)據(jù)格式則通過(guò)配置 DATLEN[1:0]、CHLEN 來(lái)進(jìn)行選擇。對(duì)于所有通信標(biāo)準(zhǔn)及數(shù)據(jù)格式,總是先發(fā)送最高位(MSB 優(yōu)先)。

● 飛利浦標(biāo)準(zhǔn)

對(duì)于飛利浦標(biāo)準(zhǔn),WS 信號(hào)用于指示正在傳輸?shù)穆暤?。發(fā)射器在 CK 的下降沿鎖存數(shù)據(jù),接收器并在 CK 的上升讀取數(shù)據(jù)。WS 信號(hào)也在 CK 的下降沿被鎖定。對(duì)于這種標(biāo)準(zhǔn) I2S 格式的信號(hào),無(wú)論有多少位有效數(shù)據(jù),數(shù)據(jù)的最高位總是出現(xiàn)在 WS 變化(也就是一幀開(kāi)始)后的第 2 個(gè) CK 脈沖處,如圖 3 所示。

wKgZomUD3bKAKdL1AADz5zitP8Q211.png 圖3. 飛利浦標(biāo)準(zhǔn)示意圖

● MSB 對(duì)齊標(biāo)準(zhǔn)

對(duì)于 MSB 對(duì)齊標(biāo)準(zhǔn),第一個(gè)數(shù)據(jù)在 WS 變化后的第一個(gè)沿有效,如圖 4 所示。

wKgZomUD3bOACko_AAEoZUsLWVo322.png 圖4. MSB 對(duì)齊標(biāo)準(zhǔn)示意圖

● LSB 對(duì)齊標(biāo)準(zhǔn)

對(duì)于 LSB 對(duì)齊標(biāo)準(zhǔn),每個(gè)數(shù)據(jù)包幀的最低有效位總(LSB 位)是出現(xiàn)在 WS 變化前的 1 個(gè) CK 脈沖周期處,如圖 5 所示。

wKgZomUD3bSAY4f9AAEEY33ZhHE516.png 圖5. LSB 對(duì)齊標(biāo)準(zhǔn)示意圖

● PCM 標(biāo)準(zhǔn)

對(duì)于 PCM 標(biāo)準(zhǔn),不需要使用聲道信息。PCM 有兩個(gè)模式:短幀模式和長(zhǎng)幀模式,通過(guò)配置SPI_I2S_I2SCFGR 寄存器的 PCMSYNC 位進(jìn)行切換。在 PCM 模式下,輸出信號(hào)(WS, SD)在 CK 信號(hào)的上升沿進(jìn)行采樣。輸入信號(hào)(WS, SD)在 CK 下降沿被捕獲。注意在主模式下, CK 和 WS 被配置為輸出,如圖 6 所示。

wKgaomUD3bWAfZB7AADhaxkSFQ8173.png 圖6. PCM 對(duì)齊標(biāo)準(zhǔn)示意圖

I2S 配置

I2S 的配置主要包括主從模式選擇,時(shí)鐘極性,全雙工半雙工模式選擇,采樣頻率和通信標(biāo)準(zhǔn)的配置,從而進(jìn)行數(shù)據(jù)傳輸。

主模式

I2S 功能的主模式下,選擇全雙工工作時(shí),SD 引腳作為主機(jī)發(fā)送接口,extSD 作為主機(jī)接收接口,SCK 和 WS作為主機(jī)的輸出信號(hào),同時(shí) MCK 向外部提供可選的驅(qū)動(dòng)時(shí)鐘(配置 SPI_I2S_I2SCFGR.MCKOE 位為 ‘1’ 使能 MCK 輸出),如圖 7 所示。

wKgaomUD3beAKu45AADWcrg5oGU391.png 圖7. I2S 主模式全雙工通信

基于 MM32F5270 的聲音播放實(shí)驗(yàn)

CS4344 芯片是實(shí)現(xiàn)本次實(shí)驗(yàn)功能的重要器件之一。CS4344 是一種立體聲音頻數(shù)模轉(zhuǎn)換器 (DAC) ,可使用單個(gè) +3.3 V 或 +5 V 電源,僅需要最小的支持電路。該系列線(xiàn)性模擬低通濾波器和自動(dòng)速度模式檢測(cè),當(dāng)自動(dòng)選擇 2 kHz 和 200 kHz 之間的采樣率,使用采樣率和主時(shí)鐘速率方法。

本實(shí)驗(yàn)的基本原理是 MM32F3270 讀取正弦波采樣計(jì)算出的左右聲道的數(shù)組數(shù)據(jù),通過(guò) I2S 接口將 PCM 信號(hào)傳輸給 CS4344,再經(jīng)過(guò) TS4871(音頻功率放大器)連接到耳機(jī)接口,可以接入耳機(jī)等音頻播放裝置。

硬件設(shè)計(jì)

如圖 8-9 是 PLUS-F5270 的 I2S 電路部分,完整原理圖可以通過(guò)官網(wǎng)下載。其中,引腳信號(hào)對(duì)應(yīng)分別為:

? I2S2_SD 對(duì)應(yīng)于引腳 E6

? I2S2_CK 對(duì)應(yīng)于引腳 D3

? I2S2_WS 對(duì)應(yīng)于引腳 E4

? I2S2_MCK 對(duì)應(yīng)于引腳 E5

wKgZomUD3bmADlxxAAGDC8dm8xM772.png 圖8. I2S 電路圖(1)
wKgaomUD3buARtDsAAI-hQn2YbE637.png 圖9. I2S 電路圖(2)

GPIO 初始化 BOARD_InitPins()

配置 I2S 引腳,I2S_CK 為 PD3 引腳,I2S_SD 為 PE6 引腳,I2S_WS 為 PE4 引腳,I2S_MCK 為 PE5 引腳,復(fù)用通道為 AF5 。

void BOARD_InitPins(void)
{
    /* PB7 - UART1_TX. */
    GPIO_Init_Type gpio_init;
    gpio_init.Pins  = GPIO_PIN_6;
    gpio_init.PinMode  = GPIO_PinMode_AF_PushPull; //GPIO_PinMode_AF_PushPull
    gpio_init.Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB,  gpio_init);
    GPIO_PinAFConf(GPIOB, gpio_init.Pins, GPIO_AF_7);

    /* PB6 - UART1_RX. */
    gpio_init.Pins  = GPIO_PIN_7;
    gpio_init.PinMode  = GPIO_PinMode_In_Floating; //GPIO_PinMode_In_Floating
    gpio_init.Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB,  gpio_init);
    GPIO_PinAFConf(GPIOB, gpio_init.Pins, GPIO_AF_7);

    /* PD3 - I2S_CK. */
    gpio_init.Pins  = GPIO_PIN_3;
    gpio_init.PinMode  = GPIO_PinMode_AF_PushPull; //GPIO_PinMode_In_PushPull
    gpio_init.Speed = GPIO_Speed_10MHz;
    GPIO_Init(GPIOD,  gpio_init);
    GPIO_PinAFConf(GPIOD, gpio_init.Pins, GPIO_AF_5);

    /* PE6 - I2S_SD. */
    gpio_init.Pins  = GPIO_PIN_6;
    gpio_init.PinMode  = GPIO_PinMode_AF_PushPull; //GPIO_PinMode_In_PushPull
    gpio_init.Speed = GPIO_Speed_10MHz;
    GPIO_Init(GPIOE,  gpio_init);
    GPIO_PinAFConf(GPIOE, gpio_init.Pins, GPIO_AF_5);

    /* PE4 - I2S_WS. */
    gpio_init.Pins  = GPIO_PIN_4;
    gpio_init.PinMode  = GPIO_PinMode_AF_PushPull; //GPIO_PinMode_In_PushPull
    gpio_init.Speed = GPIO_Speed_10MHz;
    GPIO_Init(GPIOE,  gpio_init);
    GPIO_PinAFConf(GPIOE, gpio_init.Pins, GPIO_AF_5);

    /* PE5 - I2S_MCK. */
    gpio_init.Pins  = GPIO_PIN_5;
    gpio_init.PinMode  = GPIO_PinMode_AF_PushPull; //GPIO_PinMode_In_PushPull
    gpio_init.Speed = GPIO_Speed_10MHz;
    GPIO_Init(GPIOE,  gpio_init);
    GPIO_PinAFConf(GPIOE, gpio_init.Pins, GPIO_AF_5);
}

I2S 配置初始化 app_i2s_master_init()

初始化 I2S,配置時(shí)鐘頻率、采樣率、數(shù)據(jù)長(zhǎng)度、通信協(xié)議、傳輸模式及是否使能 MCLK 。

void app_i2s_master_init(void)
{
    /* setup I2S master module. */
    I2S_Master_Init_Type i2s_master_init;

    i2s_master_init.ClockFreqHz  = BOARD_I2S_FREQ;
    i2s_master_init.SampleRate   = BOARD_I2S_SAMPLE_RATE;
    i2s_master_init.DataWidth    = BOARD_I2S_DATA_WIDTH;
    i2s_master_init.Protocol     = BOARD_I2S_PROTOCOL;
    i2s_master_init.EnableMCLK   = true;
    i2s_master_init.Polarity     = BOARD_I2S_CPOL;
    i2s_master_init.XferMode     = I2S_XferMode_TxOnly;

    I2S_InitMaster(BOARD_I2S_PORT,  i2s_master_init);

    /* enable I2S. */
    I2S_Enable(BOARD_I2S_PORT, true);
}

● Protocol

通信標(biāo)準(zhǔn)格式選擇,可選 I2S Philips 標(biāo)準(zhǔn)、左對(duì)齊標(biāo)準(zhǔn)、右對(duì)齊標(biāo)準(zhǔn)、 PCM 短幀標(biāo)準(zhǔn)或 PCM 長(zhǎng)幀標(biāo)準(zhǔn),它設(shè)定 SPI_I2S_I2SCFGR 寄存器 I2SSTD位和 PCMSYNC位的值。一般設(shè)置為 I2S Philips 標(biāo)準(zhǔn)即可。

● DataWidth

數(shù)據(jù)格式選擇,設(shè)定有效數(shù)據(jù)長(zhǎng)度和幀長(zhǎng)度,可選標(biāo)準(zhǔn) 16bit 格式、擴(kuò)展 16bit( 32bit 幀長(zhǎng)度) 格式、 24bit 格式和 32bit 格式,它設(shè)定 SPI_I2SCFGR 寄存器 DATLEN 位和CHLEN 位的值。對(duì)應(yīng) 16bit 數(shù)據(jù)長(zhǎng)度可選 16bit 或 32bit 幀長(zhǎng)度,其他都是 32bit 幀長(zhǎng)度。

● EnableMCLK

主時(shí)鐘輸出使能控制,可選使能輸出或禁止輸出,它設(shè)定 SPI_I2SPR 寄存器 MCKOE 位的值。為提高系統(tǒng)性能一般使能主時(shí)鐘輸出。

● SampleRate

采樣頻率設(shè)置,標(biāo)準(zhǔn)庫(kù)提供采樣采樣頻率選擇,分別為 4KHz、8kHz、 11kHz、12KHz、16kHz、22kHz、32kHz、44kHz、48kHz、96kHz、192kHz 以及默認(rèn) 2Hz,它設(shè)定 SPI_I2S_SPBRG 寄存器的值。

● Polarity

空閑狀態(tài)的 CK 線(xiàn)電平,可選高電平或低電平,它設(shè)定 SPI_I2S_CCTL 寄存器 CPOL位的值。一般設(shè)置為低電平即可。

左右聲道數(shù)據(jù)

采樣函數(shù) f (t) = A *sin( B*t ) , t 為采樣時(shí)間,單位: s。采樣位寬為 16bit,采樣頻率為 8 khz,系數(shù) A 為10000,B 為2000π。

/* i2s left channel xfer data. */
const int16_t sound_buf_left[SOUND_BUF_SIZE] =
{
    0, 3535, 5000, 3535, 0, -3535, -5000, -3535,
    0, 3535, 5000, 3535, 0, -3535, -5000, -3535,
};

/* i2s right channel xfer data. */
const int16_t sound_buf_right[SOUND_BUF_SIZE] =
{
    0,  3827,  7071,  9238,  10000,  9238,  7071,  3827,
    0, -3827, -7071, -9238, -10000, -9238, -7071, -3827
};

左右聲道數(shù)據(jù)傳輸

/* put data into left channel. */
void app_i2s_put_data_left(void)
{
    I2S_PutData(BOARD_I2S_PORT, (uint32_t)sound_buf_left[sound_buf_index_left]);
    sound_buf_index_left++;
    if (sound_buf_index_left >= SOUND_BUF_SIZE)
    {
        sound_buf_index_left = 0;
    }
}

/* put data into right channel. */
void app_i2s_put_data_right(void)
{
    I2S_PutData(BOARD_I2S_PORT, (uint32_t)sound_buf_right[sound_buf_index_right]);
    sound_buf_index_right++;
    if (sound_buf_index_right >= SOUND_BUF_SIZE)
    {
        sound_buf_index_right = 0;
    }
}

main() 函數(shù)

main() 函數(shù)結(jié)合上述操作,串口打印 "i2s_master_basic" ,初始化 I2S 后,將發(fā)送數(shù)組數(shù)據(jù)到左右聲道緩沖區(qū),進(jìn)行聲音播放。

int main(void)
{
    BOARD_Init();

    printf("i2s_master_basic.rn");

    app_i2s_master_init();

    while (1)
    {
        while(0u != (I2S_GetStatus(BOARD_I2S_PORT)   SPI_I2S_CSTAT_TXFULL_MASK) )
        {}

        app_i2s_put_data_left(); /* sending left channel data. */

        while(0u != (I2S_GetStatus(BOARD_I2S_PORT)   SPI_I2S_CSTAT_TXFULL_MASK) )
        {}
        app_i2s_put_data_right(); /* sending right channel data. */
    }
}

實(shí)驗(yàn)演示

本實(shí)驗(yàn)以搭載 MM32F5277E9PV 的 PLUS-F5270 開(kāi)發(fā)板為平臺(tái),其揚(yáng)聲器將會(huì)播放左聲道數(shù)據(jù),演示視頻如下:

演示1. 播放左聲道數(shù)據(jù)

音響數(shù)據(jù)的采集、處理和傳輸是多媒體技術(shù)的重要組成部分。眾多的數(shù)字音頻系統(tǒng)已經(jīng)進(jìn)入消費(fèi)市場(chǎng),例如數(shù)字音頻錄音帶、數(shù)字聲音處理器。對(duì)于設(shè)備和生產(chǎn)廠(chǎng)家來(lái)說(shuō),標(biāo)準(zhǔn)化的信息傳輸結(jié)構(gòu)可以提高系統(tǒng)的適應(yīng)性。

本文介紹了 MM32F5270 中通過(guò) I2S 和 CS4344 芯片進(jìn)行通信來(lái)演示播放一段聲音,后續(xù)將進(jìn)行 MP3 的播放,未完待續(xù)!

來(lái)源:瑞薩MCU小百科

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8254

    瀏覽量

    149943
  • 總線(xiàn)
    +關(guān)注

    關(guān)注

    10

    文章

    2817

    瀏覽量

    87697
  • 音頻播放
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    7746
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    MM32F5270平臺(tái)ADC注入通道的單周期采樣的實(shí)現(xiàn)

    MM32F5270的ADC可配置4個(gè)注入通道來(lái)擴(kuò)展轉(zhuǎn)換通道,那么可進(jìn)行轉(zhuǎn)換的通道最多可達(dá)20個(gè)。
    的頭像 發(fā)表于 06-01 17:25 ?1379次閱讀
    <b class='flag-5'>MM32F5270</b>平臺(tái)ADC注入通道的單周期采樣的實(shí)現(xiàn)

    基于MM32F5270開(kāi)發(fā)板獲取雨滴傳感器的數(shù)據(jù)相關(guān)資料介紹

    MM32F5270 微控制器厲害了,曾經(jīng)獲得2022中國(guó)IC設(shè)計(jì)成就獎(jiǎng)之年度最佳MCU,讓我們一起目睹該開(kāi)發(fā)板的真容吧?! ≡撻_(kāi)發(fā)板的集成的了:  4KB L1 I-Cache,4KB L1 D-Cache
    發(fā)表于 08-24 15:20

    一文解析MM32F5270開(kāi)發(fā)板+PWM測(cè)試與調(diào)制

    1、MM32F5270開(kāi)發(fā)板+ PWM測(cè)試與調(diào)制  PWM接口引腳  MM32F5270開(kāi)發(fā)板有引出PWM引腳給我們,我們可以直接使用就行?! ≈饕a部分如下  2.1 hal_tim.c
    發(fā)表于 09-06 11:24

    聊聊 MM32F5270是如何通過(guò)高并行度的總線(xiàn)設(shè)計(jì)實(shí)現(xiàn)系統(tǒng)吞吐率的最大化的

    基于 MM32F5270 制作一個(gè)帶顯示的音頻播放器,這是一種很常見(jiàn)的應(yīng)用場(chǎng)景,實(shí)際產(chǎn)品中所包含的功能可能是多種多樣的,這里為了簡(jiǎn)化,以如下規(guī)格要求為例:可播放 SD 卡上的
    發(fā)表于 09-06 15:06

    MM32F5270開(kāi)發(fā)板上播放TF卡WAV格式音樂(lè)

    ?! ≡?b class='flag-5'>MM32F5270中,SPI與I2S共用引腳。在I2S的描述中,支持半雙工通信,也支持全雙工模式(通過(guò)配置SPI_I2S_I2SCFGR.HDSEL 位來(lái)決定)。原作者:kin
    發(fā)表于 09-20 15:26

    103xx通過(guò)外部I2S音頻解碼器播放音頻文件

    103xx通過(guò)外部I2S音頻解碼器播放音頻文件。
    發(fā)表于 01-12 18:26 ?54次下載

    MM32F5270總線(xiàn)架構(gòu)設(shè)計(jì)

    本文介紹了MM32F5270 中所采用的多并發(fā)總線(xiàn)架構(gòu),并通過(guò)帶顯示的音頻播放器的實(shí)例說(shuō)明了該架構(gòu)在實(shí)際應(yīng)用中所能達(dá)到的吞吐率提升效果。
    的頭像 發(fā)表于 05-11 11:15 ?2056次閱讀
    <b class='flag-5'>MM32F5270</b>總線(xiàn)架構(gòu)設(shè)計(jì)

    基于MM32F5270控制器的I2S音頻播放

    MM32F5270 系列控制器支持 I2S 總線(xiàn)接口,本章節(jié)在接下來(lái)會(huì)對(duì) MM32F5270 I2S進(jìn)行介紹,并使用 MM32F5270
    的頭像 發(fā)表于 09-16 10:39 ?2044次閱讀

    MM32F5270 產(chǎn)品手冊(cè)(中文版)

    MM32F5270 產(chǎn)品手冊(cè)(中文版)
    發(fā)表于 02-23 18:45 ?0次下載
    <b class='flag-5'>MM32F5270</b> 產(chǎn)品手冊(cè)(中文版)

    MM32F5270 產(chǎn)品手冊(cè)(英文版)

    MM32F5270 產(chǎn)品手冊(cè)(英文版)
    發(fā)表于 02-23 18:45 ?0次下載
    <b class='flag-5'>MM32F5270</b> 產(chǎn)品手冊(cè)(英文版)

    MM32F5270 用戶(hù)手冊(cè)(中文版)

    MM32F5270 用戶(hù)手冊(cè)(中文版)
    發(fā)表于 02-23 18:46 ?0次下載
    <b class='flag-5'>MM32F5270</b> 用戶(hù)手冊(cè)(中文版)

    MM32F5270 用戶(hù)手冊(cè)(英文版)

    MM32F5270 用戶(hù)手冊(cè)(英文版)
    發(fā)表于 02-23 18:46 ?0次下載
    <b class='flag-5'>MM32F5270</b> 用戶(hù)手冊(cè)(英文版)

    MM32F5270 勘誤表(中文版)

    MM32F5270 勘誤表(中文版)
    發(fā)表于 02-23 18:47 ?0次下載
    <b class='flag-5'>MM32F5270</b> 勘誤表(中文版)

    MM32F5270 勘誤表(英文版)

    MM32F5270 勘誤表(英文版)
    發(fā)表于 02-23 18:48 ?0次下載
    <b class='flag-5'>MM32F5270</b> 勘誤表(英文版)

    基于MM32F3270 I2S使用

    基于MM32F3270 I2S使用
    的頭像 發(fā)表于 09-27 15:50 ?669次閱讀
    基于<b class='flag-5'>MM32F</b>3270 <b class='flag-5'>I2S</b>使用