




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、上海海洋大學嵌入式系統設計項目實訓報告(2016-2017第_1_學期)專業:計算機科學與技術實訓項目:嵌入式應用一一電子相冊實訓時間:_2016隼_12M26日實訓成員:孫嘉晨1351127力1351137指導老師:池濤計算機科學技術系2015年11月制一、實訓目的通過電子相冊的制作,了解S3c2440芯片的構造,了解外圍SDRAM及NANDFLASH的存儲結構。學會運用定時器中斷及通過LCD顯示圖片,加強自身對嵌入式的理解,提升自身的實踐能力。二、實訓內容以S3c2440芯片為核心,通過外圍SDRAM及NANDFLASH存儲實現照片的存儲,結合定時器中斷,實現LCD顯示圖片,完成簡易電子相
2、冊的設計。三、實訓設備硬件:mini2440硬件平臺軟件:bmp2h.exe軟件進行圖片轉換CodeWarriorforARMDeveloperSuite軟件四、實訓設計方案(包括項目功能需求分析,方案設計,完成時間規劃)需求分析:在上世紀末本世紀初,電子相冊呈現迅速發展白勢頭,普及型數碼相機的分辨率由200萬象素增長到現在的8001500萬象素,價格也由300美元左右下降到現在的120美元左右。隨著數碼相機的日益普及,作為一種以數字照片的保存、回放和瀏覽為核心功能的產品一一電子相冊自然迎合了消費者的需求。方案設計:軟件設計:代碼包含2個模塊,LCD模塊包含兩個文件,進行圖片的顯示與編輯;Ti
3、mer模塊包含6個文件,其中timer.c和timer.h文件完成定時器的初始化,interrupt.h和interrupt.c文件完成定時器中斷函數的初始化,isrservice.h和isrservice.c文件完成定時器中斷處理,pic.c和pic.h等文件是由圖片生產的C語言數組文件硬件方面選擇了S3c2440為核心的架構。基于ARM的微處理器具有低功耗、低成本、高性能等特點,ARM采用RISC(精簡指令集計算機)架構和流水線結構,使用了大量的寄存器,具有極高的工作效率。其中,RISC架構具有如下特點:固定長度的指令格式,指令歸整、簡單,基本尋址方式只有23種,使用單周期指令,便于流水線
4、操作。因此選擇此硬件方案的優勢有如下:(1)系統芯片功能強大,實現的功能多,對于新的多媒體格式支持性好,只需要安裝更新的軟件;(2)硬件電路簡單,可采用標準電路,不需耗費過多的資源(人力,資金等);(3)可以在硬件上增加模塊,留作二次開發使用,極為方便;(4) S3c2440是一個比較成熟的芯片,技術積累齊全;(5) S3c2440支持豐富的存儲卡接口。完成時間規劃:第一天分析實訓項目實現過程,完成軟件方面內容,編寫代碼。第二天實現硬件分析,完成硬件連接,對項目進行測試。第三天完成實訓內容,提交報告。五、實訓項目實現代碼結構邏輯:Main.c文件Timer模塊S3C2440簡介:TFTLCD模
5、塊Samsung公司推出的32位RISC處理器S3c2440A,為手持設備和一般類型應用提供了低價格、低功耗、高性能小型微控制器的解決方案。S3c2440為手持設備和一般類型應用提供了低價格、低功耗、高性能小型微控制器的解決方案。采用272腳FPGA封裝,內含一個ARM920T內核。為了降低系統成本,S3C2440A提供了以下豐富的片內外圍。ARM9-S3c2440處理器,ARM920T核由ARM9TDMI、存儲管理單元,MMU和高速緩存三部分組成。其中MMU可以管理虛擬內存,高速緩存由獨立的16KB地址和16KB數據高速Cache組成。ARM92T0有兩個內部協處理器:CP14和CP15。C
6、P14用于調試控制CP15用于存儲系統控制以及測試控制。總的資源如下:?內核工作電壓為1.2V,內存工作電壓兼容1.8V/2.5V/3.3V,外圍I/O口使用3.3V,集成16KB的指令緩存和16KB的數據緩存,帶MMUI(MemoryManagementUnit),支持SRAM和SDRAM等內存。?LCD控制器接口(最高支持4K色的STN和256K色的TFT)?4通道DMA控制器?3通道UART?2通道SPI接口?IIC總線接口?IIS音頻編解碼數據接口?AC97音頻接口?MMC/SD存儲卡接口?2通道USB傳輸接口和1個復用的USB設備接口?4通道PWM(脈寬調制)定時器和1個看門狗定時器
7、?8通道10位ADC和一個觸控屏接口?實時時鐘?130個GPIO口和24通道外部中斷源接口?片上PLL時鐘發生鎖相環硬件系統框圖如下:電源SDRAM時鐘電路LCD顯示ARMS片S3C2440NandFlashSDRAM存儲接口原理圖:SDRAM:同步動態隨機存儲器,同步是指Memory工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。SDRAM從發展到現在已經經歷了四代,分另1J是:第一代SDRSDRAM,第二代DDRSDRAM,第三代DDR2SDRAM,第四代DDR3SDRA
8、M.(顯卡上的DDR已經發展到DDR5)第一代SDRAM采用單端(Single-Ended)時鐘信號,第二代、第三代與第四代由于工作頻率比較快,所以采用可降低干擾的差分時鐘信號作為同步時鐘。SDRAM之所以成為DRARM就是因為它要不斷進行刷新(Refresh)才能保留住數據,因此它是DRAM最重要的操作。那么要隔多長時間重復一次刷新,目前公認的標準是,存儲體中電容的數據有效保存期上限是64ms(毫秒,1/1000秒),也就是說每一行刷新的循環周期是64ms。這樣刷新速度就是:行數量/64ms。我們在看內存規格時,經常會看到4096RefreshCycles/64ms或8192RefreshC
9、ycles/64ms的標識,這里的4096與8192就代表這個芯片中每個Bank的行數。刷新命令一次對一行有效,發送間隔也是隨總行數而變化,4096行時為15.625人(微秒,1/1000毫秒),8192行時就為7.81259sHY57V561620為8192refreshcycles/64ms。本設計采用32M的HY57V56162來設計SDRAM存儲電路,它的單片內存規格為256Mbit4M*16bit*4Banks,即容量為32MB的16位SDRAM。使用S3c2410的nGCS6片選信號HY57V56162的數據總線與上S3c2410的低16位相連。操作地址的最小值變為0x000000
10、04,所以將S3c2410的ADDR2-ADDR14順序與HY57V56162的A0-A12相連。為了能夠正確訪問HY57V56162高/低位字節數據,又將HY57V56162的LDQM和UDQM分別與nBE0:nWBE0:DQM0和nBE1:nWBE1:DQM1相連,HY57V56162的BA0、BA1是SDRAM內部BANK選擇地址線代表著SDRAM內存的最高地址,因為兩片HY57V56162組成了64M的內存,也就是說要26根地址線來實現尋址,所以將BA0、BA1分另I與S3c2410的ADDR24和ADDR25引腳相連。原理圖如下圖所示:23456"DDELADDR13A11
11、KCLMVVPYSTSCGLSCGLADDRn0/GPA0ADDR1ADDR2ADDR3ADDR4ADDR5ADDR6ADDR7ADDR8ADDR9ADDR10ADDR11ADDR12ADDR13ADDR14ADDR15ADDR16/GPA1ADDR17/GPA2ADDR18/GPA3ADDR19/GPA4ADDR20/GPA5ADDR21/GPA6ADDR22/GPA7ADDR23/GPA8ADDR實驗代碼:ADDRE/GPA1T-VD0VD1VD2VD3VD4VD5VD601234567890VD711111111112VD8DDDDDDDDDDDVD9VVVVVVVVVVV091HH01
12、23NNNNIIIIAAAAUU45。6NNKKNIIlliAAccATTPP071Ml5LDATA0DATA1DATA2DATA3DATA4DATA5DATA6DATA7DATA8DATA9DATA10DATA11DATA12DATA13DATA14DATA15VDDMCPVDDMCPVDDMCPVDDMCPVDDMCPVDDMCPVDDMCPVDDOP(3.3)VDDOP(3.3)VDDOP(3.3)VDDOP(3.3)R/nBALE/GPA18CL日GPA17nFC日GPA22nFC日GPA202410LNGCS0nRESETVDD33ERPnFC日GPA19NANDFLASH存儲接口原
13、理圖:vd.3,C19nRESETNand-flash內存是flash內存的一種,其內部采用非線性宏單元模式,為固態大容量內,存;K,的實現提供了廉價有效的解決方案。Nand-flash存儲器具有容量較大,改寫速度快等優點,;,適用于大量數據的存儲,因而在業界得到了越來越廣泛的應用,如嵌入式產品中包括數碼相Title機、MP3隨身聽記憶卡、體積小巧的U盤等。NOR和NAND是現在市場上兩種主要的非易失;::二Date.22-Jun-2012File:D.ProgramFilesDesignExplorer234567閃存技術。Intel于1988年首先開發出NORflash技術,徹底改變了原先
14、由EPROM和EEPROM一統天下的局面。緊接著,1989年,東芝公司發表了NANDflash結構,強調降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。但是經過了十多年之后,仍然有相當多的硬件工程師分不清NOR和NAND閃存。許多業內人士也搞不清楚NAND閃存技術相對于NOR技術的優越之處,因為大多數情況下閃存只是用來存儲少量的代碼,這時NOR閃存更適合一些。而NAND則是高數據存儲密度的理想解決方案。NANDflash的單元尺寸幾乎是NOR器件的一半,由于生產過程更為簡單,NAND結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了價格。NandFlash讀和寫操作采
15、用512字節的塊,這一點有點像硬盤管理此類操作,很自然地,基于NAND的存儲器就可以取代硬盤或其他塊設備。NORflash占據了容量為116MB閃存市場的大部分,而NANDflash只是用在8128MB的產品當中,這也說明NOR主要應用在代碼存儲介質中,NAND適合于數據存儲,NAND在CompactFlash、SecureDigital>PCCards和MMC存儲卡市場上所占份額最大。64M的K9F1208U0B當前NORFLASH價格比較昂貴,考慮到成本問題,本設計采用了NandFlash作為介質存儲電路,將K9F1208U0B的I/O0-7與上S3c2410的數據總線DATA0-7
16、相連,實現數據的讀寫。S3c2410中NandFlash控制器的R/nB與K9F1208U0B的R/nB相連,可以檢查nFCE/GPA22、nFRE/GPA20、nFWE/GPA19分別與K9F1208U0B的CLE、nCE、nRE、new是否相連。分別可以控制K9F1208U0B的地址鎖存使能、命令鎖存使能、片選使能、讀使能和寫使能。原理圖如下圖所示:nRCE9qCLE16ALE17nPWE18qnPRE8-dRrB7-601336I/O7I/O6I/O5R/BI/O4CEI/O3CLEI/O2IEI/O1WE-I/O0RESEWPVSSVCCVSSVCCU2K9F280843LDATA64
17、2LDATA541LDATA432LDATA331LDATA230LDATA129LDATA019.VDD3344LDATA71237:C16CAPLCD電路模塊:LCD的構造是在兩片平行的玻璃基板當中放置液晶盒,下基板玻璃上設置TFT(薄膜晶體管),上基板玻璃上設置彩色濾光片,通過TFT上的信號與電壓改變來控制液晶分子的轉動方向,從而達到控制每個像素點偏振光出射與否而達到顯示目的。現在LCD已經替代CRT成為主流,價格也已經下降了很多,并已充分的普及。LCD制造時選用3勺控制IC、濾光片和定向膜等配件,與面板的對蛤度有關,一般而言,對比度能夠達到350:1就足夠了,但在專業領域這樣的對比度平
18、還不夠。相對CRT顯示器輕易達到500:1甚至更高的對比度而言,只有高檔液晶顯示器才能達到這樣如此程度。LCD是一種介于固態與液態之間的物質,本身是不能發光的,需借助要額外的光源才行。最早的液晶顯示器只有上下兩個燈管,發展到現在,普及型的最低也是四燈,高端的是六燈。四燈管設計分為三種擺放形式:一種是四個邊各有一個燈管,但缺點是中間會出現黑影,解決的方法就是由上到下四個燈管平排列的方式,最后一種是U型的擺放形式,其實是兩燈變相產生的兩根燈管。六燈管設計實際使用的是三根燈管,將三根燈管都彎成U型,然后平行放置,以達到六根燈管的效果。下2圖是S3c2410X芯片內部集成的LCD控制器的外部管腳圖和內
19、部方框圖,其中內部的寄存器作用如下:REGBANK有17個可編程寄存器組和256*16的調色板存儲器,用來設定LCD控制器。LCDCDMA是一個專用DMA,自動從幀存儲器傳輸視頻數據到LCD控制器,用這個特殊的DMA,視頻數據可不經過CPU干涉就顯示在屏幕上。VIDPRCS接受從LCDCDMA來的視頻數據,并在將其改變到合適數據格式后,經VD23:0將之送到LCD驅動器,如4/8單掃描或4雙掃描顯示模式。S3C2440LCD®制器LEND<=VCLK/LCDHCLKLCD-PWREN<=>VLINE/VSYNC/CPVLCDVF0VFRAME/VSYNC/STVLC
20、DVF1<=VM/VDEN/TPLCDVF2VD23-0TIMEGEN由可編程邏輯組成,以支持不同LCD驅動器的接口時序和速率的不同要求。TIMEGEN產生VFRAME、VLINE、VCLK、VM信號等。數據流描述如下:FIFO存儲器位于LCDCDMA。當FIFO空或部分空時,LCDCDMA要求從基于突發傳輸模式的幀存儲器中獲取數據,存入要顯示的圖像數據,而這個幀存儲器是LCD控制器在RAM中開辟的一片緩沖區。當這個傳輸請求被存儲控制器中的總線仲裁器接收到后,從系統存儲器到內部FIFO就會成功傳輸4個字。由于S3c2410內部集成的LCD控制器如上所以設計的外接LCD電路模塊如下圖:U5
21、nRESET,121,222,323,424,525,626727,828.9291030113112321333143415351636173718 3819 39.2040VD16VCC33VD17VD181VD19VD0VD20J_VD1VD21hVD2VD22VD3VD23VD4VD5VMTDVD7VCLKVD8TSYMVD9VD10VD11TSYPTDTTSXMVD13VD14,4VD15TSXPLCD640480軟件代碼:Main.c文件:#include"timer.h"#include"isrservice.h"#include"
22、;uart.h"#include"lcd.h"#include"pic.h"#include"pic1.h"#include"pic2.h"#include"pic3.h"#include"pic4.h"#include"led.h"voidIO_Init(void);unsignedintflag=0;intMain(void)IO_Init();while(1)switch(flag)case 1:Paint_Bmp(pic);break;c
23、ase 2:Paint_Bmp(pic1);break;case 3:Paint_Bmp(pic2);break;case 4:Paint_Bmp(pic3);break;case 5:Paint_Bmp(pic4);break;default:break;return0;voidIO_Init(void)Timer0_Init();Timer0_Interrupt_Init();Isr_Init();Lcd_Init();Lcd.c文件:#include"2440addr.h"#include"Icd.h"#defineLOW21BITS(n)(n)&
24、amp;0x1fffff)/Togetlower21bits#defineLcd_Enable()rLCDCON1|=1volatileunsignedshortLCD_BUFFER240320;externunsignedchar_CHS口;staticvoidLcd_Config(void)rGPCCON=0xaaaa02a9;rGPDCON=0xaaaaaaaa;rLCDCON1=(CLKVAL_TFT<<8)|(3<<5)|(BPPMODE_TFT<<1);rLCDCON2=(VBPD<<24)|(LINEVAL_TFT<<1
25、4)|(VFPD<<6)|(VSPW);rLCDCON3=(HBPD<<19)|(HOZVAL_TFT<<8)|(HFPD);rLCDCON4=(HSPW);rLCDCON5=(FRM565_TFT<<11)|(INVVCLK_TFT<<10)|(INVVLINE_TFT<<9)|(INVVFRAME_TFT<<8)|(HWSWP);rLCDSADDR1=(unsignedint)LCD_BUFFER>>22)<<21)|LOW21BITS(unsignedint)LCD_BUFFER&
26、gt;>1);rLCDSADDR2=LOW21BITS(unsignedint)LCD_BUFFER+(LCD_YSIZE_TFT*LCD_XSIZE_TFT*2)>>1);rLCDSADDR3=(0<<11)|(LCD_XSIZE_TFT/1);voidLcd_PowerEnable(intpowerEnable)rGPGCON=rGPGCON&(3<<8)|(3<<8);rGPGDAT=rGPGDAT|(1<<4);rLCDCON5=rLCDCON5&(1<<3)|(powerEnable<
27、<3);voidPutPixel(unsignedintx,unsignedinty,unsignedshortc)(if(x<320)&&(y<240)LCD_BUFFER(y)(x)=c;voidPaint_Bmp(constunsignedcharbmp口)(intx,y;unsignedshortc;intp=0;for(y=0;y<240;y+)(for(x=0;x<320;x+)(c=bmpp+1|(bmpp<<8);if(x<320)&&(y<240)LCD_BUFFERyx=c;p=p+2;v
28、oidLcd_Init(void)(Lcd_Config();Lcd_Enable();Lcd_PowerEnable(1);Lcd.h文件:#ifndef_LCD_H_#define_LCD_H_/0=normal1=inverted/Halfwordswapcontrol/設置為TFT屏/設置為16bpp模式#defineMVAL(0)#defineINVVDEN(1)#defineHWSWP(1)#definePNRMODE(3)#defineBPPMODE(12)#defineLCD_XSIZE_TFT(320)#defineLCD_YSIZE_TFT(240)#defineCLKVA
29、L_TFT(7)# defineVBPD(14)# defineVFPD(11)# defineVSPW(2)# defineHBPD(37)# defineHFPD(19)#defineHSPW(29)#defineHOZVAL_TFT(320-1)#defineLINEVAL_TFT(240-1)#defineBPPMODE_TFT(12)#defineFRM565_TFT(1)# defineINVVCLK_TFT(1)# defineINVVLINE_TFT(1)# defineINVVFRAME_TFT(1)# defineINVVD_TFT(0)# defineINVVDEN_TFT(0)# definePWREN_TFT(0)externvoidLcd_Init(void);externvoidLcd_PowerEnable(intpowerEnable);externvoidPaint_Bmp(constunsignedcharbmp口);#
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 卷簾門維修合同協議書
- 中通快遞解除合同協議書
- 高新區合同轉讓協議模板
- 供暖沒有協議合同
- 開發合同暫停協議
- 攤位買賣協議合同
- 亞灣游艇租賃協議合同
- 防水涂料代加工協議合同
- 政府培訓協議合同怎么寫
- 合作股權協議合同
- 2025年鐘山職業技術學院單招職業適應性測試題庫1套
- 2025年度跨境電商平臺總經理聘用合同
- 施工員述職報告
- 個人顧問合同范本
- 2025年吉林鐵道職業技術學院單招職業技能測試題庫必考題
- 2025屆湖南省長沙市長郡二十校聯盟高三第二次預熱演練語文試題
- 中國糖尿病防治指南(2024版)解讀
- DB36 1993-2024 水產養殖尾水排放標準
- 《經絡與腧穴》課件-手太陰肺經
- 高校課堂教學創新大賽一等獎課件:混合教學模式創新實踐
- 人教版(2024)七年級下冊英語期中復習:Unit1~4+期中共5套學情調研檢測試卷(含答案)
評論
0/150
提交評論