【輕松玩藍牙】序列之11:按鍵中斷
本節我們主要是從下面4個(gè)方面進(jìn)行講解:
本文引用地址:http://dyxdggzs.com/article/269801.htm1.準備工作
2.硬件部分
3.軟件部分
4.效果展示
一、準備工作
1.電腦一臺;
2.已經(jīng)安裝好了MDK;
3.已經(jīng)安裝了nRF51_sdk軟件;
4.已經(jīng)安裝了nrfgostudio_win-32;
5.以上已經(jīng)確定安裝成功了;
6.藍牙開(kāi)發(fā)板。
二、硬件部分
nRF51822 是 cortex m0 內核, 其串口通信也和其他的cortex m0 內核的處理器相同。并且在官方代碼里給出了 uart 的參數配置庫函數代碼,這樣使用起來(lái)非常容易上手。硬件連接如下圖所示:
1.LED燈的硬件部分

2.串口的硬件部分
如下圖所示: 青云 QY-nRF51822 開(kāi)發(fā)板上,通過(guò)高質(zhì)量的芯片 CP2102 實(shí)現 usb 轉串口,下面是 nrf51822的芯片串口管腳分配:
管腳 P0.08 連接 CTS
管腳 P0.09 連接 TXD
管腳 P0.10 連接 RTS
管腳 P0.11連接 RXD,


3.按鍵的硬件部分
如下圖所示,用戶(hù)按鍵有兩個(gè):Button0和Button1,按鍵掃描用到了Button0按鍵,主要是通過(guò)外部按鍵中斷來(lái)控制LED3的翻轉,當按下時(shí),LED3亮,再按一次LED3滅。


三、軟件部分
1.有了前面一節的基礎,那下面就比較簡(jiǎn)單了,我們只需要編寫(xiě)主函數和按鍵接口函數即可。
2.主要包括下面3個(gè)文件:main.c、exit.c和exit.h。如下圖所示

3.主函數部分。如下圖所示:


4.外部中斷源文件。如下圖所示:


5.外部中斷驅動(dòng)頭文件。如下圖所示:

四、效果展示
下面是下載之后效果驗證,LED燈進(jìn)行翻轉說(shuō)明系統在運行,串口通信顯示正常,按下Button0時(shí)LED3會(huì )亮,再按下Button0時(shí)LED3會(huì )滅。如下圖所示:



評論