久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
OV7670迷你STM32照相機 制作資料 含電路圖 源碼
[打印本頁]
作者:
51hei學習技術中
時間:
2016-10-12 16:12
標題:
OV7670迷你STM32照相機 制作資料 含電路圖 源碼
1 軟件程序設計
簡易聲音播放器的軟件工作過程:通過SPI1從SD卡中讀取聲波文件,將所讀取的部分存放在一個緩沖
器中,利用TIMER2通道1定期產生的中斷,從緩沖器中讀取聲音數據,然后根據聲音數據通過TIMER4的
通道3產生不同頻率方波輸出。這里使用了兩個緩沖器,一個用于存放從SD卡讀到的聲音數據,另一個
用于將聲音數據輸出到PWM,兩個緩沖區的功能不斷交替,形成一個由2個緩沖區構成的環形緩沖。播
放聲波文件由PC機通過超級終端以命令的方式選擇,聲音的播放狀態也顯示在PC機超級終端上。
該系統軟件程序主要包含以下源文件,下面分別介紹其中主要的一些函數。限于篇幅這里不能給出工程的
全部源代碼,讀者可在realview網站下載。
main.c
該源文件包含以下幾個主要函數:
SetupClock:用于初始化并設置系統時鐘,并允許GPIOA、GPIOB、TIM2、TIM4和SPI的時鐘;
Speaker_Timer_Config:用于配置定時器TIM2和TIM4,TIM4的通道3處于PWM1模式;TIM2的通道1工作于
輸出比較模式,定期發出中斷,在每次中斷修改TIM4通道3相關寄存器,使之產生不同頻率的方波;
USART_Scanf_Name和USART_Scanf_Cmd:用于從超級終端獲取輸入字符串;
PrintPass:用于在超級終端上輸出提示符"X:>";
main: 主函數,首先初始化系統時鐘、串口、連接SD卡的SPI1,與SD進行通訊初始化,檢測并在超級
終端上打印SD卡的信息;然后根據用戶在超級中輸入的命令進行操作,這里有"dir"、"cd"、"read"、
"free"、"play"五個簡單的命令,分別是目錄項列表、目錄更換、以文本方式讀取文件、查詢SD空余
空間和播放聲音文件;如果輸入"Play ***.wav",則處理器開始從SD卡中讀取相應的聲波文件,并將
其放入相應的緩沖區;
msd.c
該文件用于提供SD卡的驅動,由ST公司所帶例程提供,本系統用到以下一些函數。
SPI_Config:配置與SD卡相連接的SPI1;
MSD_Init:初始化SD卡通訊;
MSD_WriteByte:向SD卡寫一個字節;
MSD_WriteByte:從SD卡讀一個字節;
MSD_GoIdleState:令SD卡處于空閑態;
Get_Medium_Characteristics:獲取SD卡的容量;
MSD_SendCmd:向SD卡發命令;
MSD_GetResponse:從SD卡獲取響應;
MSD_ReadBlock:從SD卡讀取一塊數據;
fat16.c
該文件提供FAT16文件系統的支持,主要包含以下一些函數:
ReadMBR:讀取MBR數據結構;
ReadBPB:讀取BPB數據結構;
ReadFAT:讀取文件分配表指定項;
ReadBlock:讀取一個扇區;
FAT_Init:獲取FAT16文件系統基本信息;
DirStartSec:獲取根目錄的開始扇區號;
DataStartSec:獲取數據區的開始扇區號;
ClusConvLBA:獲取一個簇的開始扇區號;
LBAConvClus:轉換扇區號與簇號之間的關系;
LBAConvClus:計算可用空間,返回字節數;
GetFileName:獲取指定文件的首扇區號;
List_DateAndTime:獲取文件或目錄項的日期時間;
SearchFoler:在指定范圍內查找子目錄;
List_AllDir_Long:列出指定范圍內的目錄及目錄信息;
FAT_FileOpen:打開指定文件;
FAT_FileRead:讀取文件數據;
uart.c
該文件提供USART串口驅動函數,可以參考7.5串行通訊接口實例的程序;
hw_config.c
該文件包含系統初始化設置函數和中斷配置函數。
Set_System:用于提供系統時鐘及電源設置;
NVIC_Config:用于設置中斷向量,允許TIM2中斷;
stm32f10x_it.c
該文件僅包含一個函數TIM2_IRQHandler,即在每次TIM2中斷時從緩沖器中讀取音頻數據送TIM4定時器,
以用于產生不同頻率的聲音。
UnicodeToGB2312.c
該文件僅包含一個函數UnicodeToGB2312,處理從UniCode編碼到GB2312字符的轉換,用于處理長文件名。
2 運行過程
(1) 使用MDK通過ULINK 2仿真器連接開發板,或使用兩根USB電纜分別將CN1和CN5 與PC機USB端口相連
(使用板上自帶的UlinkMe);
(2) 使用串口線將開發板的串口COM0與PC機連接,在PC機上運行windows自帶的超級終端串口通信程序
(波特率115200、1位停止位、無校驗位、無硬件流控制);或者使用其它串口通信程序;
(3) 打開實驗例程目錄MP3 Player\Simple Wave Player下的Simple Wave Player.Uv2工程,將其編譯鏈
接后燒寫到開發板中;
(4) 將帶有測試聲波文件TEST1.wav、TEST2.wav拷貝到SD卡中,并將SD插入評估板的SD連接器中;
(5) 重啟動開發板,在超級終端上將看到SD卡的信息以及提示符"X:>",鍵入dir命令然后回車將列出
SD卡上的所有文件和目錄;
(6) 可在超級終端中輸入"dir"、"cd"、"free"、"read"等命令(注:read 命令后跟文件名;讀出并
輸出文件的文本內容,可以正確顯示文本文件如以txt,c,h,s為后綴的文件),觀察運行結果;注意,
由于程序中沒有進行大小寫轉換,因此命令只能使用小寫;
(7) 在超級終端中輸入"play TEST1.wav"或"play TEST2.wav",如果程序運行正常,通過開發板的揚聲
器或者耳機將能聽到音樂聲。
0.png
(129.87 KB, 下載次數: 64)
下載附件
2016-10-12 16:09 上傳
0.png
(56.39 KB, 下載次數: 77)
下載附件
2016-10-12 16:09 上傳
所有資料下載含源程序:
迷你STM32照相機OV7670.zip
(4.41 MB, 下載次數: 108)
2016-10-12 16:12 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
pong
時間:
2021-6-5 18:36
可惜沒有Altium Designer的電路圖工程文件,只是原理圖的pdf
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
中文在线观看视频
|
中文字幕欧美在线
|
四虎精品视频
|
伊人国产精品
|
天天干夜夜草
|
91手机在线视频
|
一色桃子av
|
国产午夜在线观看
|
亚洲日本视频
|
在线观看国产免费视频
|
五月天一区二区三区
|
91免费在线看
|
国产www视频
|
亚洲欧美精品
|
国产免费黄色片
|
伊人干综合
|
日韩一级大片
|
一区二区在线免费观看
|
成人免费网站黄
|
午夜精品999
|
久久国产精品免费视频
|
蜜桃色999
|
一区二区在线免费观看
|
欧美日本在线
|
欧洲av网站
|
欧美一级淫片免费视频黄
|
欧美精品乱码视频一二专区
|
国产精品久久一区二区三区
|
久久av影院
|
www.麻豆av
|
国产精品一区一区三区
|
久久一二三区
|
欧美激情五月
|
国产一级免费视频
|
一区二区在线看
|
一区二区三区在线观看免费
|
日韩欧美三级
|
久久五月婷
|
中文字幕在线观看亚洲
|
久久成人精品视频
|
午夜在线视频观看
|