嵌入式課設(shè)音樂相冊說明書_第1頁
嵌入式課設(shè)音樂相冊說明書_第2頁
嵌入式課設(shè)音樂相冊說明書_第3頁
嵌入式課設(shè)音樂相冊說明書_第4頁
嵌入式課設(shè)音樂相冊說明書_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、信息與電氣工程學院嵌入式課程設(shè)計說明書(2015 /2016 學年第 一 學期)課程名稱 : 嵌入式課程設(shè)計 題 目 : 音樂相冊 專業(yè)班級 : 計算機1202 學生姓名 : 何珊 劉立雙 仲棟平 學 號 : 120210207 120210213 120210211 指導教師 : 王彬麗 設(shè)計周數(shù) : 1.5周 設(shè)計成績 : 2016年 01 月 13 日1、課程設(shè)計目的嵌入式系統(tǒng)是在傳統(tǒng)單片機等技術(shù)的基礎(chǔ)上發(fā)展起來的一項結(jié)合硬件和軟件應(yīng)用廣泛功能強大的系統(tǒng)。嵌入式系統(tǒng)通過在軟件平臺編譯控制程序并在硬件上運行,嵌入式軟件的開發(fā)已經(jīng)在工業(yè)各個方面都有很多應(yīng)用,學習好嵌入式系統(tǒng)開發(fā)已成為現(xiàn)在從事

2、計算機工作人員必不可少的技能。本次課程設(shè)計是基于嵌入式硬件平臺tq2440開發(fā)板,完成了有操作系統(tǒng)的嵌入式系統(tǒng)軟件設(shè)計,通過編譯下載能夠在開發(fā)板上顯示相應(yīng)內(nèi)容,從而達到課程設(shè)計要求。 本次課程設(shè)計是進行有操作系統(tǒng)的嵌入式系統(tǒng)軟件開發(fā),這其中就涉及到平時所學的嵌入式系統(tǒng)開發(fā)相關(guān)知識,包括系統(tǒng)的安裝、相關(guān)軟件的使用、程序的編譯調(diào)試、相關(guān)端口的配置、程序的燒寫、相關(guān)硬件的配置以及通過pc機和軟件結(jié)合硬件進行程序的調(diào)試和運行。這是完成一個基于操作系統(tǒng)的嵌入式軟件開發(fā)所必須要經(jīng)歷的步驟,在這個設(shè)計中通過發(fā)現(xiàn)問題、解決問題和總結(jié)經(jīng)驗可以學到很多在實際嵌入式軟件開發(fā)中有用的知識。這是此次課程設(shè)計的

3、主旨和精髓,通過本次課程設(shè)計可以達到一些課程設(shè)計目的。2、課程軟硬件設(shè)計2.1系統(tǒng)分析和設(shè)計此次課設(shè)是在原始數(shù)據(jù)tq2440_test.mcp基礎(chǔ)上做出相應(yīng)修改,以此達到課設(shè)要求。主要運用c語言編寫,修改main.c、tq_logo.c及l(fā)cd_tft.h等文件,在天嵌2440開發(fā)板中實現(xiàn)六張圖片的輪換并且有背景音樂,圖片隨著音樂的節(jié)奏而變化。我們的主題是生日快樂,背景音樂是生日快樂歌,圖片是六張生日蛋糕的圖片。2.2系統(tǒng)實施使用軟件ads1.2、tqboarddnw和位圖轉(zhuǎn)換軟件bmp2h.exe在win7上進行試驗,通過改變脈沖列的周期可以調(diào)頻,改變脈沖的寬度或占空比可以調(diào)壓。主要實驗步驟

4、:(1)用ads1.2打開tq2440_test.mcp(2)新建工程:file-new(arm executable image)給工程命名為hmusicphoto并選擇工程位置(3)將tq2440_test.mcp原始數(shù)據(jù)拷貝過來,新建inc和src兩個文件夾,把需要用的程序分別考過來,回到tq2440_test.mcp在空白處右擊添加文件將2440init.s、2440slib.s、nand.c、2440lib.c、main.c、mmu.c、lcd_tft.c、tq_logo.c添加到工程中且順序不可改變(4)準備:6張圖片的二進制文件:<1>下載六張生日蛋糕的圖片,保存為“

5、.jpg”形式<2>用畫圖軟件打開,重新調(diào)整大小并取消縱橫比,設(shè)置大小為480*272單位為像素,修改后另存為24位位圖形式,6張圖片都是如此,下面不特殊說明適用于所有圖片<3>用bmp2h.exe將6張位圖文件轉(zhuǎn)換為相應(yīng)的二進制文件相關(guān)文件這略<4>打開tq_logo.c替換其中的數(shù)組(5)對工程進行配置,具體參照學習課件“第四講 制作簡易電子相冊”(6)main.c和lcd_tft.h中加入相應(yīng)的外部聲明,例如extern unsigned char picx;(x取1-6),注意在main.c中要多加extern void paint_bmp(int

6、x0,int y0,int h,int l,unsigned char bmp);,除此之外還要注釋掉main.c中的結(jié)構(gòu)體(7)打開tq_logo.c替換當中的二進制文件(8)準備生日快樂歌的二進制文件,根據(jù)樂譜和相關(guān)知識得出結(jié)果如下unsigned char song =/生日快樂0x40,0x20,0x40,0x20,0x39,0x40,0x40,0x40,0x30,0x40,0x33,0x80,0x40,0x20,0x40,0x20,0x39,0x40,0x40,0x40,0x2b,0x40,0x30,0x80,0x40,0x20,0x40,0x20,0x20,0x40,0x26,0x

7、40,0x30,0x40,0x33,0x40,0x39,0x40,0x24,0x20,0x24,0x10,0x26,0x40,0x30,0x40,0x2b,0x40,0x30,0x80,將得到的數(shù)組內(nèi)容加以整合就得到所用的數(shù)組(9)修改main.c:<1>在while(1)的前面添加以下初始化的程序段char *mode;unsigned char temp1,temp2;unsigned int addr=0;u8 key;u32 mpll_val = 0 ;u16 freq;/ lci 1000/u32 divn_upll = 0 ;#if ads10 /_rt_lib_ini

8、t(); /for ads 1.0#endifport_init();isr_init();key = 14;mpll_val = (92<<12)|(1<<4)|(1); /init fclk=400m, so change mpll firstchangempllvalue(mpll_val>>12)&0xff, (mpll_val>>4)&0x3f, mpll_val&3);changeclockdivider(key, 12);cal_cpu_bus_clk();consolenum = 0; / uart 1 s

9、elect for debug.uart_init( 0,115200 );rmisccr=rmisccr&(1<<3); / usbd is selected instead of usbh1rmisccr=rmisccr&(1<<13); / usb port 1 is enabled.rdsc0 = 0x2aa;rdsc1 = 0x2aaaaaaa;rclkcon = 0xfffff0;mmu_init(); /pisr_swi=(_isr_startaddress+0xf0); /for psosled_display(0x66);mode=&q

10、uot;dma"clk0_disable();clk1_disable();mpll_val = rmpllcon;lcd_tft_init() ; / lcd initialdownload_run=1; /the default menu is the download & run mode<2>寫 buzzer_freq_set0函數(shù)用來設(shè)置pwm的頻率,這個函數(shù)是參照2440lib.c中的buzzer_freq_set函數(shù)修改的,一些常用的寄存器設(shè)置沒有不同,buzzer_freq_set0函數(shù)只是將buzzer_freq_set函數(shù)rtcmpb0 = r

11、tcntb0>>1;/ 50%改為rtcmpb0 = rtcntb0*0.03;以此來調(diào)整占空比,而rtcntb0 = (pclk>>7)/freq;調(diào)整pwmv的頻率<3>根據(jù)我們在網(wǎng)上查到的資料將鬧鐘和圖片播放結(jié)合起來得到使得圖片根據(jù)背景音樂的節(jié)奏來顯示,其主要代碼是在while(1)的主體中,其主要代碼為:temp1=songaddr+;temp2=songaddr+;freq=30000/temp1;buzzer_freq_set0( freq );delay(12*temp2);uart_printf("freq=%d,",fr

12、eq);if(addr>215)addr=0;paint_bmp(0,0,480,272,picx);(x為1-6)(10)make編譯,形成.bin文件(11)連接好數(shù)據(jù)線和轉(zhuǎn)串口線并用tqboarddnw將.bin文件燒寫到開發(fā)板中(12)結(jié)果展示:6張生日蛋糕圖片輪換且背景音樂為生日快樂歌圖1圖2圖3圖4圖5圖63、課程設(shè)計總結(jié)在課設(shè)中我們遇到很多難以解決的問題,有的是上課期間就遺留的問題有的是新遇到的問題,比如說剛開始準備的時候我們在安裝軟件上就遇到了很多困難,一是在安裝ads1.2時license.dat文件沒導對使得軟件安了很多遍都沒有安裝好,二是轉(zhuǎn)串口驅(qū)動一直安裝不好,后來

13、查資料問同學解決了.inf的軟件安裝又從網(wǎng)上下載驅(qū)動才得以解決。再有就是程序上的問題有時明明是按照老師給的課件中提到的過程做但卻依然有問題,后來知道是ads1.2安裝目錄出了問題,不能安裝在programfiles(x86)文件夾下,要不會出現(xiàn)找不到文件的問題。這么多的問題要一個接一個的解決,都在考驗著我們的耐心。一開始我們沒有頭緒如果堅持下去就一定會有所收獲。這次課設(shè)我們體會到了嵌入式開發(fā)的樂趣,在這個過程中我們不僅學到了課本的知識更多的是我們學到了課本以外的知識,中途我們遇到很多問題,經(jīng)過一番努力最終把問題都解決了,得到最后的結(jié)果,最重要的是我們再一次合作完成了課程設(shè)計,更懂得合作、更懂得相互包容。對我們以后嵌入式的學習有很大的幫助。課程設(shè)計是我們專業(yè)課程知識綜合應(yīng)用的實踐訓練,著是我們邁向社會,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論