標題: 基于SC95F8616單片機的中文菜單MP3點歌器 (1) [打印本頁]
作者: jinglixixi 時間: 2020-8-6 21:48
標題: 基于SC95F8616單片機的中文菜單MP3點歌器 (1)
SC95F8616開發板是一個核心板式的最小系統,因此它的資源是全部向外敞開的;诖诉@里就將它與OLED屏、軟按鍵、MP3播放模塊等組合在一起,來構建一個具有中文歌曲選擇播放功能的播放器,其構成如圖1所示。
1.jpg (18.58 KB, 下載次數: 36)
下載附件
2020-8-6 21:40 上傳
圖1 硬件構成
在程序設計方面,采用易碼魔盒來開發,所涉及內容有OLED驅動函數的構建、按鍵的菜單選擇及MP3的功能選擇、串行通訊及MP3的指令發送等。
1.創建新工程
1)進入易碼魔盒后,創建一個新工程。
2)將芯片型號設為“SC95F8616”,然后單擊“開始項目”。
3)在芯片配置視圖,按圖2進行引腳配置,并按圖3來設置UART0選項,按圖4來設置獨立按鍵選項。
2.jpg (14.12 KB, 下載次數: 36)
下載附件
2020-8-6 21:40 上傳
圖2 引腳配置
3.jpg (14.4 KB, 下載次數: 44)
下載附件
2020-8-6 21:40 上傳
圖3 UART0設置
4.jpg (20.57 KB, 下載次數: 40)
下載附件
2020-8-6 21:40 上傳
圖4 獨立按鍵設置
這樣就形成了,以P20為串行通訊的接收端,P21為串行通訊的發送端;以P07為按鍵的公共GND;以P12為OLED屏的數據端,P13為OLED屏的時鐘端的引腳分配布局。
4)點擊“生成工程源代碼”, 則在“工程代碼”欄可見到生成的內容,其程序結構和程序如圖5所示。
5.jpg (16.55 KB, 下載次數: 35)
下載附件
2020-8-6 21:40 上傳
6.jpg (27.36 KB, 下載次數: 49)
下載附件
2020-8-6 21:40 上傳
7.jpg (5.2 KB, 下載次數: 54)
下載附件
2020-8-6 21:40 上傳
8.jpg (23.13 KB, 下載次數: 49)
下載附件
2020-8-6 21:40 上傳
圖5 程序結構和初始化程序
2.實現串行通訊
1)完成變量的添加
9.jpg (4.31 KB, 下載次數: 31)
下載附件
2020-8-6 21:40 上傳
2)在用戶程序圖形化編輯視圖,完成圖6所示流程,并對條件控制語句加以配置。
10.jpg (5.61 KB, 下載次數: 38)
下載附件
2020-8-6 21:40 上傳
圖6程序流程
11.jpg (12.17 KB, 下載次數: 52)
下載附件
2020-8-6 21:40 上傳
12.jpg (14.2 KB, 下載次數: 33)
下載附件
2020-8-6 21:40 上傳
圖7 配置條件控制語句
3)點擊“生成工程源代碼”, 則可得到圖8所示的主程序和串行通訊中斷處理服務程序。
13.jpg (6.41 KB, 下載次數: 58)
下載附件
2020-8-6 21:40 上傳
14.jpg (26.38 KB, 下載次數: 42)
下載附件
2020-8-6 21:40 上傳
圖8生成代碼
4)點擊“編譯”工具圖標,完成代碼編譯后如圖9所示。
15.jpg (15.25 KB, 下載次數: 41)
下載附件
2020-8-6 21:40 上傳
圖9 完成編譯
5)點擊“燒錄”工具圖標,完成程序下載后如圖10所示。
16.jpg (85.84 KB, 下載次數: 42)
下載附件
2020-8-6 21:40 上傳
圖10 執行下載
6)在串行通訊驗證前,先將P21和P20分別與串口通信模塊的RXD和TXD引腳連接。
打開串口調試工具并進行相應的設置后,發送數據,則可見到相應的接收數據,說明通訊正常,見如圖11所示。
17.jpg (34.31 KB, 下載次數: 44)
下載附件
2020-8-6 21:40 上傳
圖11 串口通信驗證
7)發送字節數據的功能實現,首先定義變量n,以便存放發送的字節內容。
18.jpg (5.06 KB, 下載次數: 47)
下載附件
2020-8-6 21:40 上傳
8)添加2個功能函數,其內容如下:
void delay(unsignedint z)
{
unsignedint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void SendByte(uint8_tData)
{
SBUF = Data;
delay(60);
}
9)按圖12所示,添加自定義函數。
19.jpg (3.3 KB, 下載次數: 43)
下載附件
2020-8-6 21:40 上傳
20.jpg (20.85 KB, 下載次數: 31)
下載附件
2020-8-6 21:40 上傳
21.jpg (3.37 KB, 下載次數: 46)
下載附件
2020-8-6 21:40 上傳
圖12 添加自定義函數
10)完成如下主程序的修改,并加以編譯。下載后,運行的結構如圖15所示。
22.jpg (10.22 KB, 下載次數: 45)
下載附件
2020-8-6 21:40 上傳
圖13修改主程序
23.jpg (12.08 KB, 下載次數: 44)
下載附件
2020-8-6 21:40 上傳
圖14 生成的主程序
24.jpg (38.49 KB, 下載次數: 46)
下載附件
2020-8-6 21:40 上傳
圖15 運行結果
| 歡迎光臨 (http://www.denmoz.com/bbs/) |
Powered by Discuz! X3.1 |