找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7824|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

開源一下可能是功能最全面的KT1025A MP3藍(lán)牙音頻數(shù)傳芯片模塊方案(源碼+電路)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:422399 發(fā)表于 2018-11-7 16:11 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
一、消費(fèi)類電子產(chǎn)品SOC芯片開發(fā)的一些經(jīng)驗

1、其實在開發(fā)軟件這個工作上,一些芯片原廠推出的SDK軟件包是非常值得學(xué)習(xí)和借鑒的

(1)、因為他們?yōu)榱朔奖阌脩糸_發(fā),和閱讀,以及一些驅(qū)動的寫法的重復(fù)利用,都是做了很多的工作,其中的思維和
方法都是值得借鑒和學(xué)習(xí)的

(2)、很多時候,我們開發(fā)一些不算龐大的系統(tǒng),總覺得自己寫的程序還是可以的,但是一旦功能復(fù)雜了,整個程序

的架構(gòu)就不得不重新的思考,這個時候,你就需要去參考別人高端人士的寫法和思維

(3)、我們開發(fā)過程中,芯片原廠開發(fā)包,基本都是“消息機(jī)制”、“宏選擇功能”、“大量的結(jié)構(gòu)體封裝”

我可以上傳一下芯片廠商提供的開發(fā)SDK,有300多個文件,我個人認(rèn)為整個框架清晰明了,值得學(xué)習(xí)


下面就進(jìn)入產(chǎn)品資料介紹環(huán)節(jié),請耐心的看一下,只要是有藍(lán)牙相關(guān)的需求,我都可能略知一二,也能回答一下。

二、首先說一下芯片的優(yōu)勢:

1、成本低,支持的功能特別多,使用其他及其簡單。照抄就行了

2、由于是國產(chǎn)的芯片,所以依托于海量的出貨量,和超強(qiáng)的市場競爭,所以拉低了成本

3、芯片內(nèi)部的軟件支持,也是接口非常豐富,值得深入研究


三、再說一下芯片的缺點:

1、芯片由于是SOC系統(tǒng),所以很多的功能都是以接口的形式,太個性化的功能可能實現(xiàn)非常費(fèi)勁

2、芯片由于帶音頻,所以不支持低功耗,手環(huán)、紐扣電池供電的場合就不合適了



四、藍(lán)牙芯片的介紹

    KT1025A芯片是一款支持藍(lán)牙音頻和數(shù)據(jù)以及U盤、TF卡播放的4合一的單芯片,芯片的亮點在支持TF卡或者U盤無損音樂的播放,以及簡單明了的串口AT控制功能,支持BLE透傳,以及SPP透傳功能。大大降低了嵌入藍(lán)牙在其它產(chǎn)品的開發(fā)難度。

    KT1025這個是我們在原廠芯片的基礎(chǔ)上,開發(fā)了軟件的芯片,配合壇友直接使用,超低成本3元RMB

可以適用于下面的這些類型的應(yīng)用:

1、藍(lán)牙音頻產(chǎn)品                如:藍(lán)牙音箱、藍(lán)牙耳機(jī)、車載藍(lán)牙 等等
2、藍(lán)牙數(shù)傳產(chǎn)品         如:智能門鎖、車載OBD檢測、智能小車、打印機(jī)、醫(yī)療設(shè)備數(shù)據(jù)采集
3、藍(lán)牙數(shù)傳+音頻產(chǎn)品        如:藍(lán)牙音樂燈、藍(lán)牙音樂廣播


廢話不多說,上芯片的手冊,和參考圖紙

KT1025A藍(lán)牙音頻數(shù)據(jù)BLE芯片參考原理圖如下:

注:原理圖中注釋說明設(shè)計時需特別注意
MCU
設(shè)計注意事項:
1、主控所有電源的退耦電容必須靠近芯片放置,
退耦電容的回路地必須最短回到該電源地.
2、藍(lán)牙匹配電路參數(shù)以調(diào)試結(jié)果為準(zhǔn)
4、為保證產(chǎn)品的安全可靠性,電池必須用帶保護(hù)板的電池

晶振選型:
封裝:兼容3225,M49S,HC49S等封裝
要求:穩(wěn)定性、一致性要好,
頻偏偏差:±10PPM以內(nèi)
電容:晶振匹配電容位置請預(yù)留

按鍵電路說明:
1、如果要做按鍵分離, R11上拉電阻最好
放在主板一邊
2、AD_KEY走線遠(yuǎn)離音頻線和數(shù)據(jù)線
3、電阻阻值盡量按我的來設(shè)計
4、按鍵功能定義還可以多加

充電電路說明:
這里采用的是專用充電管理芯片LP4054B
芯片的5腳是用來設(shè)置充電電流的
調(diào)節(jié)外部電阻R20可以設(shè)置充電電流的大小
最大充電電流不要超過800MA,否則有可能
損壞充電芯片

功放電路說明:
1、功放特點:
A、8W、防失真、7V耐壓、AB/D類可選
B、單聲道、帶過熱保護(hù)功能音頻功放
C、寬工作電壓范圍2.5V—7V
(HX8358)
D、超低EMI,高效率,音質(zhì)優(yōu)
2、8W輸出功率設(shè)置:
A、8W功率輸出的條件:
VDD=6V,RL=2Ω,Po=8W,THD+N≤10%
B、8W功率輸出設(shè)置:
芯片1腳(SD腳):
1、0V--0.7V,防失真啟動(功率輸出小
,沒有跛音)
2、0.7V--1.6V,防失真關(guān)斷
(條件滿足,功率輸出可達(dá)到8W)
 3、1.6V--VDD,防失真關(guān)斷,芯片關(guān)斷
(喇叭沒有聲音輸出)



單片機(jī)源程序:
  1. /*************************************************************************
  2. - 功能描述: 串口發(fā)送一個字節(jié)
  3. - 隸屬模塊: 外部
  4. - 參數(shù)說明:
  5. - 返回說明:
  6. - 注:         
  7. 1、每種芯片的串口輸出的方式不一樣,這里是我們自己的芯片的方式
  8. 2、您也只用修改這個接口封裝一下即可
  9. *************************************************************************/

  10. void func_send_byte( u8 dat )
  11. {
  12.     ctrl_uart_write(dat) ;/*替換這個接口*/
  13. }

  14. /*************************************************************************
  15. - 功能描述: 串口發(fā)送字符串
  16. - 隸屬模塊: 外部
  17. - 參數(shù)說明:
  18. - 返回說明:
  19. - 注:         
  20. *************************************************************************/
  21. void func_UartPutStr (const char *Str )
  22. {
  23.     while ( *Str)
  24.     {
  25.         func_send_byte ( *Str );
  26.         *Str++;
  27.     }
  28. }

  29. /*************************************************************************
  30. - 功能描述: 串口接收處理 --- 參考
  31. - 隸屬模塊: 外部
  32. - 參數(shù)說明:
  33. - 返回說明:
  34. - 注:         
  35. 1、串口接收都是采用中斷的方式,一定要設(shè)置一個超時的計數(shù)器,超時做錯誤處理
  36. 2、由于我們所有的命令都是以0x0D和0x0A作為結(jié)束,所以只用檢測0x0A就認(rèn)為接收完成
  37. *************************************************************************/

  38. void uart_isr_recv(u8 uto_buf)
  39. {
  40.     g_uart_flag.uart_timeout = UART_TIMEOUT ;/*一般100ms*/
  41.     g_uart_flag.uart_stop  = 0;
  42.     buf_uart1.buf[buf_uart1.index++] = uto_buf;/*字符存到緩存中*/
  43.     if(uto_buf == 0x0A)               /*收到數(shù)據(jù)0x0A則認(rèn)為一幀數(shù)據(jù)結(jié)束了*/
  44.     {
  45.         g_uart_flag.uart_stop  = 1;   /*接收完成標(biāo)志位置1*/
  46.         g_uart_flag.uart_analysis = 1;/*分析數(shù)據(jù)使能打開*/         
  47.         g_uart_flag.uart_timeout = 0 ;
  48.         uart_recv_ok_pro(buf_uart1.buf ,buf_uart1.index) ;  /*這里就是接收完成之后的處理*/
  49.         
  50.         /*這里添加你自己的應(yīng)用程序*/
  51.     }
  52. }


  53. /*************************************************************************
  54. - 功能描述: main
  55. - 隸屬模塊: 外部
  56. - 參數(shù)說明:
  57. - 返回說明:
  58. - 注:         
  59. *************************************************************************/
  60. void main()
  61. {
  62.     uart_init() ;/*串口初始化*/
  63.     delay_2ms(500) ;/*延時1秒*/
  64.         func_UartPutStr("AT+CA30\r\n") ;/*設(shè)置音量為30級*/
  65.     delay_2ms(500) ;/*延時1秒*/
  66.         func_UartPutStr("AT+CA15\r\n") ;/*設(shè)置音量為15級*/
  67.     delay_2ms(500) ;/*延時1秒*/
  68.         func_UartPutStr("AT+BD12354678\r\n") ;/*設(shè)置藍(lán)牙名為12345678*/
  69.     delay_2ms(500) ;/*延時1秒*/
  70.         func_UartPutStr("AT+CT02\r\n") ;/*設(shè)置波特率為19200 -- 參考手冊*/
  71.     delay_2ms(500) ;/*延時1秒*/

  72.     while(1) ;
  73. }
復(fù)制代碼


全部資料51hei下載地址:
資料打包.zip (1.32 MB, 下載次數(shù): 147)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:448325 發(fā)表于 2018-12-17 20:20 | 只看該作者
不錯不錯
回復(fù)

使用道具 舉報

板凳
ID:422399 發(fā)表于 2019-2-25 17:18 | 只看該作者
頂一頂,沉了
回復(fù)

使用道具 舉報

地板
ID:706197 發(fā)表于 2020-3-29 01:25 | 只看該作者
看不懂,還是謝謝,學(xué)習(xí)一下。
回復(fù)

使用道具 舉報

5#
ID:689033 發(fā)表于 2021-3-26 09:56 | 只看該作者
zlp里沒有SDK,能否提供?
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表