久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
stm32f103RCT6硬件I2C實現科大訊飛TTS語音合成芯片XFS5152CE的通信
[打印本頁]
作者:
51hei200409
時間:
2020-4-10 10:27
標題:
stm32f103RCT6硬件I2C實現科大訊飛TTS語音合成芯片XFS5152CE的通信
折騰了半天,終于用stm32的硬件I2C實現了科大訊飛TTS語音合成芯片XFS5152CE的通信,XFS5152CE作為I2C接口的從設備,設備地址為: 0x80。為保證通訊的穩定性,XFS5152CE的I2C接口通信速度要求不高于15KHZ。由于I2C的一般速度是100KHZ,高速傳輸速率400KHZ,所有I2C的速率我設為10KZH,同時還要把占空比設第點,否則不行的。
作者:
51hei團團
時間:
2020-4-10 13:26
能分享一下代碼嗎?
作者:
51hei200409
時間:
2020-4-10 14:26
#include "i2c_tts.h"
#include "delay.h"
#include <string.h>
#define I2C_Speed 10000 //快速模式10k
#define I2C1_TTS_SLAVE_ADDRESS7 0x80 //從機地址
//XFS5152CE作為I2C接口的從設備,設備地址為: 0x80。
//為保證通訊的穩定性,XFS5152CE的I2C接口通信速度要求不高于15KHZ。
/**************************************************
*函數名稱:void I2C_TTS_GPIO_Configuration(void)
*
*入口參數:無
*
*出口參數:無
*
*功能說明:配置使用的I/ O端口引腳
***************************************************/
void I2C_TTS_GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; //配置I2C1 PB6-SCL和PB7-SDA
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //管腳頻率為50MHZ
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD; //模式為復用開漏輸出,因此兩個引腳要接上拉電阻
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
/**************************************************
*函數名稱:void I2C_TTS_Configuration(void)
*
*入口參數:無
*
*出口參數:無
*
*功能說明:I2C Configuration
***************************************************/
void I2C_TTS_Configuration(void)
{
I2C_InitTypeDef I2C_InitStructure;
//定義I2C初始化結構體I2C_InitStructure
RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1,ENABLE);
I2C_InitStructure.I2C_Mode = I2C_Mode_I2C; //I2C模式
I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_16_9;
//占空比一定要選I2C_DutyCycle_16_9,不能選I2C_DutyCycle_2,因為TTS的速率不能超過15KHZ
I2C_InitStructure.I2C_OwnAddress1 = I2C1_TTS_SLAVE_ADDRESS7; //TTS地址(0x80)使能應答
I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit; //應答7位地址
I2C_InitStructure.I2C_ClockSpeed = I2C_Speed;
I2C_Init(I2C1, &I2C_InitStructure); //初始化I2C
I2C_Cmd(I2C1, ENABLE); //使能I2C1
}
/**************************************************
*函數名稱:void I2C_TTS_Init()
*
*入口參數:無
*
*出口參數:無
*
*功能說明:初始化用于I2C TTS驅動的外設
***************************************************/
void I2C_TTS_Init()
{
I2C_TTS_GPIO_Configuration();
I2C_TTS_Configuration();
}
/**************************************************
*函數名稱:void I2C_TTS_Write(u8 *pBuffer, u8 NumByteToWrite)
*
*入口參數:pBuffer指向寫入的數據緩沖區,NumByteToWrite寫入TTS的字節數
*
*出口參數:無
*
*功能說明:寫入多個字節的TTS。
***************************************************/
void I2C_TTS_Write(u8 *pBuffer, u8 NumByteToWrite)
{
I2C_GenerateSTART(I2C1, ENABLE); //起始信號
while(!I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_MODE_SELECT)); // 測試和清除EV5
I2C_Send7bitAddress(I2C1, I2C1_TTS_SLAVE_ADDRESS7, I2C_Direction_Transmitter); //發送寫TTS地址
while(!I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED)); // 測試和清除EV6
while(NumByteToWrite--)
{
I2C_SendData(I2C1, *pBuffer); //發送當前字節
pBuffer++; //下一個被寫入的字節
while (!I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_BYTE_TRANSMITTED)); // 測試和清除EV8
}
I2C_GenerateSTOP(I2C1, ENABLE); //停止信號
}
/***********************************************************
* 名 稱: XFS5051 文本合成語音函數
* 功 能: 發送合成文本到XFS5051芯片進行合成播放
* 入口參數: *pData:文本指針變量
* 出口參數: 無
* 說 明: 本函數用于文本合成語音。
**********************************************************/
void TTS_SendFrameInfo(u8 *pData)
{
/****************需要發送的文本**********************************/
u8 Frame_Info[45];
u8 dataLength = strlen((const char *)pData); //需要發送文本的長度
/*****************幀固定配置信息**************************************/
Frame_Info[0] = 0xFD ; //構造幀頭FD
Frame_Info[1] = 0x00 ; //構造數據區長度的高字節
Frame_Info[2] = dataLength+2; //構造數據區長度的低字節
Frame_Info[3] = 0x01 ; //構造命令字:合成播放命令
Frame_Info[4] = 0x01; //文本編碼格式:GBK
/*******************發送幀信息***************************************/
memcpy(&Frame_Info[5], pData, dataLength);
I2C_TTS_Write(Frame_Info,5+dataLength); //發送幀配置
}
復制代碼
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
91精品入口蜜桃
|
欧美一级高清片
|
日本久久黄色
|
欧美一区二区三区在线观看
|
久久视频精品
|
3p视频在线观看
|
黑人巨大精品欧美一区二区免费
|
亚洲综合资源
|
国产午夜精品久久久久免费视高清
|
国产精品国产三级国产aⅴ无密码
|
国产激情一区二区三区
|
久久国产精品亚洲
|
青青久久av北条麻妃海外网
|
久久网站黄
|
丝袜 亚洲 欧美 日韩 综合
|
一区二区三区成人
|
国产成人jvid在线播放
|
鸳鸯谱在线观看高清
|
亚洲成a
|
中文字幕一区二区三区不卡
|
日本手机在线
|
日本精品视频在线观看
|
能看的av
|
九九99精品
|
午夜久久av
|
九九久久国产
|
日韩a视频
|
中文字幕一区二区在线观看
|
久久88
|
婷婷五月色综合
|
看片国产
|
色射综合
|
国产精品欧美一区二区三区不卡
|
日韩在线免费视频
|
午夜精品视频在线观看
|
欧美福利
|
欧美成人精品一区二区三区
|
欧洲毛片
|
91精品国产一二三
|
国产精品自产av一区二区三区
|
久久中文网
|