那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

KT148A一線串口通訊的注意事項以及常見的調試問題點總結歸納

清月電子 ? 來源:清月電子 ? 作者:清月電子 ? 2022-09-26 14:39 ? 次閱讀

一、簡介
KT148A語音芯片是受主MCU控制的,使用的是單線通訊的方式,也就是俗稱串口通信,注意不是UART通信,通信的協議也是非標準的,詳細的可以看看芯片說明書。

pYYBAGMxSOiAGpzqAAG2B9D372c780.png

二、詳細說明
2.1 我們給出的參考代碼
/*******************************************************************************
- 函數說明:一線通數據發送【注意調試的時候,用示波器或者邏輯分析儀看一下脈沖寬度】
- 隸屬模塊:內部
- 參數說明:dat = 待發送的數據
- 返回說明:無 -- 這里對應的就是PA6這個GPIO ,不同的MCU,對于IO口的操作不同,這個自己理解了
- 備注:整體的通訊邏輯如下:
1、先把數據線DATA,也就是ONELINE,拉低 6ms 后,發送 8 位數據,先發送低位,再發送高位。
2、使用高電平和低電平比例來表示每個數據位的值。
3、推薦使用 200us:600us。取值范圍:窄脈沖=[150us--400us] 寬脈沖[500us--1000us]
********************************************************************************/
#define IO1_HIGH() JL_PORTA->DIR &= ~BIT(6);JL_PORTA->OUT |= BIT(6); //PA6輸出高電平
#define IO1_LOW() JL_PORTA->DIR &= ~BIT(6);JL_PORTA->OUT &= ~BIT(6); //PA6輸出低電平
void oneline_send_one_data(u8 dat)
{
u8 i = 0 ;
IO1_LOW() ;/*現將總線拉低*/
udelay(5000) ;/*延時6MS --- 這里就是發起通訊的起始信號------注意不同的芯片延時不一樣,請自行測試*/
OS_ENTER_CRITICAL();//關中斷--芯片不同,可能接口不同
for(i=0 ; i<8 ;i++){
if(dat & 0x01){
IO1_HIGH() ;
udelay(500);/*延時600us*/
IO1_LOW();
udelay(170) ;/*延時200us*/
}else{
IO1_HIGH() ;
udelay(170);/*延時200us*/
IO1_LOW();
udelay(500) ;/*延時600us*/
}
dat = dat >> 1 ;/*發送的時候,先發送最高位,再發送次高位,以此類推*/
}
IO1_HIGH() ;/*空閑時將該腳拉高即可*/
OS_EXIT_CRITICAL();//開中斷
/*同時注意,芯片初始化的時候,請將信號腳拉高。*/
}
程序調用的接口如下:
oneline_send_one_data(0x05);//對應播放第5段聲音
發不同的命令,就請對照詳細的手冊,有描述的,耐心看看 ,詳細看看手冊的章節三和章節四

/******************************例程可能出現的疑惑********************************
1、為什么按照例程發的數據,沒反應呢?
==》面對這個問題,應該是借助儀器:示波器、邏輯分析儀等等儀器來測試你的波形
==》而不是來問我們什么原因,我們也沒法給出意見,最好用儀器看一下,找出問題來

2、為什么程序里面,需要關中斷、再來開中斷呢?
==》這樣的目的,是為了保證波形的完整性,因為你的,注意是你的mcu運行時候,可能存在
多種中斷交替,這樣就會導致在發送波形的途中,被打斷,導致時間變長,或者其他
==》這個就看你具體的程序邏輯了,其實這樣的問題我們也不想回答,這是您應該知道的
********************************************************************************/

poYBAGMxSPSAXR9-AAHMaNhm9cg285.png

2.2 參考波形圖--邏輯分析儀

注意點:
1、起始信號一定不能低于6ms ,請嚴格按照這個去寫程序
2、遇到問題,第一時間,請用工具,用工具,不要一開始就問我們怎么發數據了,沒反應,很崩潰的
3、另外很多的工程師,可能不習慣于用邏輯分析儀,都喜歡拿示波器去量。真的實在是太痛苦了
只要是數字信號,推薦邏輯分析儀,不僅波形抓起來漂亮直觀,抓數據的時間還長,

強烈推薦使用,老手請忽視


2.3 關于芯片待機5秒自動進入待機

1、由于芯片要兼容低功耗的應用,所以不得不設計一個低功耗的機制

2、芯片一旦進入空閑,計時超過5秒之后,自動待機,功耗為25uA左右。進入待機之后芯片所有的外設都是關閉的,包括busy腳也是弱上拉的狀態

3、進入待機之后,芯片的data腳,設置的是下降沿喚醒,所以當主MCU發送數據的時候,為什么前面需要6ms的起始信號,很大一部分的原因,是因為芯片喚醒之后到正常讀取一線的數據,中間需要大概2-3ms的時間 。所以起始信號一定要給足6ms


2.4 關于芯片低功耗的F0指令說明

1、如果需要芯片的功耗再低,則需要發送F0指令,任何狀態下都可以

2、芯片接收到F0指令之后,就會進入關機狀態,功耗維持在1.7uA左右
3、如果需要芯片再次接收指令,必須先將dat信號拉低40ms,讓芯片被喚醒,再發送數據就可以了
==》這里的主MCU發送40ms的低電平之后,再緊接著將data腳拉高就可以了
==》此時如果需要發指令,就再延時個15ms就可以了,合計也就是65ms左右了

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17324

    瀏覽量

    352658
  • 串口
    +關注

    關注

    14

    文章

    1558

    瀏覽量

    77062
  • 語音芯片
    +關注

    關注

    12

    文章

    1775

    瀏覽量

    36768
收藏 人收藏

    評論

    相關推薦

    UART串口通訊硬件常見注意事項有哪些

    串口通訊的數據格式是怎樣的?串口通訊硬件常見注意事項有哪些?
    發表于 12-06 07:28

    KT148A語音芯片的常見問題

    (1)、KT148A顆專用于語音播報,芯片內置420秒的語音空間,直驅揚聲器,可以重復燒錄,用戶也可以自己更換聲音,使用簡單的一線串口控制,成本低,性價比高
    的頭像 發表于 07-03 09:12 ?901次閱讀

    DSP語音芯片KT148A簡介

    九齊ny3p語音芯片替代方案國產KT148A性價比更高420秒長度
    的頭像 發表于 07-30 10:39 ?2857次閱讀
    DSP語音芯片<b class='flag-5'>KT148A</b>簡介

    KT148A語音芯片怎么燒錄語音進入芯片里面

    KT148A語音芯片怎么燒錄語音進入芯片里面,這里需要用到串口和電腦端的工具
    的頭像 發表于 08-01 09:01 ?2586次閱讀
    <b class='flag-5'>KT148A</b>語音芯片怎么燒錄語音進入芯片里面

    KT148A語音芯片的工作原理及架構

    KT148A芯片內部采用的是 MCU + spiflash架構,是疊層封裝在起的,也就是兩顆晶圓封在顆芯片里面
    的頭像 發表于 08-01 09:00 ?1580次閱讀
    <b class='flag-5'>KT148A</b>語音芯片的工作原理及架構

    KT148A語音芯片替代OTP常見問題集錦

    KT148A是什么? 具備哪些功能? 有什么特色?
    的頭像 發表于 11-21 09:03 ?1145次閱讀
    <b class='flag-5'>KT148A</b>語音芯片替代OTP<b class='flag-5'>常見</b>問題集錦

    語音芯片KT148A一線串口KT148A串口版本以及按鍵版本有什么區別_V1

    目前KT148A語音芯片自帶的程序,分為兩個版本,分別是 1、一線串口版本:應用場景是搭配MCU,KT148A受到MCU的控制,來播放語音 2、按鍵版本:
    發表于 11-21 11:44 ?529次閱讀
    語音芯片<b class='flag-5'>KT148A</b>的<b class='flag-5'>一線</b><b class='flag-5'>串口</b>和<b class='flag-5'>KT148A</b>的<b class='flag-5'>串口</b>版本<b class='flag-5'>以及</b>按鍵版本有什么區別_V1

    KT148A語音芯片按鍵版本一對一觸發播放功能描述V4

    KT148A語音芯片--按鍵版本,支持3個IO口一對一觸發 。同時也支持用戶自己更換芯片內部的聲音文件,方法,參考我們另外份文檔的描述“20220704_KT148A芯片自己更換聲音
    的頭像 發表于 11-21 15:42 ?1005次閱讀
    <b class='flag-5'>KT148A</b>語音芯片按鍵版本<b class='flag-5'>一對一</b>觸發播放功能描述V4

    KT148A語音芯片420s秒的語音空間是什么意思

    我想問KT148A這個芯片真的能存420秒的語音么?我隨便個5秒的語音mp3格式都65k了,如果是這樣的話 那我的mp3的源文件在最小的采樣率和最小碼率的情況下 mp3文件可以支持多大?有沒有實際測試的數據,使用的是
    的頭像 發表于 01-12 17:20 ?751次閱讀
    <b class='flag-5'>KT148A</b>語音芯片420s秒的語音空間是什么意思

    KT148A語音芯片的下載用的是串口,測試可以直接串口發指令控制嗎?

      KT148A語音芯片的下載用的是串口,那我實際測試是不是可以直接串口發指令測試控制?就不用單獨寫程序去模擬一線串口的時序了
    的頭像 發表于 11-14 14:21 ?760次閱讀
    <b class='flag-5'>KT148A</b>語音芯片的下載用的是<b class='flag-5'>串口</b>,測試可以直接<b class='flag-5'>串口</b>發指令控制嗎?

    KT148A語音芯片使用串口uart本控制的完整說明_包含硬件和指令舉例

    KT148A肯定是支持串口的,有客戶反饋使用一線還是不方便,比如些大型的系統不適合有延時的操作,所以更加傾向于使用uart控制,這里我們也給出解決方案 延伸出來另外
    的頭像 發表于 11-17 09:05 ?757次閱讀
    <b class='flag-5'>KT148A</b>語音芯片使用<b class='flag-5'>串口</b>uart本控制的完整說明_包含硬件和指令舉例

    KT148A-SOP8語音芯片接收到一線串口指令到播放聲音大概多長時間

    請問KT148A-SOP8語音芯片接收到一線串口指令,到播放出來聲音,大概需要多長時間 我的需求是做按鍵提示音,初測了下感覺有延時,這個要如何處理
    的頭像 發表于 06-21 11:55 ?571次閱讀
    <b class='flag-5'>KT148A</b>-SOP8語音芯片接收到<b class='flag-5'>一線</b><b class='flag-5'>串口</b>指令到播放聲音大概多長時間

    KT148A語音芯片的7腳VDDIO平時是2.8V,響語音時變成3.3V是為什么呢

    KT148A語音芯片的7腳=VDDIO,是KT148A芯片內部的LDO輸出引腳,是芯片的電源輸出 而8腳,才是電源的輸入端 。但是這里面還有使用細節,詳見“問題集錦2”
    的頭像 發表于 01-04 11:11 ?178次閱讀
    <b class='flag-5'>KT148A</b>語音芯片的7腳VDDIO平時是2.8V,響語音時變成3.3V是為什么呢

    KT148A語音芯片的聲音小,如何讓喇叭聲音變大?聲音影響注意

    聲音的大小是個系統的工作,KT148A本身驅動聲音的能力是很大的,達到200mA,通過電流也可以看出來。所以般8歐姆1w以內的,不需要考慮外掛功放 喇叭的選擇原則上越大越好,視結構而定。 盡量選擇紙盆類型的喇叭【某寶搜搜
    的頭像 發表于 01-10 09:53 ?114次閱讀
    <b class='flag-5'>KT148A</b>語音芯片的聲音小,如何讓喇叭聲音變大?聲音影響<b class='flag-5'>注意</b><b class='flag-5'>點</b>

    KT148A語音芯片一線串口和5V單片機MCU相連需要串電阻嗎?

    KT148A語音芯片一線串口IO口,和5V的單片機或者MCU系統相連,需要串電阻嗎? 串多大的電阻合適呢?
    的頭像 發表于 01-20 09:40 ?114次閱讀
    <b class='flag-5'>KT148A</b>語音芯片<b class='flag-5'>一線</b><b class='flag-5'>串口</b>和5V單片機MCU相連需要串電阻嗎?
    玩百家乐高手支招篇| 百家乐顶尖高手| 三亚百家乐的玩法技巧和规则| 大发888真钱娱乐游戏博彩| 张家港市| 百家乐官网园云鼎赌场娱乐网规则 | 大发888 充值| 百家乐官网优惠现金| 百家乐官网007| 百家乐电投网址| 在线棋牌游戏平台| 澳门1百家乐官网网| 网上赌百家乐可信吗| 青鹏棋牌官网下载| 百家乐官网视频游戏挖坑| 百乐坊百家乐游戏| 大发888现金存款| 百家乐官网单注技巧| 百家乐官网证据| 百家乐娱乐分析软件v| 罗马百家乐官网娱乐城| 百家乐视频二人麻将| 财神娱乐城信誉| 广州百家乐官网桌子| 威尼斯人娱乐诚| 百家乐官网代打是真的吗| 百家乐现金投注信誉平台| 大发888开户送58| 闲和庄百家乐官网娱乐平台| 红桃K百家乐的玩法技巧和规则| 新闻| 真人百家乐ea平台| 大荔县| 澳门百家乐海星王| 博狗备用网站| 澳门百家乐官网手机软件| 大连棋牌网| 百家乐官网光纤冼牌机| 大发888娱乐总代理qq| 百家乐官网有公式| 德州扑克高级教程|