粵嵌開發(fā)板電子相冊嵌入式課程設(shè)計_第1頁
粵嵌開發(fā)板電子相冊嵌入式課程設(shè)計_第2頁
粵嵌開發(fā)板電子相冊嵌入式課程設(shè)計_第3頁
粵嵌開發(fā)板電子相冊嵌入式課程設(shè)計_第4頁
粵嵌開發(fā)板電子相冊嵌入式課程設(shè)計_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

課程設(shè)計說明書題目:電子相冊課程名稱:嵌入式系統(tǒng)學(xué)院:專業(yè):學(xué)號:姓名:指導(dǎo)教師:完成日期:2017年6月10日1.設(shè)計的工程背景任務(wù)闡述設(shè)計任務(wù):制作一個電子相冊,要求每個人一種特效,結(jié)果顯示在ARM開發(fā)板上。開發(fā)平臺為LINUX。電子相冊簡介:以數(shù)字照片的存儲和瀏覽為主要功能,具有內(nèi)置數(shù)據(jù)存儲器、USB等卡接口、強(qiáng)大的文件管理等特征。背景:在市場需求上,隨著數(shù)碼相機(jī)的普及,作為一種以數(shù)字照片的保存、回放和瀏覽為核心的功能產(chǎn)品迎合了消費者需求,嵌入式linux的電子相冊比一般電子相冊更具優(yōu)越性和實用性。目前市場,目前主流電子相冊軟件普遍體積龐大、占用內(nèi)存多、硬件要求高。所以開發(fā)一個運行速度快,占用空間小,對硬件要求較低的功能實用的嵌入式Linux電子相冊很有意義。Linux開發(fā)優(yōu)勢:Linux是一種自由和開放源碼的類Unix操作系統(tǒng)。目前存在著許多不同的Linux,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計算機(jī)硬件設(shè)備中,從手機(jī)、平板電腦、路由器和視頻游戲控制臺,到臺式計算機(jī)、大型機(jī)和超級計算機(jī)。Linux是一個領(lǐng)先的操作系統(tǒng),世界上運算最快的10臺超級計算機(jī)運行的都是Linux操作系統(tǒng)。嚴(yán)格來講,Linux這個詞本身只表示Linux內(nèi)核,但實際上人們已經(jīng)習(xí)慣了用Linux來形容整個基于Linux內(nèi)核,并且使用GNU工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。Linux是我國軟件的國策,尤其是在IT行業(yè),龐大的使用群體、開放的體系和豐富資源使得Linux將是日后普及和推廣的重點。Linux的優(yōu)越性日益凸顯Linux將是我們學(xué)習(xí)和工作實用的首選。目前,很多網(wǎng)絡(luò)技術(shù)、服務(wù)器、網(wǎng)絡(luò)設(shè)備都是基于Linux操作系統(tǒng),并且在不少時尚的手機(jī)、PDA、媒體播放器等消費類電子產(chǎn)品中已經(jīng)廣泛使用Linux作為操作系統(tǒng)。在Linux軟件國策的指引下,Linux已經(jīng)得到很大的普及。很多學(xué)生已經(jīng)自發(fā)地通過書籍、互聯(lián)網(wǎng)等資源學(xué)習(xí)Linux。綜上所述,提高技術(shù)水平就是以市場流行需求為導(dǎo)向進(jìn)行研發(fā),特別是像嵌入式種工程類的技術(shù)。在條件允許的情況下,我們甚至應(yīng)該時刻與國際接軌,掌握當(dāng)前最領(lǐng)先的技術(shù)。任務(wù)分析設(shè)計的目標(biāo)是制作5種電子相冊特效,每個人負(fù)責(zé)制作一種。在制作前期,首先要查閱資料,了解電子相冊的背景和制作原理,對其形成大致的設(shè)計方案。然后,根據(jù)資料安裝linux和虛擬機(jī)軟件,搭建開發(fā)環(huán)境,安裝交叉編譯。最后,根據(jù)自己設(shè)計的方案進(jìn)行嘗試,不斷修改錯誤,直到達(dá)到目標(biāo)。課題項目管理計劃進(jìn)度表序號各階段完成的內(nèi)容完成時間1查閱相關(guān)文獻(xiàn)資料、課題調(diào)研.2掌握設(shè)計軟件、制訂進(jìn)度計劃3系統(tǒng)方案的比較和選定4編寫實現(xiàn)特效的代碼55編譯,運行目標(biāo)文件,查看結(jié)果,根據(jù)結(jié)果進(jìn)行代碼的修改6制作答辯PPT撰寫課程設(shè)計說明書答辯工程設(shè)計方案系統(tǒng)方案設(shè)計目前市場上的主要設(shè)計方案:單芯片解決方案以單芯片的解決方案,以ESS/AMLOGIC/MPX等芯片設(shè)計為代表,PHILIP/Sony等品牌廠商也以該方式為主。該方案的優(yōu)點:(1)結(jié)構(gòu)簡單,成本低,芯片功能強(qiáng)大;(2)多媒體的編解碼速度快。該方案的缺點:(1)可擴(kuò)展的余地不足;(2)對讀卡部分,某些方案使用硬件實現(xiàn),不能支持新類型的卡;(3)應(yīng)客戶要求的二次開發(fā)比較不方便。以DSP+FPGA等硬件為基礎(chǔ),用軟件算法實現(xiàn)功能這種方案,是以DSP來實現(xiàn)多媒體部分的編解碼算法,再由FPGA實現(xiàn)顯示輸出格式的算法轉(zhuǎn)化;讀卡部分,文件系統(tǒng)部分由DSP軟件處理,外圍設(shè)備大的驅(qū)動由DSP的軟件算法實現(xiàn)。這種方案的優(yōu)點:功能擴(kuò)展升級性強(qiáng),軟件實現(xiàn)讀卡部分,新的類型卡,外圍設(shè)備可以通過升級方式實現(xiàn)。這種方案的缺點:(1)整體成本比較大;(2)客戶二次開發(fā)難度大。DSP和FPGA的算法實現(xiàn)需要專業(yè)人員;(3)顯示輸出由FPGA實現(xiàn),該類輸出大部分是數(shù)字的輸出,模擬輸出支持比較弱。ARM核心方案以ARM等強(qiáng)大的CPU為核心,以WINCE、LINUX等操作系統(tǒng)為軟件核心架構(gòu)系統(tǒng)。此方案以ARM如S3C2410、Intelxscale等強(qiáng)大的嵌入式CPU為架構(gòu),速度在200M-300MHZ。嵌入WINCE、LINUX等操作系統(tǒng),實現(xiàn)多媒體的編解碼。該方案的優(yōu)點:(1)系統(tǒng)芯片功能強(qiáng)大,實現(xiàn)的功能多,對于新的多媒體格式支持好,只需要安裝更新的軟件;(2)硬件電路簡單;(3)二次開發(fā)容易實現(xiàn)。該方案的缺點:(1)成本較大,該類強(qiáng)大的CPU一般使用在PDA等嵌入式領(lǐng)域;(2)比較耗電,使用軟件解碼功耗與頻率相關(guān)性很大。本設(shè)計選用的是第三種方案:以CortexA8為核心,以Linux操作系統(tǒng)為軟件核心架構(gòu)?;贑ortexA8的微處理器具有低功耗、低成本、高性能等特點。GEC210開發(fā)板簡介:GEC210是一款高性能的CortexA8核心板,它由廣州粵嵌股份設(shè)計、生產(chǎn)和發(fā)行銷售。它采用三星S5PV210作為主處理器,運行主頻可高1GHz。S5PV210內(nèi)部集成了PowerVRSGX540高性能圖形引擎,支持3D圖形流暢運行,并可流暢播放1080P大尺寸視頻。GEC210主要采用了間距的雙排針,引出CPU大部分常用功能引腳,,另外還根據(jù)S5PV210芯片的特性,分別引出了標(biāo)準(zhǔn)的miniHDMI接口,如圖所示。GEC210板載512MDDR2內(nèi)存,可流暢運行Android,Linux和WinCE6等高級操作系統(tǒng)。它非常適合開發(fā)高端物聯(lián)網(wǎng)終端,廣告多媒體終端,智能家居,高端監(jiān)控系統(tǒng),游戲機(jī)控制板等設(shè)備。圖2-1GEC210開發(fā)板(a)圖2-2GEC210開發(fā)板(b)硬件電路設(shè)計粵嵌GEC210開發(fā)板為硬件平臺,Ubuntu為開發(fā)環(huán)境,通過串口進(jìn)行文件的傳輸,在工程師給定的項目基礎(chǔ)函數(shù)上,通過修改和運用“voidlcd_draw_bmp(char*name,intx0,inty0,intw,inth)”函數(shù)實現(xiàn)圖片位置,大小的改變,再加上延時函數(shù)的運用,實現(xiàn)五種圖片特效。

軟件程序設(shè)計總設(shè)計方案:(圖形浮現(xiàn)大小及位置)層疊(反轉(zhuǎn)函數(shù))小3.方案實施軟件程序設(shè)計總設(shè)計方案:(圖形浮現(xiàn)大小及位置)層疊(反轉(zhuǎn)函數(shù))小軟件程序調(diào)試過程安裝虛擬機(jī)和linux軟件。搭建環(huán)境和安裝交叉編譯。1)找到ubuntu系統(tǒng)工作目錄圖3-12)在windos系統(tǒng)下圖3-23)啟用共享文件夾圖3-34)主機(jī)路徑為windos圖3-4圖3-5可以在文件系統(tǒng)中/mnt/hgfs/share目錄下看到這些。圖3-6圖3-7將文件復(fù)制到/opt目錄下。圖3-8執(zhí)行如下解壓命令。②聚焦逐現(xiàn)特效部分調(diào)試原本打算做圖片翻轉(zhuǎn)的特效,在網(wǎng)上查到圖片翻轉(zhuǎn)特效的算法并經(jīng)過修改如下:結(jié)果與結(jié)論設(shè)計結(jié)果設(shè)計結(jié)果實現(xiàn)了以下4點:在LCD上顯示圖片,文字;關(guān)于GEC210芯片的使用,Ubuntu環(huán)境下的操作;可隨時更換圖片,具有串行通信功能;聚焦逐現(xiàn)圖片特效。效果分布展示如下:圖4-1開始界面圖4-2逐步縮小界面圖4-3放大反轉(zhuǎn)界面結(jié)論設(shè)計優(yōu)缺點:實現(xiàn)了多種不同的圖片播放特效。二次開發(fā)容易實現(xiàn)。圖片的自動播放。未實現(xiàn)手動播放和音樂功能。設(shè)計的核心及工程實用價值:隨著數(shù)碼相機(jī)的大量普及和人們對多媒體播放的需求,不同用戶的計算機(jī)中存滿各種照片,連桌上相框中照片的更換頻率也提高了。對數(shù)碼相片進(jìn)行便捷的顯示、分享、編輯、刪除、打印等操作逐漸成為市場的需求。電子相框,數(shù)碼伴侶等概念型產(chǎn)品逐漸出現(xiàn)在數(shù)碼市場,電子相冊也由概念型產(chǎn)品進(jìn)入市場已有六、七年。目前,電子相冊產(chǎn)品主要應(yīng)用于禮品市場,其真正的目標(biāo)用戶卻是非常廣的,并且它的最終消費人群應(yīng)該是以家庭為主的普通消費者,其應(yīng)用的領(lǐng)域?qū)⒏鼜V闊。改進(jìn)意見:實現(xiàn)通過觸屏實現(xiàn)圖片特效間的切換。音樂播放功能的增加。多張圖片合成一張圖片播放功能的實現(xiàn)。展望:電子相框結(jié)合液晶顯示技術(shù)、電視技術(shù)、數(shù)字存儲技術(shù),日益成為面向時尚個性的數(shù)碼相機(jī)、數(shù)碼攝像的最佳伴侶。隨著核心器件NandFlash和LCD屏的降價,必將進(jìn)一步刺激電子相框的市場需求。多功能電子相冊方便攜帶、重量輕、樣式豐富,在今后必定有更大發(fā)展空間。收獲與致謝在本次設(shè)計開始前,我們最先開始的是查資料,通過查找資料了解圖片顯示和各種特效的實現(xiàn)原理,然后再自己嘗試設(shè)計特效,一開始我們想的特效都很復(fù)雜,想要一步實現(xiàn),嘗試了很多方法,都沒能成功。最后,我們改變了思路,用圖片逐層顯示來實現(xiàn)動態(tài)過程,這個特效雖然簡單,但它是復(fù)雜特效的一個基礎(chǔ),讓我明白了復(fù)雜的設(shè)計要從簡單開始,不能想著一口吃個大胖子。到答辯前一天我們各自設(shè)計的特效才有了一點自己想要的效果,當(dāng)時還很想實現(xiàn)觸屏和音樂播放功能,但前期嘗試時一直調(diào)試不成功所以就沒有來得及實現(xiàn),這是本次設(shè)計中的一個遺憾。通過本次設(shè)計也更加熟悉了linux的操作流程,熟悉了做實驗中的搭建環(huán)境和交叉編譯,開始時很多步驟都記不太清楚了,所以又復(fù)習(xí)了一遍以前的實驗。在這里我體會到了平時的學(xué)習(xí)都是為了以后的復(fù)雜工程做鋪墊,讓我們能更好的解決一些設(shè)計工程,理論是基礎(chǔ),只有基礎(chǔ)打好了,上層建筑才會更加穩(wěn)和順利。同時完成了圖片在LED屏上的顯示和聚焦逐現(xiàn)特效。在顯示圖片的操作上,開始屏幕總是會花,顯示的圖片不理想,后來仔細(xì)看了工程師給的顯示圖片代碼和清屏代碼,通過和同學(xué)商量最終完成了圖片的顯示。在特效的實現(xiàn)過程中,一開始很想做一個立體的炫酷的特效,也通過查找資料理解了其原理和算法實現(xiàn)流程,但在調(diào)試時總是不成功,在這里用了很長時間。最后,改變了設(shè)計思路,覺得應(yīng)該從簡單的開始做,再一步步增加功能,通過和同學(xué)的商量與摸索,終于實現(xiàn)了簡單的特效。雖然從設(shè)計到實現(xiàn)的過程有很多困難,但是體會到了和同學(xué)一起完成同一個任務(wù)的快了,也收獲了很多課本上沒有的知識,體會到了實踐的樂趣。在此,感謝我的隊友給予的幫助,老師和粵嵌工程師給的平臺和機(jī)會,尤其是粵嵌工程師給我的學(xué)習(xí)指導(dǎo)。參考文獻(xiàn)童凱.基于Linux以及Qt的網(wǎng)絡(luò)電子相框設(shè)計與實現(xiàn)[D].電子科技大學(xué),2014.林鋒.基于ARM7TDMI芯片的嵌入式LINUX交叉調(diào)試器的設(shè)計和實現(xiàn)[D].四川大學(xué),2002.王浩,陳邦瓊.嵌入式Qt開發(fā)項目教程[M].中國水利水電出版社,2014.梁融凌,余昌嵩.基于嵌入式Linux電子書的設(shè)計與實現(xiàn)[J].牡丹江師范學(xué)院學(xué)報(自然科學(xué)版),2014(4):12-14.YanH,LiuL,XueT.SPLIT-SCREENPROCESSINGMETHODANDDEVICE,ANDCOMPUTERSTORAGEMEDIUM:,WO/2015/123937[P].2015.燕麗紅,林志雄,楊星.基于Windows7操作系統(tǒng)和Qt技術(shù)的電子相冊設(shè)計DesignofelectronicphotoalbumbasedonWindows7operatingsystemandQT[J].現(xiàn)代電子技術(shù),2013.范定焓.基于ARM9平臺的便攜式媒體播放器的設(shè)計與開發(fā)[D].復(fù)旦大學(xué),2009.[8]范定焓.基于ARM9平臺的便攜式媒體播放器的設(shè)計與開發(fā)[D].復(fù)旦大學(xué),2009.[10]楊燕,陳祝.一種基于Cortex內(nèi)核的家用電子相冊設(shè)計[C]2014.附件答辯問題回答記錄(必需)問:有沒有實現(xiàn)手動播放功能答:沒有,目前我們完成的只有自動播放和圖片替換功能。元器件清單粵嵌GEC210開發(fā)板、安裝有虛擬機(jī)和LINUX的電腦。設(shè)計代碼/*NAMEopenandpossiblycreateafileordeviceSYNOPSIS#include<sys/>#include<sys/>#include<>intopen(constchar*pathname,intflags);intopen(constchar*pathname,intflags,mode_tmode);filedescriptor:文件描述符*/#include<>#include<>#include<>#include<sys/>#include<sys/>#include<>//foropen#include<sys/>#include<linux/>#include<>#include<>//forcloseint*plcd=NULL;charwo[]=(0x04,0x40,0x0E,0x50,0x78,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x44,0x0A,0x44,0x0C,0x48,0x18,0x30,0x68,0x22,0x08,0x52,0x08,0x8A,0x2B,0x06,0x10,0x02};voidlcd_draw_point(intx0,inty0,intcolor)(*(plcd+y0*800+x0)=color;}//在頂點為x0,y0的位置開始顯示一個顏色矩形,矩形的寬//度為w,高度為h,顏色為colorvoidlcd_draw_rect(intx0,inty0,intw,inth,intcolor)(intx,y;for(y=y0;y<y0+h;y++)(for(x=x0;x<x0+w;x++)lcd_draw_point(x,y,color);}}〃把lcd清成color顏色voidlcd_clean_screen(intcolor)(intx,y;for(y=0;y<480;y++)(for(x=0;x<800;x++)lcd_draw_point(x,y,color);}}voiddelayms(intxms)(inti,j;for(i=0;i<xms;i++)for(j=110;j>0;j--);}〃顯示一張24位的bmp圖片,圖片的寬度必須為4的倍數(shù)voidlcd_draw_bmp(char*name,intx0,inty0,intw,inth)(intfd;fd=open(name,O_RDWR);if(-1==fd)(printf("open%serror!\n”,name);return;}//1、跳過前54個bytelseek(fd,54,SEEK_SET);charch[w*h*3];read(fd,ch,sizeof(ch));close(fd);//lcd的像素點占4byte,24位bmp3byteintcolor;charr,g,b;//位運算intx,y,i=0;for(y=0;y<h;y++)(for(x=0;x<w;x++)(b=ch[i];g=ch[i+1];r=ch[i+2];i+=3;color=(r<<16)|(g<<8)|b;lcd_draw_point(x+x0,h-y+y0,color);delayms(1);}}}〃顯示一張24位的bmp圖片,圖片的寬度必須為4的倍數(shù),左右顛倒voidlcd_draw_bmpop(char*name,intx0,inty0,intw,inth)(intfd;fd=open(name,O_RDWR);if(-1==fd)(printf("open%serror!\n”,name);return;}//1、跳過前54個bytelseek(fd,54,SEEK_SET);charch[w*h*3];read(fd,ch,sizeof(ch));close(fd);//lcd的像素點占4byte,24位bmp3byteintcolor;charr,g,b;//位運算intx,y,k,i=0;for(y=0;y<h;y++)(for(x=w;x>0;x--)(b=ch[i];g=ch[i+1];r=ch[i+2];i+=3;color=(r<<16)|(g<<8)|b;lcd_draw_point(x+x0,h-y+y0,color);}}}voidmonitor_touch()(intfd;fd=open("/dev/event0",O_RDWR);if(-1==fd)return;structinput_eventev;intx,y;while(1)read(fd,&ev,sizeof(ev));〃如何判斷該事件是一個觸摸事件if(==EV_ABS)&&==ABS_X))(x=;}elseif(==EV_ABS)&&==ABS_Y))(y=;}//手指彈起if(==EV_ABS)&&==ABS_PRESSURE)&&==0))(printf("x:%d,y:%d\n",x,y);}}close(fd);}〃顯示一個字voidlcd_draw_word(unsignedchar*ch,intcolor,intlen,intw,intx,inty)(inti,j;inthigh;//32*64//一個字的顯示:畫點(一個一個像素點)//八個點用一個unsignedchar//已知:數(shù)組長度:len=>像素點的個數(shù):len*8//已知:字的寬度=>高度:len*8/whigh=len*8/w;//64intflag;flag=w/8;//4for(i=0;i<len;i++)(for(j=7;j>=0;j--)(if((ch[i]>>j)&1==1)(if(i%flag==0)lcd_draw_point(7-j+x,i/flag+y,color);elselcd_draw_point(8*(i%flag)+7-j+x,i/flag+y,color);}}}}intmain(intargc,char*argv[])(intfd;//O_RDWR:可讀可寫fd=open("/dev/fb0",O_RDWR);//if(fd==-1)//if(fd=-1)if(-1==fd)(printf("opendev/fb0error!\n〃);return0;}〃內(nèi)存映射,吧一個文件或者設(shè)備映射到一個進(jìn)程的///地址空間中(內(nèi)存),在進(jìn)程中操作這塊映射的內(nèi)///存就相當(dāng)于操作被映射的文件//pled存儲了映射的

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論