久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

OV7670迷你STM32照相機(jī) 制作資料 含電路圖 源碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:140725 發(fā)表于 2016-10-12 16:12 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
1 軟件程序設(shè)計(jì)
        簡易聲音播放器的軟件工作過程:通過SPI1從SD卡中讀取聲波文件,將所讀取的部分存放在一個(gè)緩沖
        器中,利用TIMER2通道1定期產(chǎn)生的中斷,從緩沖器中讀取聲音數(shù)據(jù),然后根據(jù)聲音數(shù)據(jù)通過TIMER4的
        通道3產(chǎn)生不同頻率方波輸出。這里使用了兩個(gè)緩沖器,一個(gè)用于存放從SD卡讀到的聲音數(shù)據(jù),另一個(gè)
        用于將聲音數(shù)據(jù)輸出到PWM,兩個(gè)緩沖區(qū)的功能不斷交替,形成一個(gè)由2個(gè)緩沖區(qū)構(gòu)成的環(huán)形緩沖。播
        放聲波文件由PC機(jī)通過超級(jí)終端以命令的方式選擇,聲音的播放狀態(tài)也顯示在PC機(jī)超級(jí)終端上。
該系統(tǒng)軟件程序主要包含以下源文件,下面分別介紹其中主要的一些函數(shù)。限于篇幅這里不能給出工程的
全部源代碼,讀者可在realview網(wǎng)站下載。

main.c
該源文件包含以下幾個(gè)主要函數(shù):
         SetupClock:用于初始化并設(shè)置系統(tǒng)時(shí)鐘,并允許GPIOA、GPIOB、TIM2、TIM4和SPI的時(shí)鐘;
         Speaker_Timer_Config:用于配置定時(shí)器TIM2和TIM4,TIM4的通道3處于PWM1模式;TIM2的通道1工作于
        輸出比較模式,定期發(fā)出中斷,在每次中斷修改TIM4通道3相關(guān)寄存器,使之產(chǎn)生不同頻率的方波;
         USART_Scanf_Name和USART_Scanf_Cmd:用于從超級(jí)終端獲取輸入字符串;
         PrintPass:用于在超級(jí)終端上輸出提示符"X:>";
         main: 主函數(shù),首先初始化系統(tǒng)時(shí)鐘、串口、連接SD卡的SPI1,與SD進(jìn)行通訊初始化,檢測并在超級(jí)
        終端上打印SD卡的信息;然后根據(jù)用戶在超級(jí)中輸入的命令進(jìn)行操作,這里有"dir"、"cd"、"read"、
        "free"、"play"五個(gè)簡單的命令,分別是目錄項(xiàng)列表、目錄更換、以文本方式讀取文件、查詢SD空余
        空間和播放聲音文件;如果輸入"Play ***.wav",則處理器開始從SD卡中讀取相應(yīng)的聲波文件,并將
        其放入相應(yīng)的緩沖區(qū);

msd.c
該文件用于提供SD卡的驅(qū)動(dòng),由ST公司所帶例程提供,本系統(tǒng)用到以下一些函數(shù)。
         SPI_Config:配置與SD卡相連接的SPI1;
         MSD_Init:初始化SD卡通訊;
         MSD_WriteByte:向SD卡寫一個(gè)字節(jié);
         MSD_WriteByte:從SD卡讀一個(gè)字節(jié);
         MSD_GoIdleState:令SD卡處于空閑態(tài);
         Get_Medium_Characteristics:獲取SD卡的容量;
         MSD_SendCmd:向SD卡發(fā)命令;
         MSD_GetResponse:從SD卡獲取響應(yīng);
         MSD_ReadBlock:從SD卡讀取一塊數(shù)據(jù);

fat16.c
該文件提供FAT16文件系統(tǒng)的支持,主要包含以下一些函數(shù):
         ReadMBR:讀取MBR數(shù)據(jù)結(jié)構(gòu);
         ReadBPB:讀取BPB數(shù)據(jù)結(jié)構(gòu);
         ReadFAT:讀取文件分配表指定項(xiàng);
         ReadBlock:讀取一個(gè)扇區(qū);
         FAT_Init:獲取FAT16文件系統(tǒng)基本信息;
         DirStartSec:獲取根目錄的開始扇區(qū)號(hào);
         DataStartSec:獲取數(shù)據(jù)區(qū)的開始扇區(qū)號(hào);
         ClusConvLBA:獲取一個(gè)簇的開始扇區(qū)號(hào);
         LBAConvClus:轉(zhuǎn)換扇區(qū)號(hào)與簇號(hào)之間的關(guān)系;
         LBAConvClus:計(jì)算可用空間,返回字節(jié)數(shù);
         GetFileName:獲取指定文件的首扇區(qū)號(hào);
         List_DateAndTime:獲取文件或目錄項(xiàng)的日期時(shí)間;
         SearchFoler:在指定范圍內(nèi)查找子目錄;
         List_AllDir_Long:列出指定范圍內(nèi)的目錄及目錄信息;
         FAT_FileOpen:打開指定文件;
         FAT_FileRead:讀取文件數(shù)據(jù);

uart.c
該文件提供USART串口驅(qū)動(dòng)函數(shù),可以參考7.5串行通訊接口實(shí)例的程序;

hw_config.c
該文件包含系統(tǒng)初始化設(shè)置函數(shù)和中斷配置函數(shù)。
         Set_System:用于提供系統(tǒng)時(shí)鐘及電源設(shè)置;
         NVIC_Config:用于設(shè)置中斷向量,允許TIM2中斷;

stm32f10x_it.c
該文件僅包含一個(gè)函數(shù)TIM2_IRQHandler,即在每次TIM2中斷時(shí)從緩沖器中讀取音頻數(shù)據(jù)送TIM4定時(shí)器,
以用于產(chǎn)生不同頻率的聲音。

UnicodeToGB2312.c
該文件僅包含一個(gè)函數(shù)UnicodeToGB2312,處理從UniCode編碼到GB2312字符的轉(zhuǎn)換,用于處理長文件名。

2 運(yùn)行過程
(1)        使用MDK通過ULINK 2仿真器連接開發(fā)板,或使用兩根USB電纜分別將CN1和CN5 與PC機(jī)USB端口相連
(使用板上自帶的UlinkMe);
(2)        使用串口線將開發(fā)板的串口COM0與PC機(jī)連接,在PC機(jī)上運(yùn)行windows自帶的超級(jí)終端串口通信程序
(波特率115200、1位停止位、無校驗(yàn)位、無硬件流控制);或者使用其它串口通信程序;
(3)        打開實(shí)驗(yàn)例程目錄MP3 Player\Simple Wave Player下的Simple Wave Player.Uv2工程,將其編譯鏈
接后燒寫到開發(fā)板中;
(4)        將帶有測試聲波文件TEST1.wav、TEST2.wav拷貝到SD卡中,并將SD插入評(píng)估板的SD連接器中;
(5)        重啟動(dòng)開發(fā)板,在超級(jí)終端上將看到SD卡的信息以及提示符"X:>",鍵入dir命令然后回車將列出
SD卡上的所有文件和目錄;
(6)        可在超級(jí)終端中輸入"dir"、"cd"、"free"、"read"等命令(注:read 命令后跟文件名;讀出并
輸出文件的文本內(nèi)容,可以正確顯示文本文件如以txt,c,h,s為后綴的文件),觀察運(yùn)行結(jié)果;注意,
由于程序中沒有進(jìn)行大小寫轉(zhuǎn)換,因此命令只能使用小寫;
(7)        在超級(jí)終端中輸入"play TEST1.wav"或"play TEST2.wav",如果程序運(yùn)行正常,通過開發(fā)板的揚(yáng)聲
器或者耳機(jī)將能聽到音樂聲。


所有資料下載含源程序:
迷你STM32照相機(jī)OV7670.zip (4.41 MB, 下載次數(shù): 108)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:933309 發(fā)表于 2021-6-5 18:36 | 只看該作者
可惜沒有Altium Designer的電路圖工程文件,只是原理圖的pdf
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕一级片 | 日韩精品久久久久久久酒店 | 日韩在线影院 | a级片在线免费观看 | 亚洲久久久| 亚洲综合二区 | 深夜福利久久 | 黑人巨大精品欧美一区二区 | 欧美视频一区二区三区 | 欧美色图一区二区 | 福利视频导航大全 | 日本久久久久 | 天天操网| 91亚洲成人 | 成人看片网 | 一区二区三区在线免费 | 网站毛片 | 超碰97av | 日韩一区二区视频 | 中文字幕偷拍 | 国产成人亚洲精品自产在线 | 夜间福利视频 | 日韩精品三区 | 欧美精品在线免费观看 | 久久精品国产免费 | 中文字幕国产精品 | 欧美一区不卡 | 日韩精品视频在线免费观看 | 欧美精品入口蜜桃 | 国产三级视频在线播放 | 国产成人综合网 | 久草视频在线播放 | 亚洲另类视频 | 日韩视频一区二区 | 亚洲黄色三级 | 日韩不卡在线观看 | 中文字幕精品在线观看 | 久久国语| www.97超碰| 深夜福利在线播放 | 国产精品福利视频 |