jinglixixi 发表于 2024-1-19 00:47

【SoC 6 BLE原型开发板】+ 串口通信应用篇

本帖最后由 jinglixixi 于 2024-1-19 00:54 编辑

<p>上次参数例程中的串口通信程序,它可以实现数据的收发处理。</p>

<p>近于使用串口的设备及功能模块有许多,这次就将其用在MP3功能模块的控制上。</p>

<p> &nbsp;</p>

<p>图1&nbsp; MP3功能模块</p>

<p>&nbsp;</p>

<p>由于PSoC Creator不像大多数IDE那样具有上一次所用工程的记忆性,因此需选取&ldquo;Open Existing Project&rdquo;来打开上一次所使用的例程,见图2所示。</p>

<p> &nbsp;</p>

<p>图2 选取已有项目</p>

<p>在所选工程后,其界面如图3所示。</p>

<p> &nbsp;</p>

<p>图3 打开项目</p>

<p>由图3可知,串口使用的接收引脚为P5.0,使用的发送引脚为P5.1。</p>

<p>此外,由图4可知该串口所设置的波特率为115200 bps。</p>

<p align="left"> &nbsp;</p>

<p>图4串口通信参数</p>

<p>&nbsp;</p>

<p align="left">由于MP3功能模块所使用的波特率为9600 bps,因此需将程序中的波特率修改为9600 bps。</p>

<p align="left">此外,由于控制MP3功能模块的指令要占10个字节,为便于控制便将其存入数组中。</p>

<p align="left">存放指令的数字其格式如下:</p>

<p>uint8_tcmd3[] = {0X7E, 0xFF, 0x06, 0X03, 00, 00, 01, 0xFE, 0xF7, 0XEF}; &nbsp;//*play index</p>

<p>uint8_tcmd6[] = {0X7E, 0xFF, 0x06, 0X06, 00, 00, 10, 0xFE, 0xE5, 0XEF}; &nbsp;//*set&nbsp; Volume</p>

<p align="left">实现指令控制MP3功能模块播放指定音乐的程序为:</p>

<pre>
<code class="language-cpp">int main(void)
{
uint32_tread_data;
cy_en_scb_uart_status_tinitstatus;
uint8_t i;
Cy_GPIO_Write(RED_LED_ERROR_0_PORT, RED_LED_ERROR_0_NUM, LED_OFF);
initstatus = Cy_SCB_UART_Init(UART_HW, &amp;UART_config, &amp;UART_context);
if(initstatus!=CY_SCB_UART_SUCCESS)
{
         handle_error();
}
Cy_SCB_UART_Enable(UART_HW);
setVolume(18);
for(i=0;i&lt;10;i++)
{
         Cy_SCB_UART_Put(UART_HW, cmd6);   // 设置音量
}
for (;;)
{
        if (0UL != Cy_SCB_UART_GetNumInRxFifo(UART_HW))
        {
            read_data = Cy_SCB_UART_Get(UART_HW);
            playn(read_data);
            for(i=0;i&lt;10;i++)
            {
                  Cy_SCB_UART_Put(UART_HW, cmd3);  // 播放指定音乐
            }
        }
}
}</code></pre>

<p align="left">经程序下载,其测试效果如图5至图7所示,说明输出指令正确。</p>

<p align="left"> &nbsp;</p>

<p align="left">图5 设置音量</p>

<p align="left">在指定播放第一首后,其发出的播放指令如图6所示。</p>

<p align="left"> &nbsp;</p>

<p align="left">图6 播放第一首</p>

<p align="left">若指定播放第二首,则发出的播放指令如图7所示。</p>

<p align="left"> &nbsp;</p>

<p align="left">图7 播放第二首</p>

<p align="left">接下来要做的就是实际验证,为此要将MP3功能模块的RX引脚连接到P5.1,其实物连接见图9所示。</p>

<p align="left"> &nbsp;</p>

<p align="left">图8 开发板引脚排列</p>

<p align="left"> &nbsp;</p>

<p align="left">图9 实物连接</p>

<p align="left">&nbsp;</p>

<p>演示视频:</p>

<p>10a38341b1ccfb54a0efdaab5609a0b1<br />
&nbsp;</p>
页: [1]
查看完整版本: 【SoC 6 BLE原型开发板】+ 串口通信应用篇