樹莓派:通過紅外控制藍牙音樂播放

【參考資料】
樹莓派學(xué)習(xí)筆記——UART使用
linux下串口調(diào)試(只用shell)

本文的目的是在上一篇文章(樹莓派紅外遙控測試)的基礎(chǔ)上狈涮,用紅外控制樹莓派,向藍牙模塊發(fā)送串口指令硕噩,進而控制藍牙模塊的音樂播放吹零。

【準備材料】

  1. 樹莓派一個
  2. 紅外接收器(本文用的是VS1838B)
  3. 紅外遙控器
  4. 藍牙模塊(BK8000L)
  5. 杜邦線若干條

【詳細步驟】
1.將所有配件連接起來
這是上次用到的遙控器和紅外接收器(VS1838B):

紅外遙控器
紅外遙控器

紅外接收器VS1838B
紅外接收器VS1838B

還有本次用到的藍牙模塊(BK8000L):
藍牙模塊
藍牙模塊

樹莓派引腳編號參考:
樹莓派引腳參考圖
樹莓派引腳參考圖

將藍牙模塊的串口接到樹莓派的串口上面,TX接RX铐望,RX接TX楚昭,VCC接3.3V栖袋,GND接GND,所有配件連接起來后:
配件連接圖
配件連接圖

2.修改樹莓派系統(tǒng)文件
因為樹莓派的串口默認用來遠程登錄用抚太,所有先修改系統(tǒng)文件塘幅,將其功能恢復(fù)昔案。
【1】修改 /boot/cmdline.txt
執(zhí)行

sudo leafpad /boot/cmdline.txt

刪除加粗部分:
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
最終變?yōu)?

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

網(wǎng)上還說要修改 /etc/inittab,不過在我的系統(tǒng)里面沒有這個文件晌块,不知道為什么爱沟。
網(wǎng)上說要注釋掉最后一行內(nèi)容:
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

最后重啟樹莓派。

2.測試藍牙模塊串口通信
根據(jù)模塊資料:

控制指令格式:AT+<CMD>[<param>]\r\n
數(shù)據(jù)反饋格式:<IND>[<param>]\r\n
說明:控制指令是控制主機給藍牙的控制命令匆背,以“AT+”開始后面緊跟<CMD>控制
指令呼伸,如果該指令帶參數(shù),則緊跟指令后繼續(xù)傳輸<param>參數(shù)钝尸,最后以”\r\n”結(jié)束括享。
數(shù)據(jù)反饋是藍牙把各種狀態(tài)和數(shù)據(jù)信息反饋給主機,<IND>是反饋指令珍促,如果需要帶參
數(shù)铃辖,則緊跟<IND>之后繼續(xù)傳輸<param>參數(shù)。
注意:
  \r\n:字符型為 換行猪叙,十六進制為 0x0D 娇斩,0x0A。
BK8000L串口控制指令
BK8000L串口控制指令

BK8000L串口查詢/反饋指令
BK8000L串口查詢/反饋指令

樹莓派上串口通信可以用Python的serial模塊穴翩,這里只做測試用犬第,為了方便就用shell直接發(fā)送命令了。
樹莓派中打開終端芒帕,輸入:

# echo -e 可以發(fā)送回車等特殊字符
echo -e "AT+MN\r" >/dev/ttyAMA0
cat /dev/ttyAMA0

第一條指令為向藍牙模塊發(fā)送串口指令"AT+MN\r"歉嗓,即請求藍牙模塊的名稱。"ttyAMA0"為樹莓派的串口設(shè)備名字
第二條指令為接收來自串口設(shè)備"ttyAMA0"的數(shù)據(jù)背蟆,例如上述命令執(zhí)行完畢后鉴分,如果順利的話,終端會返回藍牙模塊的名字:

NA: BK8000L

表示串口通信沒有問題带膀。

3.實現(xiàn)紅外控制藍牙模塊
要想實現(xiàn)對應(yīng)功能志珍,只需要通過樹莓派向藍牙模塊發(fā)送串口指令即可,如要向?qū)崿F(xiàn)播放/暫停功能本砰,需要通過串口想藍牙模塊發(fā)送:

AT+MA\r    
#\r為換行符

在上篇文章(樹莓派紅外遙控測試)中已經(jīng)實現(xiàn)了紅外控制樹莓派執(zhí)行相應(yīng)的命令碴裙,其中按鍵與對應(yīng)命令的配置文件存儲在 /home/pi/.lircrc 文件中。所以這次打開這個文件并編輯

sudo leafpad /home/pi/.lircrc

添加如下代碼并保存:

begin
    prog = irexec
    button = KEY_PLAY
    config = sudo echo -e "AT+MA\r" > /dev/ttyAMA0; cat /dev/ttyAMA0
end
begin
    prog = irexec
    button = KEY_NEXT
    config = sudo echo -e "AT+MD\r" > /dev/ttyAMA0; cat /dev/ttyAMA0
end
begin
    prog = irexec
    button = KEY_PREVIOUS
    config = sudo echo -e "AT+ME\r" > /dev/ttyAMA0; cat /dev/ttyAMA0
end
begin
    prog = irexec
    button = KEY_VOLUMEUP
    config = sudo echo -e "AT+CK\r" > /dev/ttyAMA0; cat /dev/ttyAMA0
end
begin
    prog = irexec
    button = KEY_VOLUMEDOWN
    config = sudo echo -e "AT+CL\r" > /dev/ttyAMA0; cat /dev/ttyAMA0
end

編輯完畢后保存退出点额,重啟紅外控制服務(wù),然后執(zhí)行 irexec

sudo /etc/init.d/lirc restart
irexec

最后手機連接藍牙模塊(BK8000L)并播放音樂莺琳,用遙控器的按鍵進行測試还棱。
以上代碼只寫了五個鍵(上一曲、下一曲惭等、播放/暫停珍手、增加音量、降低音量),更多功能以后再繼續(xù)添加琳要。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末寡具,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子稚补,更是在濱河造成了極大的恐慌童叠,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件课幕,死亡現(xiàn)場離奇詭異厦坛,居然都是意外死亡,警方通過查閱死者的電腦和手機乍惊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門杜秸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人润绎,你說我怎么就攤上這事撬碟。” “怎么了莉撇?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵呢蛤,是天一觀的道長。 經(jīng)常有香客問我稼钩,道長顾稀,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任坝撑,我火速辦了婚禮静秆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘巡李。我一直安慰自己抚笔,他們只是感情好,可當我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布侨拦。 她就那樣靜靜地躺著殊橙,像睡著了一般。 火紅的嫁衣襯著肌膚如雪狱从。 梳的紋絲不亂的頭發(fā)上膨蛮,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機與錄音季研,去河邊找鬼敞葛。 笑死,一個胖子當著我的面吹牛与涡,可吹牛的內(nèi)容都是我干的惹谐。 我是一名探鬼主播持偏,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼氨肌!你這毒婦竟也來了鸿秆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤怎囚,失蹤者是張志新(化名)和其女友劉穎卿叽,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桩了,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡附帽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了井誉。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蕉扮。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖颗圣,靈堂內(nèi)的尸體忽然破棺而出喳钟,到底是詐尸還是另有隱情,我是刑警寧澤在岂,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布奔则,位于F島的核電站,受9級特大地震影響蔽午,放射性物質(zhì)發(fā)生泄漏易茬。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一及老、第九天 我趴在偏房一處隱蔽的房頂上張望抽莱。 院中可真熱鬧,春花似錦骄恶、人聲如沸食铐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽虐呻。三九已至,卻和暖如春寞秃,著一層夾襖步出監(jiān)牢的瞬間斟叼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工春寿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留犁柜,地道東北人。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓堂淡,卻偏偏與公主長得像馋缅,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子绢淀,可洞房花燭夜當晚...
    茶點故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容