99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

STM32驅(qū)動(dòng)SYN6288語(yǔ)音合成模塊:串口發(fā)文本,讓單片機(jī)開(kāi)口播報(bào)

STM32驅(qū)動(dòng)SYN6288語(yǔ)音合成模塊:串口發(fā)文本,讓單片機(jī)開(kāi)口播報(bào) 簡(jiǎn)介這份STM32與SYN6288語(yǔ)音模塊的完整程序包面向嵌入式開(kāi)發(fā)者和電子愛(ài)好者解決將語(yǔ)音合成芯片接入STM32并實(shí)現(xiàn)播報(bào)功能的關(guān)鍵問(wèn)題。工程涵蓋I2C/SPI通信配置、GPIO初始化、命令字構(gòu)造、音量與語(yǔ)速設(shè)置、語(yǔ)音數(shù)據(jù)發(fā)送等核心環(huán)節(jié)適合正在學(xué)習(xí)串口外設(shè)驅(qū)動(dòng)或需要快速集成語(yǔ)音播報(bào)功能的中級(jí)開(kāi)發(fā)者參考。資源共100個(gè)文件以37個(gè)h頭文件、36個(gè)c源文件為主另有啟動(dòng)文件、hex固件和工程配置文件形成一套可編譯、可燒錄的完整STM32標(biāo)準(zhǔn)外設(shè)庫(kù)項(xiàng)目便于對(duì)照源碼理解SYN6288時(shí)序控制與狀態(tài)管理。壓縮包整體僅344KB輕量易用。目前已有3866人學(xué)習(xí)代碼中初始化函數(shù)、命令發(fā)送函數(shù)、語(yǔ)音播放函數(shù)及錯(cuò)誤處理模塊層次分明還提供了使用I2C與SPI兩種通信方式的參考實(shí)現(xiàn)能幫助讀者快速遷移到自己的項(xiàng)目中并規(guī)避常見(jiàn)通信異常。1. stm32 syn6288語(yǔ)音模塊程序讓單片機(jī)在第五分鐘開(kāi)口說(shuō)話如果你手頭有一塊STM32最小系統(tǒng)板、一個(gè)SYN6288語(yǔ)音合成模塊想讓它播報(bào)溫濕度、倒計(jì)時(shí)或者設(shè)備故障碼那這篇就是給你準(zhǔn)備的。STM32 通過(guò)串口發(fā)送一幀 GB2312 編碼的漢字文本SYN6288 負(fù)責(zé)把文本合成為語(yǔ)音并驅(qū)動(dòng)喇叭放出來(lái)。整個(gè)過(guò)程不涉及音頻解碼、不涉及錄音文件你只需要寫(xiě)對(duì)串口、組對(duì)命令幀剩下的事模塊全包。這個(gè)方案在工控提示、智能家居語(yǔ)音播報(bào)、車(chē)載語(yǔ)音提醒里很常見(jiàn)也是很多開(kāi)發(fā)者入門(mén)語(yǔ)音合成的首選路徑成本低、外圍少、代碼量小。我最早做某跨平臺(tái)系統(tǒng)的語(yǔ)音告警時(shí)就是先用這塊模塊把“溫度過(guò)高請(qǐng)檢查設(shè)備”播出來(lái)才敢放進(jìn)正式項(xiàng)目。下文不基于任何現(xiàn)成源碼包只按我自己做過(guò)的可靠方案帶你把原理、接線、驅(qū)動(dòng)代碼和踩坑點(diǎn)完整過(guò)一遍。2. SYN6288 語(yǔ)音模塊的內(nèi)部邏輯與選型邊界2.1 模塊的核心構(gòu)成從文本到聲音中間發(fā)生了什么SYN6288 本質(zhì)上是一顆中文語(yǔ)音合成芯片它內(nèi)部集成了語(yǔ)音合成引擎、音頻功放和串口控制接口。你從 STM32 發(fā)過(guò)去的不是音頻數(shù)據(jù)而是文本本身的編碼——常見(jiàn)的是 GB2312 編碼的漢字字節(jié)流。芯片收到后先做文本解析再查內(nèi)部字庫(kù)和韻律模型最后合成出聲波驅(qū)動(dòng)喇叭。所以它和語(yǔ)音播報(bào)模塊有本質(zhì)區(qū)別語(yǔ)音播報(bào)模塊需要你提前把音頻文件燒錄進(jìn)去播放時(shí)只是“讀文件”SYN6288 是實(shí)時(shí)合成任何文本都能當(dāng)場(chǎng)播不需要預(yù)先錄。這個(gè)特性決定了它的使用場(chǎng)景文本內(nèi)容是動(dòng)態(tài)的、可變的比如傳感器讀數(shù)、倒計(jì)時(shí)、錯(cuò)誤碼。我通常在兩種場(chǎng)景里優(yōu)先選它一是設(shè)備要念的內(nèi)容經(jīng)常變二是主控資源緊張不想為語(yǔ)音解碼單獨(dú)分配 Flash 和 RAM。模塊往外引出的信號(hào)也簡(jiǎn)單核心就四根線VCC、GND、RXD、TXD。少數(shù)板子還會(huì)引出一個(gè) BUSY 忙信號(hào)腳可以接 STM32 的 GPIO 查詢播報(bào)狀態(tài)。音頻輸出一般是兩線接喇叭或者用板載功放直推一個(gè)小喇叭。下文的接線方案我按“四線串口 喇叭兩線”的最小系統(tǒng)來(lái)寫(xiě)不依賴(lài) BUSY 信號(hào)也能跑通。有一點(diǎn)你心里要有數(shù)SYN6288 同一時(shí)刻只能播一路語(yǔ)音它不支持和弦混音也不支持多路并發(fā)。如果你要把多條提示音排隊(duì)得靠 STM32 自己管理隊(duì)列這個(gè)我在第 6 章講。2.2 為什么選 SYN6288 而不是其它語(yǔ)音方案開(kāi)發(fā)者第一次做語(yǔ)音播報(bào)往往會(huì)在三種方案之間猶豫語(yǔ)音播報(bào)模塊、SYN6288 合成模塊、以及直接用 MP3 解碼芯片。它們不是同一類(lèi)東西選錯(cuò)會(huì)把項(xiàng)目帶偏這里給你一張對(duì)照表。方案內(nèi)容來(lái)源適合場(chǎng)景短板語(yǔ)音播報(bào)模塊預(yù)燒錄音頻文件固定提示音、固定廣告詞改內(nèi)容要重新燒錄SYN6288 合成模塊實(shí)時(shí)文本合成動(dòng)態(tài)數(shù)值播報(bào)、任意文字提示一次只能報(bào)一條MP3 解碼芯片SD 卡/U 盤(pán)音頻文件音樂(lè)播放、長(zhǎng)語(yǔ)音文件系統(tǒng)、解碼流程復(fù)雜就“單片機(jī)自動(dòng)播報(bào)動(dòng)態(tài)內(nèi)容”這個(gè)需求來(lái)說(shuō)SYN6288 最省事。你不需要在 STM32 側(cè)處理 FATFS 文件系統(tǒng)也不需要準(zhǔn)備音頻編碼工具鏈串口發(fā)字符串就能出聲。這也是它在中小型項(xiàng)目里流行多年的原因。另一個(gè)讓你踏實(shí)選它的點(diǎn)是命令幀結(jié)構(gòu)透明。它不像某些模塊把協(xié)議封裝成一堆寄存器讀寫(xiě)而是直接暴露幀格式幀頭、長(zhǎng)度、命令字、參數(shù)、文本區(qū)。這個(gè)格式半小時(shí)就能看完出問(wèn)題也容易用串口調(diào)試助手復(fù)現(xiàn)。相比那些“黑匣子”式的模塊SYN6288 的排錯(cuò)成本低得多。2.3 選型邊界什么時(shí)候你應(yīng)該換掉 SYN6288SYN6288 不適合做的事也得提前說(shuō)清楚。首先是音質(zhì)需求高的場(chǎng)景比如語(yǔ)音導(dǎo)航、朗讀文章它合成的機(jī)械感比較明顯不如云端合成自然。其次是長(zhǎng)文本連續(xù)播報(bào)比如一次要念 500 字以上模塊的緩沖區(qū)有限你必須自己分幀發(fā)送并且處理忙狀態(tài)復(fù)雜度會(huì)升上來(lái)。實(shí)時(shí)操作系統(tǒng)里用也要留個(gè)心串口發(fā)送函數(shù)會(huì)被任務(wù)調(diào)度打斷的話可能拆散一幀數(shù)據(jù)。我一般會(huì)在任務(wù)里加互斥信號(hào)量或者干脆把整幀放入 DMA 環(huán)形緩沖區(qū)發(fā)送。還有一種更隱蔽的坑如果主板上的晶振誤差偏大串口波特率會(huì)有偏差最直接的現(xiàn)象是模塊偶爾不發(fā)音或者發(fā)錯(cuò)音這個(gè)問(wèn)題在第 5 章細(xì)講。選型建議收攏成一句話文本動(dòng)態(tài)、內(nèi)容短小、單路播報(bào)、預(yù)算敏感選 SYN6288 很穩(wěn)音質(zhì)優(yōu)先、長(zhǎng)文本、多路并發(fā)盡早考慮別的方案。我見(jiàn)過(guò)不少項(xiàng)目因?yàn)椤跋茸尷软懫饋?lái)”就選了合成方案跑到一半發(fā)現(xiàn)要排隊(duì)播報(bào)最后又加代碼管理隊(duì)列這筆賬要在項(xiàng)目規(guī)劃時(shí)就算清楚。3. 接線與串口初始化能讓模塊開(kāi)口的最小系統(tǒng)3.1 引腳接線表與電平匹配STM32 和 SYN6288 之間的連線物理上只有四個(gè)點(diǎn)但接線錯(cuò)誤和電平不匹配是新手翻車(chē)的第一大來(lái)源。我這里給出最常用的一套接法基于 STM32F103 系列。注意 STM32 的 GPIO 通常是 3.3V 邏輯電平模塊邏輯電平以芯片手冊(cè)為準(zhǔn)絕大多數(shù)模塊可以直接對(duì)接。STM32 引腳SYN6288 模塊引腳說(shuō)明PA9 / USART1_TXRXDSTM32 發(fā)送模塊接收PA10 / USART1_RXTXD模塊發(fā)送STM32 接收GNDGND共地必須接否則通信亂碼3.3VVCC優(yōu)先用 3.3V 供電喇叭接模塊的 SPK/SPK- 或者對(duì)應(yīng)音頻輸出腳具體絲印以你手上的板子為準(zhǔn)。這里我強(qiáng)烈建議先查一遍模塊背面的絲印別只認(rèn)網(wǎng)上流傳的引腳圖。某次我?guī)?A 同學(xué)排查一個(gè)不出聲的問(wèn)題折騰半天發(fā)現(xiàn) RXD/TXD 接反了就是被網(wǎng)上那張標(biāo)注錯(cuò)誤的圖帶偏的。3.2 串口初初始化代碼HAL 庫(kù)與標(biāo)準(zhǔn)外設(shè)庫(kù)的對(duì)比STM32 的串口初始化各家固件庫(kù)寫(xiě)法不同但核心參數(shù)一致波特率 9600、數(shù)據(jù)位 8、停止位 1、無(wú)校驗(yàn)。SYN6288 默認(rèn)工作在 9600bps這是模塊上電時(shí)的固定值除非你用配置命令改過(guò)否則一定要對(duì)齊這個(gè)參數(shù)。HAL 庫(kù)的串口初始化常見(jiàn)寫(xiě)法如下UART_HandleTypeDef huart1; void MX_USART1_UART_Init(void) { huart1.Instance USART1; huart1.Init.BaudRate 9600; // 必須與模塊默認(rèn)波特率一致 huart1.Init.WordLength UART_WORDLENGTH_8B; huart1.Init.StopBits UART_STOPBITS_1; huart1.Init.Parity UART_PARITY_NONE; huart1.Init.Mode UART_MODE_TX_RX; huart1.Init.HwFlowCtl UART_HWCONTROL_NONE; huart1.Init.OverSampling UART_OVERSAMPLING_16; if (HAL_UART_Init(huart1) ! HAL_OK) { Error_Handler(); } }這段代碼里最關(guān)鍵的是BaudRate 9600以及 Mode 同時(shí)打開(kāi) TX 和 RX。如果你的項(xiàng)目里 USART1 還要接其它設(shè)備建議單獨(dú)分配一個(gè)串口給語(yǔ)音模塊避免調(diào)試日志和語(yǔ)音指令互相干擾。我習(xí)慣把日志留在 USART2語(yǔ)音模塊獨(dú)占 USART1兩邊互不擠占。如果你還在用標(biāo)準(zhǔn)外設(shè)庫(kù)初始化框架也幾乎一致只是把UART_HandleTypeDef換成USART_InitTypeDef時(shí)鐘使能和引腳復(fù)用單獨(dú)配置。核心就是 GPIO 復(fù)用推挽輸出加上 USART 外設(shè)參數(shù)原理完全相同。3.3 上電自檢如何確認(rèn)模塊已經(jīng)“活”了接線完成后先做一次最小驗(yàn)證別急著寫(xiě)代碼。用 USB-TTL 工具直接連模塊PC 上打開(kāi)串口助手波特率設(shè) 9600然后手動(dòng)發(fā)送一幀合成命令比如“你好”。模塊如果發(fā)出聲音說(shuō)明硬件鏈路沒(méi)問(wèn)題問(wèn)題只會(huì)出現(xiàn)在 STM32 程序側(cè)。手工組幀的辦法很簡(jiǎn)單在串口助手里以十六進(jìn)制發(fā)送以下內(nèi)容FD 00 05 01 00 C4 E3 BA C3這段數(shù)據(jù)的含義我拆開(kāi)講FD 是幀頭00 05 表示后面數(shù)據(jù)區(qū)長(zhǎng)度為 5 字節(jié)01 是文本合成播放命令00 是文本編碼格式參數(shù)這里指 GB2312C4 E3 BA C3 是“你好”兩個(gè)漢字的 GB2312 編碼。模塊收到后會(huì)立即合成并播放。如果這一步能出聲就可以放心去寫(xiě) STM32 程序了。如果沒(méi)有聲音優(yōu)先檢查三件事電源電流夠不夠、喇叭有沒(méi)有接對(duì)、波特率是不是真的 9600。我遇到過(guò)一次詭異的“上電有爆音但不說(shuō)話”最后發(fā)現(xiàn)是 USB 轉(zhuǎn)串口工具質(zhì)量太差發(fā)送的字節(jié)流被丟了一半換成正規(guī)調(diào)試工具立刻正常。4. 核心 C 程序命令幀封裝與三個(gè)可直接調(diào)用的驅(qū)動(dòng)函數(shù)4.1 把漢字文本轉(zhuǎn)成 GB2312 編碼并計(jì)算幀長(zhǎng)SYN6288 只認(rèn)識(shí) GB2312 編碼的文本而 STM32 工程里源碼文件常用 UTF-8 編碼存放。如果你直接把你好放進(jìn)數(shù)組發(fā)出去模塊收到的可能是E4 BD A0 E5 A5 BD這種 UTF-8 字節(jié)流模塊會(huì)當(dāng)成亂碼處理表現(xiàn)為播報(bào)異?;蛘咧苯屿o音。解決辦法有兩種。第一種是在編譯環(huán)境里把源文件編碼改為 GB2312Keil 下可以配置源文件編碼但多人協(xié)作時(shí)文件編碼容易被打亂。第二種更可靠把文本常量統(tǒng)一用轉(zhuǎn)義序列寫(xiě)在數(shù)組里比如你好寫(xiě)成\xC4\xE3\xBA\xC3。這樣源碼無(wú)論存什么編碼最終發(fā)送的字節(jié)都是確定的。發(fā)送函數(shù)里數(shù)據(jù)區(qū)長(zhǎng)度這樣計(jì)算長(zhǎng)度 命令字字節(jié)數(shù) 參數(shù)字節(jié)數(shù) 文本字節(jié)數(shù)。例如“你好”兩字占 4 字節(jié)加上命令字和參數(shù)各 1 字節(jié)數(shù)據(jù)區(qū)長(zhǎng)度為 6。幀頭 FD 和長(zhǎng)度本身不計(jì)入長(zhǎng)度字段。void SYN6288_PlayText(const uint8_t *text, uint8_t len) { uint8_t cmd_buf[250]; uint16_t payload_len len 2; // 命令字1字節(jié) 參數(shù)1字節(jié) 文本 cmd_buf[0] 0xFD; // 幀頭 cmd_buf[1] (payload_len 8) 0xFF; // 長(zhǎng)度高字節(jié) cmd_buf[2] payload_len 0xFF; // 長(zhǎng)度低字節(jié) cmd_buf[3] 0x01; // 命令字文本合成播放 cmd_buf[4] 0x00; // 文本編碼GB2312 memcpy(cmd_buf[5], text, len); // 文本字節(jié)流 HAL_UART_Transmit(huart1, cmd_buf, len 5, 1000); }這里對(duì)文本長(zhǎng)度有個(gè)限制一幀不要超過(guò) 250 字節(jié)模塊內(nèi)部緩沖區(qū)有限超長(zhǎng)文本要分多條發(fā)送。上述代碼里cmd_buf數(shù)組大小按 250 設(shè)計(jì)也是基于這個(gè)考慮。HAL_UART_Transmit的最后一個(gè)參數(shù) 1000 是超時(shí)時(shí)間單位毫秒串口波特率 9600 時(shí)發(fā)送 250 字節(jié)大約需要 260 毫秒設(shè) 1000 毫秒足夠。4.2 停止播報(bào)與音量調(diào)節(jié)的命令幀除了文本合成最常用的兩個(gè)控制命令是停止播報(bào)和音量設(shè)置。停止播報(bào)在告警場(chǎng)景里很關(guān)鍵一旦發(fā)現(xiàn)故障恢復(fù)要讓正在播報(bào)的語(yǔ)音立即停下而不是等它念完。音量調(diào)節(jié)則用在夜間場(chǎng)景防止播報(bào)聲音過(guò)大擾民。void SYN6288_Stop(void) { uint8_t cmd[4] {0xFD, 0x00, 0x01, 0x00}; // 命令字0x00停止合成播放無(wú)參數(shù)區(qū) HAL_UART_Transmit(huart1, cmd, sizeof(cmd), 1000); } void SYN6288_SetVolume(uint8_t vol) { uint8_t cmd[5] {0xFD, 0x00, 0x02, 0x21, vol}; // 命令字0x21音量調(diào)節(jié)參數(shù)vol范圍0x00~0x10 HAL_UART_Transmit(huart1, cmd, sizeof(cmd), 1000); }注意停止命令的幀結(jié)構(gòu)和合成命令不一樣它沒(méi)有文本區(qū)數(shù)據(jù)區(qū)長(zhǎng)度固定為 1也就是只有命令字 0x00。音量命令的數(shù)據(jù)區(qū)長(zhǎng)度固定為 2命令字 0x21參數(shù)就是音量值。如果你把音量參數(shù)寫(xiě)成超過(guò) 0x10 的值模塊可能忽略或者按最大值處理這事在數(shù)據(jù)手冊(cè)里通常有說(shuō)明。音量調(diào)節(jié)我一般把它做成一個(gè)單獨(dú)接口而不是在每次播放前都設(shè)一次音量。因?yàn)轭l繁設(shè)置音量會(huì)讓播報(bào)聽(tīng)起來(lái)斷斷續(xù)續(xù)用戶體驗(yàn)反而差。推薦的做法系統(tǒng)初始化時(shí)設(shè)置一次音量播放普通提示時(shí)用默認(rèn)音量夜間模式才切換小音量。4.3 完整例程按鍵觸發(fā)一次動(dòng)態(tài)播報(bào)把上面幾個(gè)函數(shù)串起來(lái)就是一個(gè)最小可用工程。下面這段代碼演示按鍵按下的瞬間STM32 組裝一條帶數(shù)字的播報(bào)內(nèi)容發(fā)給 SYN6288 播放。這里用 sprintf 把溫度值拼進(jìn)文本緩沖再調(diào)用播放函數(shù)。char text[64]; uint8_t key_pressed 0; while (1) { if (key_pressed) { float temp 26.5; // 這里替換成你實(shí)際的傳感器讀數(shù) int int_part (int)temp; int dec_part (int)((temp - int_part) * 10); // 把溫度值拼進(jìn)文本注意源文件編碼按GB2312保存下面這行字符串 sprintf(text, 當(dāng)前溫度是%d點(diǎn)%d度, int_part, dec_part); SYN6288_PlayText((uint8_t*)text, strlen(text)); key_pressed 0; } }這個(gè)例程里最容易被忽略的是文本編碼。sprintf生成的中文字符串在內(nèi)存里的字節(jié)形態(tài)取決于源碼文件保存時(shí)的編碼。如果工程文件是 UTF-8 編碼生成的就是 UTF-8 字節(jié)流模塊不認(rèn)如果工程文件是 GB2312 編碼生成的就是 GB2312 字節(jié)流模塊正常播報(bào)。我在 Keil 工程里通常會(huì)確認(rèn)“Edit - Configuration - Encoding”設(shè)為 Chinese GB2312并且團(tuán)隊(duì)約定所有含中文的源文件統(tǒng)一這個(gè)編碼。數(shù)值轉(zhuǎn)字符串部分還有一個(gè)隱患負(fù)數(shù)和浮點(diǎn)精度。比如溫度是 -3.05 攝氏度直接轉(zhuǎn) int 會(huì)截?cái)喑?-3小數(shù)部分 0.05 乘 10 取整得 0播報(bào)出來(lái)就成了“零下3點(diǎn)0度”雖然不致命但不夠?qū)I(yè)。更好的做法是用定點(diǎn)和取整函數(shù)配合處理正負(fù)號(hào)這塊看你的精度需求來(lái)決定投入多少工作量。4.4 發(fā)送方式選型阻塞發(fā)送、中斷發(fā)送還是 DMAHAL_UART_Transmit 是阻塞發(fā)送它會(huì)一直等數(shù)據(jù)發(fā)完才返回。9600 波特率下發(fā)送一幀 100 字節(jié)的數(shù)據(jù)大約耗時(shí) 100 毫秒這段時(shí)間 CPU 被占住無(wú)法響應(yīng)按鍵或處理傳感器。如果你的主循環(huán)比較忙我建議用中斷發(fā)送或 DMA 發(fā)送。中斷發(fā)送的代碼改動(dòng)很小HAL_UART_Transmit_IT(huart1, cmd_buf, len 5);這樣函數(shù)立即返回?cái)?shù)據(jù)在后臺(tái)發(fā)送。但要注意cmd_buf在發(fā)送完成前不能被修改或釋放否則會(huì)發(fā)出去一堆亂碼。我的做法是在結(jié)構(gòu)體里給語(yǔ)音模塊單獨(dú)留一個(gè)發(fā)送緩沖區(qū)發(fā)送過(guò)程中主循環(huán)不碰它發(fā)送完成回調(diào)置一個(gè)標(biāo)志位。DMA 發(fā)送更省 CPU但 STA6288 模塊對(duì)連續(xù)字節(jié)間隔有要求如果 DMA 配置不當(dāng)會(huì)出現(xiàn)幀中間卡頓模塊會(huì)認(rèn)為一幀結(jié)束然后丟棄后半段。我做某圖像處理 Demo 時(shí)就被這個(gè)坑過(guò)。綜合來(lái)看中斷發(fā)送是性價(jià)比最高的選擇代碼簡(jiǎn)單、不占用 CPU 等待、不易出現(xiàn)字節(jié)間間隔問(wèn)題。5. SYN6288 調(diào)試避坑四個(gè)高頻翻車(chē)現(xiàn)場(chǎng)與排查流程5.1 上電后“吱啦”一聲之后就裝聾作啞現(xiàn)象模塊上電瞬間喇叭響了一下電流沖擊聲之后無(wú)論發(fā)什么命令都沒(méi)反應(yīng)。原因最常見(jiàn)的不是模塊壞了而是電源供電不足。模塊合成語(yǔ)音時(shí)功放瞬時(shí)電流能到幾百毫安如果 STM32 板子的 3.3V 是低壓差穩(wěn)壓器直接從 USB 取電電流一大電壓就被拉垮模塊內(nèi)部邏輯紊亂。解決給模塊單獨(dú)供電或者把模塊的 VCC 接在能提供 500mA 以上的電源軌上。電源地和 STM32 的地必須連在一起否則串口電平參考點(diǎn)不一致通信照樣失敗。這個(gè)問(wèn)題的排查順序是先量模塊 VCC 在播報(bào)瞬間的電壓跌落幅度再?zèng)Q定是換電源還是加電容。5.2 播報(bào)中途卡斷像是被人掐了脖子現(xiàn)象短文本正常長(zhǎng)文本播到一半突然停住或者只播前半句。原因發(fā)送方一次性把超長(zhǎng)文本塞進(jìn)串口模塊的接收緩沖區(qū)裝不下后半段數(shù)據(jù)丟失。另一個(gè)可能是主循環(huán)里頻繁調(diào)用其它串口函數(shù)把發(fā)送過(guò)程打斷了。解決控制每幀文本長(zhǎng)度一般不超過(guò) 50 個(gè)漢字。超長(zhǎng)內(nèi)容拆成多條命令前一條播完再發(fā)下一條。你可以在兩條命令之間加延時(shí) 300 到 500 毫秒經(jīng)驗(yàn)值具體以模塊實(shí)際表現(xiàn)調(diào)整。也可以接 BUSY 引腳查詢狀態(tài)高電平表示正在播報(bào)等它變低再發(fā)下一條這樣效率更高。5.3 偶爾不發(fā)音或發(fā)錯(cuò)音玄學(xué)問(wèn)題現(xiàn)象同樣的代碼復(fù)位后第一次播報(bào)正常第二次就靜音或者十次里有一兩次播報(bào)內(nèi)容不對(duì)。原因排查到最后往往落在兩個(gè)點(diǎn)。第一個(gè)是波特率偏差STM32 內(nèi)部 RC 振蕩器代替外部晶振時(shí)精度不夠9600 波特率下累計(jì)誤差超過(guò)容限模塊偶爾解碼錯(cuò)位。第二個(gè)是幀被拆散如果你用 RTOS任務(wù)切換可能發(fā)生在幀中間模塊等待下一字節(jié)超時(shí)后就丟棄整幀。解決把 STM32 的外部晶振補(bǔ)上不要依賴(lài)內(nèi)部 RC 振蕩器跑串口通信。RTOS 環(huán)境下給語(yǔ)音發(fā)送加臨界區(qū)保護(hù)或者用中斷/DMA 整幀發(fā)送。排查這個(gè)問(wèn)題的關(guān)鍵步驟是用邏輯分析儀抓串口波形看幀內(nèi)字節(jié)間隔是否均勻間隔大于 10 毫秒就要考慮發(fā)送側(cè)被搶占。5.4 模塊能播報(bào)但聲音又小又悶像隔了一層被子現(xiàn)象聲音確實(shí)出來(lái)了但音量推到最大還是不滿意喇叭有破音感。原因喇叭阻抗和模塊功放不匹配。模塊內(nèi)置功放通常設(shè)計(jì)給 8 歐 0.5W 到 1W 的小喇叭你換成 4 歐大喇叭電流過(guò)大導(dǎo)致削頂失真聽(tīng)感反而更差。另外喇叭沒(méi)有裝共鳴腔直接裸放也會(huì)顯得聲音單薄。解決按模塊手冊(cè)推薦的喇叭規(guī)格選型別在這一步省成本。如果必須在密閉小空間里用可以考慮把模塊的音頻輸出接到外部功放板繞過(guò)板載功放。但這樣做之前要確認(rèn)模塊音頻輸出腳的信號(hào)電平直接亂接會(huì)燒音頻通路我見(jiàn)過(guò)不止一次這種情況。6. 進(jìn)階用狀態(tài)機(jī)管理播報(bào)隊(duì)列別讓長(zhǎng)文本卡死主循環(huán)當(dāng)你需要在一次告警里連續(xù)播報(bào)多條內(nèi)容時(shí)最簡(jiǎn)單的做法是阻塞式逐條播報(bào)發(fā)一條、延時(shí)、再發(fā)一條。這在提示音少的項(xiàng)目里沒(méi)問(wèn)題但一旦播報(bào)內(nèi)容變長(zhǎng)主循環(huán)會(huì)被卡住幾百毫秒甚至一秒按鍵響應(yīng)、傳感器采樣全部延遲。我習(xí)慣的做法是把播報(bào)邏輯改成一個(gè)小型狀態(tài)機(jī)。狀態(tài)機(jī)只維護(hù)三個(gè)階段空閑、發(fā)送中、等待完成。主循環(huán)每次執(zhí)行時(shí)檢查當(dāng)前狀態(tài)空閑時(shí)從隊(duì)列取出一條文本發(fā)送并進(jìn)入發(fā)送中狀態(tài)發(fā)送完成后記錄時(shí)間進(jìn)入等待完成狀態(tài)等待時(shí)間超過(guò)設(shè)定值切回空閑并取下一幀。整個(gè)過(guò)程不阻塞主循環(huán)其它任務(wù)照常運(yùn)行。typedef enum { IDLE, SENDING, WAITING } TTS_State; TTS_State state IDLE; uint32_t wait_tick 0; void TTS_Task(void) { switch (state) { case IDLE: if (tts_has_next()) { tts_send_next(); // 發(fā)送一幀不等待 state SENDING; } break; case SENDING: if (tx_complete_flag) // 串口發(fā)送完成回調(diào)置位 { wait_tick HAL_GetTick(); state WAITING; tx_complete_flag 0; } break; case WAITING: if (HAL_GetTick() - wait_tick 400) { state IDLE; // 給模塊足夠的合成時(shí)間 } break; } }這段代碼里的tts_has_next和tts_send_next需要你自己維護(hù)一個(gè)簡(jiǎn)單的文本隊(duì)列隊(duì)列元素可以是固定長(zhǎng)度的字符數(shù)組也可以是指針加長(zhǎng)度。注意發(fā)送完成回調(diào)里只能置標(biāo)志位不要在中斷里直接修改隊(duì)列指針?lè)駝t容易和數(shù)據(jù)生產(chǎn)端沖突。400 毫秒等待時(shí)間是我的經(jīng)驗(yàn)值模塊播報(bào)短句時(shí)這個(gè)間隔足夠長(zhǎng)句可適當(dāng)加大。用這套狀態(tài)機(jī)之后播報(bào)多條故障碼、循環(huán)提示、按鍵搶播都能在同一個(gè)框架下解決。我后來(lái)做某跨平臺(tái)系統(tǒng)的語(yǔ)音告警模塊就把這個(gè)狀態(tài)機(jī)直接移植過(guò)去只是把串口發(fā)出來(lái)的文本換成了格式化后的設(shè)備狀態(tài)字段。養(yǎng)成這種“先拆狀態(tài)再寫(xiě)循環(huán)”的習(xí)慣語(yǔ)音模塊的代碼會(huì)穩(wěn)定很多調(diào)試時(shí)也更容易定位問(wèn)題出現(xiàn)在發(fā)送側(cè)還是模塊側(cè)。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月婷婷色色| 九九热视频在线观看| 五月天婷婷综合网| 天天射夜夜骑| 五月色亚洲| 五月丁香久久| 丁香五月天信号| 日本久久99| Av性爱网站| 色综合久| 九九婷婷五月天| 69精品人人人人人人| 五月婷婷啪啪| 怡红院99| 久久综合婷| 五月激情综合网| 中文字幕人妻在线| 中文字幕无码人妻少妇免费视频 | 亚洲色久| 丁香,开心成人,久久| 国产精品久久久丁香五月八戒视频| 思思久久久婷婷| 99精色| 2013AV天堂| 婷婷久久五月天丁香| 婷婷天堂综合| 97搞在线| 色色网站在线| 91精品久久久久久综合五月天| 九九人人自拍| WWW.国产| 超碰com| 婷婷和五月天| 欧美、日韩、中文、制服、人妻| 亚洲色五月| 一本综合丁香日日狠狠色| 999九九九久久久99HD| 五月丁香六月婷| 第四色婷婷日本| 日韩综合成人| 在线成人网站| 五月婷婷久草在线视频综合| 全亚洲最大的婷婷五月天网站COM| 国产成人精品一区二三区熟女在线| 99er6热在线观看精品6| 九九黄色网| 大地9中文在线观看免费高清| www.五月天激情| 91丨九色丨熟女| 国产亚洲精品AAAAAAA片| 欧美激情-区二区三区| 538任你爽视频不一样的| 欧美25p| 婷婷丁香激情| 日韩一区二区在线播放| 日本高清久| 99精品偷自拍| 亚洲操B| 婷婷五月亚洲一本在线丁香| 桃色激情婷婷伊人网| 91n啪啪| 激情综合五| 日韩在线五月天婷婷| 久99视频在线观看| 99热只有精品在线| 丁香五月婷婷国产av| 六月撸婷婷| 婷婷色五月天综合网| 蜜桃婷婷狠狠久久| 久久久色情| 五月天com| 久久久久丁香婷婷五月天| 久久婷婷六月| 久久综合爱| 成人丁香婷婷| 国产3p露脸普通话对白| 99欧美| 激情深爱五月| 天天夜天天色天天| 另类图片 五月激情| 综合色网站| 97在线观视频免费观看| 97av在线视频| 中文av网站| 人妻啪啪啪| 色小说婷婷五月天天天| 天天拍夜夜撸| 九九热只有这里精品| 熟美女麻豆| 操操操97| 丁香五月花| 激情色播| 婷婷五月综合在线| av在线资源| 色婷婷亚洲六月婷婷中文字幕| 激情的五月| 无码se| 亚洲无码激情| 综合网狠狠| 狠狠干最新地址| 五月香婷婷| 99色婷婷视频| 很很干天天干| 99这里都是精品| 日韩高清成人| 久久九色| 婷婷久久色| 五月婷婷人人人操| 日韩成人av在线| 噜一噜在线| 五月丁香六月婷婷无码| 久久这里只有精品热在99| 激情九九这里只有精品| 久久人妻www| 色婷婷a三区麻| 九九99视频精品| 亚洲五月天,激情视频| www.色9| 色婷在线视频| 丁香五月婷婷激情尤物| 一起草Av| 色色色777| 久久免费精品小视频| 九九狠狠干| www.91九色| www久久久久久久97| 在线看黄色| 色吊丝av中文字幕| 亚洲性爱电影| 综合五月草| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 久热婷婷在线视频| 丁香五月综合激情性爱| 天天色播| 亚洲五月天天| 国产婷婷五月天| 六月丁香社区| 91碰在线| 公的粗大挺进了我的密道| 无码免费人妻A片AAA毛片西瓜| 任你艹| www.婷婷六月天| 婷婷五月天成人| 国产亚洲成AV人片在线观黄桃| 成人精品网站在线观看| 成人国产欧美大片一区| 五月婷婷丁香网| 综合性爱网| 人妻AV在线观看| 成人在线视频一区| 久久98| 97色五月丁香婷婷| 福利视频在线播放| 丁香六月无码| 五月天综合久久| 五月天精品| 五月综合在线婷婷图片| 偷偷操99| 欧美成人AAA片一区国产精品| 丁香丝袜五月| 国产日比| 九九Y精品热播| A片一曲| 五月情四婷婷| 99在线视频免费| 免费视频99| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 97中文在线| 超碰人人色| 狠狠色婷婷六月激情网| 久久婷婷视频| 操比激情五月| 91chinese在线| 亚洲色综合性| 掩去也综合五月视频| 日本女色人人| 五月婷色色| 婷婷激情欧美| 五月激情啪啪| 国产a视频| www.婷婷五月天.com| 亚洲精品性色| 99re熱| 殴美97色| 一起草av| 色丁香久久| 色色亚卅| 五月丁香亚洲校园欧美| 97人妻碰碰碰久久| 五月天操逼激情| 色婷婷久久综合| 五月天婷婷成人资源站| 九九99在线观看视频| 久久久久九九九九视屏小说88| 久久婷色| 婷婷五月天播播| 夜夜躁狠狠 | 日韩人妻无码专区| 97性视频| 亚洲狠狠干| 狠狠色丁香综合| 玖玖激情网| 激情久久久| 天天爽天天日| 五月天激情网开心网| 26uuu青青| 大香伊人婷婷| 午夜在线成人网站免费观看| 搡BBBB搡BBB搡18| 久久久性爱视频| 天天舔天天插天天干| 婷婷久久久久| 五月天天综合| 色五月婷婷天堂| 疯狂做受XXXX高潮A片动画| 26.uuu丁香五月婷婷| 五月天激情婷婷丁香| 思思99热这里只有精品| 婷婷99视频精品| Caoub青青超碰| 六月天婷婷| 99热播放| 六月婷久久| 激情五月深爱婷婷| 激情综合另类| 五月丁香久久激情网| 丁香五月婷婷久久综合激情网| 丁香六月综合激| 久久精品凹凸分类| 刘玥av在线| 色婷婷在线视频| 五月婷婷偷拍| 99九九在线视频| 婷婷成人五月天成人文学小说| 千人斩操逼| 丁香五月综合高清在线| 婷婷五月天AV| 婷婷丁香六月| 97人妻碰碰碰久| 欧美激情伊人| 日韩日比视频| 1024婷婷综合久久五月天| 亚洲第二AV| 亚洲丁香花五月丁香花| 大香蕉福利导航| 午夜69成人做爰视频| 丁香六月激情| 可以看的av| 狠狠草在线观看| 成人 视频免费观看网站| 婷婷五月六月| 五月丁香婷婷网在线在线| 噜噜色com| 丁香婷在线| 日日噜狠狠色综合久久| 五月丁香六月婷婷久久久综合| 色婷婷色五月丁香| AAA亚洲AV| 五月婷婷丁香五月婷婷| 色色色色网色色网色色| 五月婷婷婷婷网| 色婷婷色婷婷五月| 五月天激情久久| 色偷偷色婷婷| 成人综合视频在线| 婷婷色五月天在线观看| 超碰91在线| 久久婷婷五月天| 开心五月婷婷| 国产SUV精品一区二区883| 色色色欧美| 色情成人五月天| 99精品无码| 9久热| 色播五月婷婷| 五月天激情色色| 黄色录像网点| 激情五月婷婷色色| 婷婷伊人综合中文字幕| 久久中文人妻系列| 天天碰天天插天天操| 丁香五月天激情小说| 九九色99| 丁香桃色网| 婷婷五月综合体验看| 五月天激情四射网站| 婷婷五月天网址| 日本啪啪天堂| 国产成人精品一区二区三区视频 | 91九色超碰正在播放| 超碰高清在线| 99热99成人| 五月天亚洲最大成人| 日日做天天操夜夜爽| 天天爽天天干天天| 欧美婷婷日本| 乱岳熟女50岁| 91在线人| 97久久人人| 五月丁香综合啪啪啪啪啪| 色婷婷成人影片| 99性爱精品| 激情网五月天| 99久久9| 99超碰欧美| 久草五月婷| 色热久| 色婷婷五月基地在线| 日本性激情色播| 色色国产| 欧美槡BBBB槡BBB少妇| 熟女色色一区二区| 人人97碰| WWW.桔色成人.COM| 色婷婷a v| 色婷五月天| 91精品刘玥| 成人在线综合| 狠狠色婷婷丁香六月| 99国产视频网| 日韩成人网址| 亚洲免费视频网站| 天天成人综合| 99久精品视频| 欧洲MV日韩MV国产| 亚洲黄色精品| 五月色天五月色| 久草大| 夜夜撸日日操| 色噜久| www.婷婷网| 丁香五月六月婷婷殴美综合| 欧美色婷婷| 99热黄| 狼人久草| 久久婷婷六月综合| 天天综合精品| 成人丁香色| 开心五月色婷| 日韩视频99| 色婷婷播放| 免费AV播放| 狠狠干五月丁香综合网| 精品久久99| 丁香花操逼| 久久五月人人摸| 婷婷久久丁香| 国产婷伊人| 色99在线视频| 婷婷五月色情天| 囯产精品久久欠久久久久久九大| www.99热在线| 五月丁香激情婷婷综合| 婷婷色导航| 亚洲AV免费国产电影| 五月激情丁香久久综合网| 热久精品| 亚洲182在线观看| 九九色逼| 五月婷婷草| 婷婷无五月无码视频| 色婷婷久久综合| 色五月影视| 99视频只有精品| 99男人的天堂| 五月婷亚洲精品| 色婷婷成人做爰A片免费看网站| 182TV大香蕉| 五月婷六月丁| 99网| 精品国产人人爱人人| 综合性爱网| 亚洲中文字幕在线电影| 狠狠操.COM| 婷婷成人五月天成人文学| av免费在线网站| 五月天婷婷永久免费视频| 激情综合五月| 久久丁香五月天| 狠狠干,狠狠操| 五月伊人91| 蜜桃婷婷五月| 亚洲天天| 国产免费一区二区在线A片视频| 婷婷五月综合亚洲| yirenjiqingshiping| 欧美日韩大黄| 亚洲色久| 精品国产人人爱人人| 99色天堂| 91九色国产| 亚洲免费av在线| 色约约视频一区二区三区四区五区 | 色色色网站| 91碰| 超碰超碰在线| 五月激情网站| 狼友超碰| 欧美日本国产欧美日本韩国99| 九九热99热| 久热伊人91| 天天综合天天玩夜夜玩天天玩夜夜玩| 91一起操| 五月丁香怕啪啪| www.91久久| 婷婷涩五月| 超碰人人干| 五月丁香婷婷啪啪网| 色五月丁香伊人五月| 97日本在线播放| 狠狠擼综合| 亚洲妇女熟BBW| 天天摸天天爽| 一级黄在线| 色色丁香五月婷婷| 丁香五月婷婷国产av| 亚洲99在线视频| 影音先锋美国A| 99热精品综合| 婷婷五月丁香综合瑟瑟| 日日夜夜狠狠操| 人妻中文av| 色五月欧美| 9999热在线免费观看| 少妇搡BBBB搡BBB搡毛茸茸 | 97婷婷丁香| 五月丁香好婷婷A片网| 九九热在线99| 爱射综合| 5月婷婷视频网站综合| 五月天大香蕉| 色 五月婷婷基地| 激情九月丁香婷婷| 夜夜爽天天干| 日本三级日本三级三级人妇四虎| 六月天婷婷| 国产六月婷婷| 五月天久久小说| 色亭亭五月天丁香综合AV - 百度 - 百度| 老妇操B| 日本美女上人| 六月丁婷婷| 99色爱| 婷婷丁香五月综合激情小说| 日本黄色在线观看| 综合五月婷婷| 密乳视频| 日本欧美999久久久三级片| 婷婷综合在线| 9.1综合网| 国产古装妇女野外A片| 天天色综合综合| 伊人久久大香线蕉综合网站| 色婷婷色99国产综合精品| 狠狠操.com| 思思久久99热只有频精品66| 五月激情六月综合| 五月丁香婷婷色| 中文字幕日产A片在线看| 五月丁香六月欧美| 人人操人人操919999| 另类激情综合| 激情五月丁香综合网站| 五月停停色色丁香| 美国少妇性做爰| 日韩无码色色| 99er这里只有精品视频| 第四色色色色色丁香五月天| 综合大香蕉| 99综合婷婷五月| 色色色五月| 超碰人人色| 狠狠人妻久久久久久综合丁香| 99热欲| 亚洲网视屏| 91啪级电影| 天堂在线婷婷| 久久久婷| 久久色9| 婷婷成人综合免费视频| 日本毛片内射| 无码激情AAAAA片-区区| 91无码高清| 99久99热| 天天肏高清在线| 五月天精品| 欧美色色网| 久久这里只有精彩| 激情婷婷五月综合| 婷婷综合在线| 中文字幕激情综合| 玖操97| 色久影院| 东京热五月婷婷| 影视av久久久噜噜噜噜噜三级| 2025中文在线视频字幕免费观看| 婷婷色中文| 国产精品扒开腿做爽爽爽A片唱戏| 狠狠干,狠狠操| 天天做天天爱天天爽在| 一区视频网站| 永久天堂日本| 亚洲色久| 99色色| 综合图区激情| 婷婷五月综合色中文字幕| 另类丁香综合| 91操人人操| 色欲婷婷五月天| 99热这里只有精品最新地址获取| 丁香五月激情宗合| 热99免费在线| 婷婷丁香五月视频| 久久精品99国产精品日本| 97色色综合| 五月色精品| 色综合夜夜| 激情五月丁香色色去久久| 狠狠精品干练久久久无码中文字幕| 日韩av在线电影| 色播五月丁香| 五月丁香婷婷成人伊人网| 桃色激情五月天| 高清a片基地| 91丨九色丨国产打屁股| 激情久久综合| 婷婷五月天综合网| 欧美日韩AAA| 天天草天天爱| 色婷婷丁香网| 久久九九网| www.97干视频| 性爱五月婷婷| 超级碰碰碰久久网站| 202丰满熟女妇大| 99这里只有精品|v| 影音先锋色婷婷| 草综合14| 婷婷基地爱| 色色色.com| 都市激情蜜桃婷婷五月天 | 狠狠色情婷婷| 婷婷五月花免费视频在线| 亚洲视频二区| 99ri久久| 香蕉操亚洲| 麻豆精品| 蜜桃婷婷狠狠久久综合| 超级碰碰碰久久网站| 色色欧美色色色| 五月婷婷六月丁香| 操一区| 色五月婷婷亚洲| 中文字幕综合网| 色色五月天婷婷丁香| 九九婷婷网五月天| 婷婷丁香色无五月| 婷婷.com| 日屌日日操日日色| 四色五月婷婷在线观看| 亚洲综合激情五月| 日日综合网| 婷婷五月深爱五月| 婷婷丁香激情综合色情| 九九热视频精品| 天天色激情| 亚洲激情网站| 久久九九热视频| 这里只有精品2| 99操逼| 日本操B视频| 色婷婷六月丁香综合欲精品| 五月丁香六月婷婷操操操| 五月丁香啪啪伦理电影| 97热这里只有精品| 欧美Va婷色| 五月天 婷 欧美亚洲| 久久久久久久人妻| 第四色五月婷婷| 天天搞天天色综合| 久久婷婷精品| 九九热AV| 国产免费性爱| 婷婷婷久久| 人妻中文字幕精品| 婷婷久久五月天丁香| 色婷婷成人网| 久久er这里只有精品| 男人天堂伊人五月丁香| 亚洲爱爱无码婷婷色五月| xxx综合在线| 人人操A| 中文字幕色色| 婷婷五月天基地| 五月玖玖| 久久五月丁香| 九月丁香八月婷婷加勒比| 国产九月婷婷| 色色色色色五月丁香| 婷婷射丁香| 99开心五月五月丁香激情| 99er6| 综合五月天婷婷色| 五月婷婷五月色| 超碰在线人人| 亚洲国产无线乱码在线观看| 五月丁香久久激情综合| 91色吧网| 五月丁香久久网| 五月天色婷婷图片| 色丁香五月| 婷婷丁香花五月天| 最近中文字幕大全免费版在线| 久久精品凹凸分类| 伊人五月天97| 婷婷激情五月天网站| 五月天伊人日日噜影片AV| 五月天婷婷爱| 9久精品| 午夜69成人做爰视频| 色九九九综合| 亚洲天堂99| 五月天色官网| 99视频在线精品| 欧美婷婷五月丁香| 久久免费少妇高潮99精品| 高清成人综合| 这里只有精品,日韩视频| 久8色色| 九热精品| WwW色婷婷| 97操碰在线视频| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 丁香五月婷婷五月基地| 最新久久网址| 天天爽夜夜爽夜爽精品| 成人 在线 日韩| 中国丰满熟女A片免费观| 另类丁香综合| 六月激情婷婷色| 国产精品色婷婷AV综合色色| 泰州成人视频| 丁香六月婷婷色XXXXX| 金桔一区二区ab地址| 99亚洲无码| 这里只有精品免费视频| 丁香社92视频| 热久久成人| 久色激情| 激情图片亚洲| 青青热视频| 五月丁香天堂网| 综合色色网| 9伊人网| 日日操,日日爽| 色五月五月婷婷| 秋霞少妇AV网站| 丁香婷婷五月激情| 色综合色综合网| 激情小说在线视频| 天天色99| 五月婷婷福利| 丁香久久| 激情久久五月天| 日本五月天一页| 97色色视频| 中美月韩免费A片| 日日艹思思热| 色婷婷丁香A片区毛片区女人区| 怡春院久操| 国精产品一区二区三区| 天天插天天插| 操九色| 99热精地址| 九九热免费视频| 久久性操| 99精品在线观看视频| 日韩在线观看网址| 色综合色婷婷色伊人| 色婷婷丁香五月| 在线观看视频1区| 久久99激情| 亚洲五月婷| 色99婷婷五月天| www,五月丁,com| 色狠狠综合| 色色激情网| 日日色综合| 黄色片久久| 五月丁香色婷婷伊人| 伊人狠狠丁香婷婷综合尤物| 丁香婷婷午夜| 五月丁香花婷婷玉莉AV| 蜜臀久久99精品久久久久久酒店| 婷婷基地成人五月天| 另类图片天天影视在线观看| www91在线| www.com五月天| 亞洲自怕| 天天插天天| 成人做爰A片免费看视频| 五月丁香六月在线欧美| 婷婷六月色开| 99久.| 99九九在线精品热动漫| 五月开心久久| 99精品在线观看视频| 欧美日韩一区二区三区四区| 婷婷五月天伦理| 综合久| 日韩无码专区| 久久9精品| 草草影院爱爱| WWW.17C亚洲精品| 曰本aaaaaa丈片| 激情小说五月欧美亚洲丁香| 天久综合91综合首页| 777精品成人a v久久| 激情综合久久| 激情精品久久| 色婷婷丁香五月| 天天天操天天天爰| 色人久久| 插插干干干色| 中国女人做爰A片| 色色99色色| 欧美经典片免费观看大全| 精品久久人妻热| 婷婷五月天伊人| 丁香五月天天哦| 五月丁香成人网| 婷婷她六月天| 丝袜大香蕉| Av狠狠色丁香婷| 五月天激情小说网| 色婷婷在线综合色播网| 另类视频综合| 91爱操| 99色在线| 丁香五月婷婷婷婷欧美综合| 五月婷婷六月色| 五月丁香好婷婷姑娘综合网| 国产日韩欧美| 五月婷婷丁香av| 日韩熟女啪啪视频| 六月婷婷五月天| 人妻中文字幕网| 色99热| 精品久久9| 夜夜夜夜夜操| 久久五月六月| 欧美黄色一级录像| 思思久久青草热| 99日在线观看视频| 婷婷婷久久久| 天天爽在线视频| 久久激情五月| 久久这里99| 欧美黄色一级| 第四色大香蕉| 久久性视频| 久久婷婷色| 欧美综合激情五月丁香| 99久操视频| 99热这里只有精彩| 91免费看片| 久草热在线视频| 千人斩操逼| 日本97人人| 色色色色热| 成人在线网| 婷婷五月天网| 婷婷丁香五月高清| 亚洲AV第二区国产精品| 五月天激情久久| 丁香五月另类小说在线阅读| 久9热在线免费观看| 激情六月丁| 五月天激情综合网俺也去| EEUSS鲁片一区二区三区| 99亚洲日韩| 色综合中文色综合网| 亚洲激情综合| 国产精品A片| 亚洲成人av在线播放| 婷婷爱五月天| 五月婷婷色播视频| 99久久婷婷国产综合亚洲| 久久538| 婷婷久久综合| 午夜]香婷婷深深爱| 九九性爱网| wwW天天干| 中文超碰视在线| 婷婷久久亚洲| 99热精品综合| 亚洲综合在线播放| 激情五月婷婷| 久婷五月| 色狠狠999综合网| 99在线小视频| 五月丁香婷婷色| 五月天黄色激情小说| 精品久热69| 国产69精品久久久久999小说| 色七七色九九| 99久久黄色顶级视频| 天天综合网~91| 九九激情网| 欧美日韩一区二区三区四区| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 91视频免费后入强操| 日本狠狠干| 天天激情| 美女婷婷六月色| 综合日本婷婷| 亚洲亚洲人成综合网络| 五月丁香啪啪网| 五月丁香婷色| 精品99视频| 开心色色五月天综合| AV色婷婷| 久热中文字幕在线线观看| 婷婷五月天久久| 成人久碰| 婷婷综合在线| 性爱视频久久| 婷婷丁香五月天狠狠| 天堂久久精品| AV网址大全在| 激情综合婷婷| 99色热视频| 五月天婷婷激情春色小说| 欧美在线视频99| 色吧99| 亚洲精品V天堂中文字幕 | 亚洲精品V天堂中文字幕| 丁香婷婷色五月激情综合| 五月综亚洲| 另类专区在线观看| 婷婷综合国产| 搡BBBB搡BBB搡18| 99福利导航| 丁香婷婷成人网| 婷婷九月激情| 激情四射五月天| 婷婷色基地在线看 | 日本a片网址| 日本久久视频| 丁香五月天堂亚洲社区| 高清一区二区三区日本久| 色婷婷五月在线| 五月婷色激情五月| 噜噜噜噜噜日本视频| 五月天操逼网| 久久香蕉婷婷| 人操91在线| 久久AAAA片一区二区| 色爱亚洲| 五月天丁香婷| 亚洲第一综合| 这里只有精品视频在线看| 五月婷婷 六月丁香| 久热九九| 久久久久8888| 国产在线视频1234| 四色五月婷婷| 色婷网站| 成人无码髙潮喷水A片| 亚洲色频| 国产操碰| 五月天综合激情网| 极品人妻VideOssS人妻| 播四月婷婷六月丁香| 嫩草AV久久伊人妇女超级A| 婷婷综合精品| 伊人色综合影院视频| 五月婷婷9| 久久蜜臀婷婷| 97久久婷婷色| 99视频综合| 欧美日韩精品人妻狠狠躁免费视频| 婷婷丁香熟妇综合网| 婷婷免费视频| 色五月综合在线| 婷综合| 久婷久婷| 六月婷久久| 五月婷婷视频在线观看| 26UUU精品一区二区| 久久婷婷激情视频| 色色网五月激情| Www,五月天| 极品五月天| 五月花婷婷丁香| 丁香五月天欧美| 五月丁香婷中文| 五月天a婷婷伊人| 丁香五月深爱五月婷婷| 激情五月婷婷网在线观看| 五月婷婷开心爱| 伊人五月久久| 亚洲五月天天| 五月色天五月色| 久久草婷婷丁香网站| 五月天激情婷婷小说| 五月婷六月天| 草做免费在线观看| 凹凸7777操操操| 中文字幕丰满乱孑伦无码专区| 婷婷丁香社区网| 综合五月草| 亚洲丁香五月天在线视频| 激情五月激情综合网一级丸片| 五月天婷婷爱丁香中文字幕| 26UUU| 9999热精品在线免费播放| 六月丁香五月亭亭| 青青草视频福利| 天天爽天天日天天舔| 五月婷婷六月丁香激情| 激情五月婷黄版| 99热99精品| 中文字幕av在线| 婷婷五月在线观看| 国产成人片| 337久久| 丁香五月天亚洲综合| 超碰在线综合| 在线另类| 99热 免费| 久久久五月婷婷| 洗浴中心操B视频| 1024操逼视频| 99色在线观看视频| 婷婷丁香十月| 久久9热好| 99久久婷婷国产综合精品电影| 五月丁香亭亭AV女优| 成人中文字幕在线| 五月天激情播播网| 综合色综合| 婷婷五月激情五月激情| 99色网站| 性爱久久| 中文字幕丰满乱孑伦无码专区| 色婷婷aV四虎| 久久精品91视频| 婷婷五月天受日本法律保护| 青青草六月丁香| 精品久久久人妻| 色欲久久综合| 国产成人网| 伦乱人妻| 九月婷婷久久久| 五月停停直播| 99热手机在线精品| 91色在线/日韩| 丁香五月花| 99久久.www| 久久伊人五月天| 日本九九热| 丁香六月婷婷综合缴| 婷婷99狠狠| 久久99激情五月天| 婷婷射图| 亚洲色小说在线综合| 天天做天天爱天天要| 久热超碰| 亚洲成人丁香花| 啪啪丁香五月| 26UUU欧美激情一区二区| 九九热99热| 99热这里都是精品| 亚洲视频码| 久久女婷| 深爱五月网| 欧美在线干| 97碰碰九九视频| 五月停亭六月,六月停亭的英语| 久久小视频免费| 天天在线XXX| 香蕉婷婷| 2022人人操人人看| 六月激情婷婷综合| 婷婷激情小说| 成人无码髙潮喷水A片| 日韩精品一区二区刘| 美女亚洲五月丁香| 亚洲美女网Va| 五月天色色色| 亚洲色激情| 狠狠色噜噜狠狠狠888了| www.色色五月天.com| 爱99干99| 999热在线视频| 思思精品热在线| 午夜色婷婷| bukadeavzaixian| 五月婷婷丁香五月亚洲色| 极品人妻VideOssS人妻| 免费视频WWW在线观看网站| 极品色丁香| 色婷婷五月综合在线| 99视频内射三四| 五月天久草| 玖玖色资源站| 日韩在线视频网站| 丁香六月婷婷色XXXX| 成人噜噜网| 婷婷日欧美在线观看| 嫩草AV久久伊人妇女超级A| 99久久婷婷五月综合| 婷婷六月爽| 综合激情五月丁香| 色婷婷丁香社综合| wwccc久久久| 五月丁香婷婷综合网| 五月天婷婷AV| 色久免费| www.天天干| 91人妻人人操人人爽| se影音资源在线观看| 性按摩玩人妻HD中文字幕| 五月色丁香| 丁香五月手机在线| 黄色av网站在线免费播放| 久青青久| 九九热中文| 狠狠综合久久综合| 亚洲综合色丁香五月天| 五月丁香在线| 任你擦免费视频| 婷婷精品性视频| 五婷婷综合网| 婷婷五月花免费视频在线| 五月丁香婷婷久久| 99干99| 99热99干| 丁香五月天AV在线| 丁香六月AV| 色色色综合网| 成人av在线网站| 熟女激情五月天| 婷婷热色| 婷婷五月激情欧美大胆视频| 久久这里只有精品99| 丁香五月香蕉| 欧美日本国产欧美日本韩国99| 色婷婷AV在线观看| 婷婷五月天激情AV影院| 婷婷五月丁香五月| 亚洲成人一区| 51XX午夜影福利| 亚洲激情| 五月丁香啪啪综合| 色99欧洲色19| 欧美va| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 91人妻人人做人碰人人爽九色| 五月丁香婷婷99| 香蕉AV777XXX色综合一区| 99干免费视频| 丁香五月婷婷激情123| 色婷婷成人做爰A片免费看网站 | 亚洲妇女熟BBW| 五月综合激情图片 | 五月激情六月丁香| 婷婷终合色图| 夜夜操天天干| 丁香五月婷婷亚洲激情四射| 欧美国产一区二区三区| 九九热这里只有精品9| 激情婷婷五月天在线观看| 激情五月婷婷视频| 激情网第四色| 日韩无码AV电影网站| www开心激情网| 国产,欧美,学生妹,视频| 很很干在线视频| 欧美槡BBBB槡BBB少妇| 秋霞三级影视资源| 少妇性按摩无码中文A片| 婷婷五月成年人| 激情六月天| 久久国产精品乱子伦_靑青草…| 五月色综合| 五月婷婷成人网首页| 99riav 亚洲| 天天cha成人综合网| 五月丁香婷婷欧美色图视频五月丁香777电影 | 婷婷五月天深爱| 91一起操| 伊人日日干| 九九99精品视品| 成人色色视频| 综合网色综合| 丁香五婷婷| 97碰碰碰| 99自拍视频在线观看| 九九99在线观看视频| 五月婷在线| 呦呦v线| 色综合网页| 天天碰夜夜爽| 性爱七区| 狠狠综合网| 色综合天天网| 射婷婷中文字幕| 99国产视频网| 久久草中文日韩欧美| 在线婷婷| 五月天激情网图片 - 百度| 91 影音先锋| va亚洲中文在线| 色蜜婷婷| 五月丁香婷婷成人网| 成人精品一区二区三区四区五区| 日本不卡高字幕在线2019 | 密黄站| www久久久久久久久久久| 人妻久久久久久久久久久| www.激情com| 思思热在线播放| 婷婷五月天亚洲色| 99ER热精品视频| 26uuu另类亚洲欧美日本一| 色综合色色色色| 色色色地址| 思思色播| 久热伊人91| 久综合| 日本女天天爽| 四虎99热在线观看网站| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 综合狠狠伊人| 婷婷五月色播天| 亭亭玉月丁香| 五月丁香日本在线视频观看| 激情五月天婷婷播播久久综合91| 五月开心色| 97成人丁香婷婷| 亚洲精品第一国产综合亚AV| 六月丁丁香| 丁香色情五月天| www.久久色.com| 深爱激情五月网| 秋霞黄色一级久久| 婷婷六月丁综合| 天天干夜晚夜操| 99视频精品全部免费观看| 91精品无码久久久久久五月天| 日日日日日| 噜噜色com| 99热网站| 日韩精品在线观看9| 色婷婷成人网| 99热精国产这里只有精品| 欧美图片丁香五月天| 白人荫道BBWBBB大荫道| 亚洲成人婷婷| 五月婷婷丁香深深爱| 国产精品色色| 色综合婷婷| 99热这里只有精品18| 99ri精品视频在线观看| 91九色超碰| 狼人婷婷久久| 色婷婷六月精品| 日本在线视频www色| 国产一二区爆乳_1国产日韩一区二区三-成人AV| 丁香六月婷婷| 狠色狠色狠色狠色狠色网| 久久 中文 日本| 强壮的公次次弄得我高潮A片日本 | 婷婷丁香五月综合免费视频百花| 亚洲激情高潮| 97人人看一| 欧美电影在线观看| 久久在这里99| 91精品国产综合久久密臀| 婷婷久热| 婷婷五月a| 免费观看全黄做爰的视频| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 狠狠操狠狠插| 日日夜夜小色哥| 五月激情丁香六月狠狠干| 91人人操人人看| 久草婷婷网 | 婷婷福利影院| 91超级碰| 九九在线视频| 亚州精品久久久久AV无码| 久久久妻人人人| 人人97操| 亚洲精品无码一区二区| 丁香五月婷婷啪| 日韩视频99| 五月天激情网图片 - 百度| www..999热久| 久久婷婷六月综合综合| 激情文学综合婷婷五月天丁香花| 日本一毛片| 国产五月天欧美色| 久久久五月激| 婷婷大乡焦噜噜| 久久久久久9热不雅视频| 日产精品久久久久久久蜜臀| 亚洲天堂久久| 色五月丁香伊人五月| 色婷綜合网| 思思视频久久| 亚洲精品影视| www.色色com| 九色视频九色九色91jiuseshipin| 另类小说五月天| 色婷婷av在线观看| 99久在线精品99re8热| 精品成人无码A片观看香草视频| 丁香五月天在线视频| 夜夜爱影院| 五月丁香偷拍| 婷婷五月天亚洲综合网| 亚洲中文字幕在线观看| 婷婷精品| 五月丁香欧美综合| 狠狠狠狠狠狠| 五月丁香六月综合激情无码软件亮点| 天天插天天很| 色五月丁香总合网| 九九日本视频| 欧美婷婷| 五月丁香视频色色| 岛囯综合激情网| 成熟妇人A片免费看网站| 色九月婷婷| 亚洲欧美成人在线| 亚洲综合激情五月久久| 99九无网码| 亚洲精品视频电影| 这里有精品| 99精品视频网| 综合激情五月天六月婷免费视频| 伍月婷婷六月丁香| 色色色色色色97| 色色色色色色综合| 97激情五月天| 五月丁香天天| 色。 日日日| 777丁香六月青青草婷婷综合久月| 操一区| 丁香色婷婷| 亚洲婷婷在线播放十月| 欧美内射AA| 五月丁香久久网| www.超碰在线| www.久久爱| www.粉嫩av.com| 26UUU欧美激情一区二区| 丁香五月手机在线| AV网站免费在线| 久久婷婷综| 九九热超碰| 久久98| 天天搽天天射|