freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm的圖像采集無(wú)線傳輸系統(tǒng)的設(shè)計(jì)(編輯修改稿)

2025-07-16 13:16 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 NAND Flash時(shí)需要發(fā)送命令,然后發(fā)出地址序列,最后讀/寫數(shù)據(jù)。需要使用各個(gè)使能信號(hào)來(lái)分辨是命令、地址還是數(shù)據(jù)[23]。S3C2440的NAND Flash控制器提供了NFCONF, NFCONT, NFCMMD, NFADDR, NFDATA, NFSTA39。I,和其他與ECC有關(guān)的寄存器。NAND Flash的讀寫操作順序如下:(1)設(shè)置NFCONF, NFCONT寄存器,配置NAND Flash。(2)向NFCMD寄存器寫入命令。(3)向NFADDR寄存器吸入地址。(4)讀/寫數(shù)據(jù):寄存器寫入地址。通過(guò)寄存器NFSTAT檢測(cè)NAND Flash的狀態(tài),在啟動(dòng)某個(gè)操作后,檢測(cè)R/nB信號(hào)以確定該操作是否完成、是否成功。 NAND FLASH接口電路S3C2440與K9F1208UOM的接口電路如圖34所示。圖34K9F1208UOM與S3C2400的連線圖如圖34所示,K9F1208UOM與S3C2440的連線有:8個(gè)v0引腳(voowo},S個(gè)使能信號(hào)((nWE, ALE, CLE, nCE, nRE), 1個(gè)狀態(tài)引腳(RDY/B),另外還有1個(gè)寫保護(hù)引腳((nWP)。地址、數(shù)據(jù)和命令都是在這些使能信號(hào)的配合下,通過(guò)8個(gè)I/O引腳傳輸。 SDRAM接口電路設(shè)計(jì) S3C2440存儲(chǔ)控制器分析S3C2440的存儲(chǔ)控制器提供了訪問(wèn)外部設(shè)備所需的信號(hào),它具有如下特性:支持?jǐn)?shù)據(jù)的大端、小端存儲(chǔ)模式(可以通過(guò)軟件設(shè)置)。每個(gè)BANK的地址空間為128MB,總共1 GB(BBANKs);可編程控制的總線位寬(8/16/32bit),不過(guò)BANKO只能選擇兩種位寬(8/16bit);共計(jì)8個(gè)BANK } BANKO~BANKS可以支持外接ROM, SRAM等,BANK6~BANK7除可以支持ROM, SRAM外,還支持SDRAM等;BANKO~BANK6共7個(gè)BANK的起始地址是固定的;BANK7的起始地址可編程選擇。BANK6, BANK的地址空間大小是可編程控制的;每個(gè)BANK的訪問(wèn)周期均可編程控制;可以通過(guò)外部的“wait”信號(hào)延長(zhǎng)總線的訪問(wèn)周期。在外接SDRAM時(shí),支持自刷新和省電模式。S3C2440在系統(tǒng)復(fù)位后的存儲(chǔ)控制器的地址空間分布如圖35所示 SDRAM的選擇及接口電路設(shè)計(jì)目前SDRAM生產(chǎn)廠家眾多,所以選擇一款合適的SDRAM芯片對(duì)整個(gè)系統(tǒng)的開發(fā)也是十分重要的。(4M16bit4Banks)。通過(guò)并聯(lián)兩片16位的K4S561632A從而組成32位的位寬,與S3C2440的32條數(shù)據(jù)線(DATAO~DATA 1)相連。S3C2440的存儲(chǔ)控制器中BANK6為擴(kuò)展SDRAM所用,因?yàn)锽ANK6的起始地址為0x30000000, 所以系統(tǒng)中SDRAM的起始地址也為Ox30000000。 圖36 兩片K4S561632A與S3C2440的連線圖 USB接口電路設(shè)計(jì)S3C2440中集成了2個(gè)USB主機(jī)接口和1個(gè)USB設(shè)備接口。USB主機(jī)接口遵從OHCI ,兼容USB 。USB設(shè)備接口具備5個(gè)Endpoint兼容USB 。由于本課題中只有USB接口攝像頭需要USB接口,所以1個(gè)USB主機(jī)接口就可以了,另外,為了便于系統(tǒng)調(diào)試,再增加1個(gè)USB設(shè)備接口,用來(lái)下載嵌入式Linux鏡像使用。S3C2440中擴(kuò)展USB接口十分方便,只要按照USB [24]。圖37 S3C2440與USB設(shè)備的鏈接框圖 UART接口電路設(shè)計(jì)S3C2440中集成了3個(gè)相互獨(dú)立的DART (,64字節(jié)Tx FIFO和64字節(jié)Rx FIFO ),每個(gè)DART都可以單獨(dú)地在中斷或是DMA模式下操作,也就是說(shuō)DART可以生產(chǎn)一個(gè)中斷或DMA請(qǐng)求用于CPU和DART之間的數(shù)據(jù)傳輸。如果外部設(shè)備提供UEXTCLK給UART,則DART可以工作在更高的速率。S3C2440可以通過(guò)RS232C標(biāo)準(zhǔn)接口很容易實(shí)現(xiàn)和其他設(shè)備、模塊的連接,從而進(jìn)行數(shù)據(jù)的輸入輸出。本系統(tǒng)中DART接口的主要用途是連接GPRS模塊Q2406B。由于RS232C標(biāo)準(zhǔn)與S3C2440中所定義的高、低電平信號(hào)不同,所以還要進(jìn)行信號(hào)電平的轉(zhuǎn)換。這里我們采用MAX3232來(lái)實(shí)現(xiàn)。DART接口電路框圖:圖38 DATR的接口電路框圖 LCD的選擇及接口電路設(shè)計(jì)S3C2440中集成了LCD控制器,被用來(lái)向LCD傳輸圖像數(shù)據(jù),并提供必要的控制信號(hào),比如VFRAME, VLINE, VCLK, VM等。S3C2440支持兩種LCD:TFT LCD和STN LCD,它們的特性如下(BPP表示bit per pixel,即每個(gè)色素使用多少位來(lái)表示其顏色)。(1) TFT ( ThinFilm Transistor薄膜晶體管)LCDTFT LCD支持單色(1BPP), 4級(jí)灰度( 2BPP ), 16級(jí)灰度(4BPP ) , 256色(BBPP)的調(diào)色板顯示模式。支持64K (16BPP)和16M (24BPP)色非調(diào)色板顯示模式。支持分辨率為640 X 480,320 X 240及其他多種規(guī)格的LCD。虛擬屏幕最大可達(dá)4MB。對(duì)于64K色,分辨率有2048 X 1024等多種。(2)STN ( Super Twisted Nematic超扭曲相列)LCD。STN LCD支持3種掃描方式:4位單掃描、4位雙掃描和8位單掃描。支持單色(1BPP), 4級(jí)灰度(2BPP)和16級(jí)灰度(4BPP)屏。支持256色(8BPP)和4096色(12BPP)彩色STN屏(CSTN)。支持分辨率為640480, 320240, 160160以及其他規(guī)格的多種LCD、虛擬屏幕最大可達(dá)4MB:對(duì)于256色,分辨率有4096 1024, 20482048, 10244096等多種。S3C2440集成的LCD控制器除了提供驅(qū)動(dòng)STN LCD, TFT LCD所需的所有信號(hào),另外,還特別提供額外的信號(hào)以支持SEC公司(( Samsung ElectronicsCompany)生產(chǎn)的TFT LCD(稱為SEC TFT LCDs )。S3C2440 LCD控制器的內(nèi)部結(jié)構(gòu)如圖REGBANK是LCD控制器的寄存器組,含17個(gè)寄存器及一塊256 X 16的調(diào)色板內(nèi)存,用來(lái)設(shè)置各項(xiàng)參數(shù)。而LCDCDMA則是LCD控制器專用的DMA信道,可以自動(dòng)地從系統(tǒng)總線上取到圖像數(shù)據(jù),這使得顯示圖像時(shí)不需要CPU的干涉。VIDPRCS將LCDCDMA中的數(shù)據(jù)組合成特點(diǎn)的格式,比如4位單掃描等,然后從VD[0:23)發(fā)送給LCD屏。同時(shí)TIMEGEN和LPC3600負(fù)責(zé)產(chǎn)生LCD屏所需要的控制時(shí)序,例如VSYNC, HSYNC, VCLK, VDEN,然后從VIDEO MUX送給LCD屏。其中LPC3600專用于SEC TFT LCD。為增強(qiáng)系統(tǒng)的可擴(kuò)展性,特意采用一個(gè)50口的LCD接口將S3C2440 LCD控制器提供的LCD控制信號(hào)全部引出,只需要通過(guò)對(duì)LCD控制器編程即可支持不同廠家生產(chǎn)的多種LCD。系統(tǒng)LCD接口如圖310所示。圖中LEND為行結(jié)束信號(hào),VCLK為L(zhǎng)CD時(shí)鐘信號(hào),VLINE, VFRAME,VM為L(zhǎng)CD提供線信號(hào)、幀信號(hào)和數(shù)據(jù)輸出使能信號(hào),VSYNC, HSYNC, VDEN為L(zhǎng)CD提供垂直同步信號(hào)、水平同步信號(hào)、數(shù)據(jù)傳輸開始信號(hào),LCD LPCOE,LCD LPCREV, LCD LPCREVB為L(zhǎng)CD提供時(shí)鐘控制信號(hào),LCD POWER為L(zhǎng)CD提供SV的直流電源[25]。另外,TSXM, TSXP, TSYM, TSYP為觸摸屏控制信號(hào)。 本章小結(jié)本章首先介紹了系統(tǒng)的硬件結(jié)構(gòu)框圖,按照劃分的硬件系統(tǒng)模塊依次對(duì)NAND FLASH接口、SDRAM接口、USB接口、DART接口及LCD接口的設(shè)計(jì)進(jìn)行了詳細(xì)的討論。第4章 基于Eclipse的軟件系統(tǒng)設(shè)計(jì) 構(gòu)建基于Eclipse的嵌入式軟件集成開發(fā)環(huán)境Eclipse是著名的跨平臺(tái)的集成開發(fā)環(huán)境((IDE),最初是由IBM公司開發(fā)替代商業(yè)軟件Visual Age For Java的下一代開發(fā)環(huán)境。2001年,IBM將Eclipse貢獻(xiàn)給開源社區(qū),現(xiàn)在由Eclipse基金會(huì)管理。2005年7月。Eclipse本身只是一個(gè)框架平臺(tái),最初主要用于java語(yǔ)言的開發(fā)。但是眾多插件的支持使得Eclipse同樣可以用來(lái)開發(fā)其他的語(yǔ)言,如c/c++, c, pert, cobol的等等。cdt(c/c++ development toolkit)就是支持c/c一開發(fā)的插件。許多軟件開發(fā)商也以Eclipse為框架推出了自己的集成開發(fā)環(huán)境。例如風(fēng)河(Wind River)公司開發(fā)的嵌入式IDE(集成開發(fā)環(huán)境)IDE 。Eclipse是一個(gè)開放源代碼的,基于插件(plugin)的擴(kuò)展性框架的最大的特點(diǎn)就是可擴(kuò)展性。Eclipse的擴(kuò)展性是通過(guò)擴(kuò)展點(diǎn)機(jī)制提供了插件組合的靈活性和擴(kuò)展性。插件是一個(gè)結(jié)構(gòu)化組件,同時(shí)也是系統(tǒng)運(yùn)行時(shí)最小的一個(gè)管理單元,擁有完整的生命周期,它負(fù)責(zé)擴(kuò)展點(diǎn)的定義并貢獻(xiàn)擴(kuò)展。Eclipse的另一個(gè)重要的特點(diǎn)就是易升級(jí)性?;贓clipse的集成開發(fā)環(huán)境具有良好的可升級(jí)性,與Eclipse的擴(kuò)展性類似,對(duì)需要升級(jí)的插件升級(jí)時(shí),只需要在Eclipse的插件目錄中加入插件的新版本,重新啟動(dòng)Eclipse就完成了對(duì)插件的升級(jí)。 嵌入式linux系統(tǒng)的移植 系統(tǒng)引導(dǎo)程序Bootloader的移植Bootloader是在系統(tǒng)上電開始時(shí)執(zhí)行的一段小程序,它的基本作用是完成硬件設(shè)備的初始化,建立內(nèi)存空間的映射圖,最后將操作系統(tǒng)內(nèi)核。目前比較成熟的bootloader:除此之外還具有網(wǎng)絡(luò)功能、從PC上通過(guò)串口或網(wǎng)絡(luò)下載下載文件、燒寫文件、將Flash上壓縮的文件解壓后再運(yùn)行等功能。對(duì)于ARM體系結(jié)構(gòu)的處理器,上電后處理器從地址0x00000000開始執(zhí)行第一條指令,所以需要把存儲(chǔ)器中Bootloader的地址映射到0x00000000,這樣ARM上電后Bootloader就開始執(zhí)行。Bootloader的啟動(dòng)過(guò)程可以分為單階段(Singe stage)、多階段(Multistage)兩種。多階段啟動(dòng)的Bootloader通常能夠提供更加強(qiáng)大、更加復(fù)雜的功能以及更好的可移植性。常見的Bootloader的基本上都是兩階段的啟動(dòng)過(guò)程。第一階段的程序代碼均是使用匯編語(yǔ)言來(lái)實(shí)現(xiàn),它的作用是完成依賴于CPU體系結(jié)構(gòu)的初始化,并為第二階段程序的執(zhí)行做準(zhǔn)備。第二階段則是通常采用C語(yǔ)言來(lái)實(shí)現(xiàn),這樣可以實(shí)現(xiàn)更加復(fù)雜的功能,而且代碼具有更好的可讀性和可移植性[26]。 移植linux內(nèi)核Linux內(nèi)核是整個(gè)軟件系統(tǒng)的核心,Linux內(nèi)核的移植對(duì)系統(tǒng)的穩(wěn)定性等都有著重要的影響。, 。Linux的啟動(dòng)過(guò)程可以分為兩部分:與硬件相關(guān)的引導(dǎo)階段和后續(xù)的通用啟動(dòng)過(guò)程。不同架構(gòu)上Linux的啟動(dòng)過(guò)程稍有不同,在ARM架構(gòu)處理器上的啟動(dòng)過(guò)程如圖41所示。引導(dǎo)階段通常使用匯編語(yǔ)言編寫,它首先檢查內(nèi)核是否支持當(dāng)前架構(gòu)的處理器,然后檢查是否支持當(dāng)前開發(fā)板。在檢查通過(guò)后,為調(diào)用下一階段的start kernel函數(shù)做準(zhǔn)備。主要有兩個(gè)步驟:(1)連接內(nèi)核時(shí)使用的虛擬地址,所以要設(shè)置頁(yè)表、使能MMU。(2)調(diào)用C函數(shù)start kernel之前的常規(guī)工作,包括復(fù)制數(shù)據(jù)段、清楚數(shù)據(jù)段、清楚BSS段、調(diào)用start kernel函數(shù)。第二階段的關(guān)鍵代碼主要使用C語(yǔ)言編寫,它進(jìn)行內(nèi)核初始化的全部工作,最后調(diào)用rest init函數(shù)啟動(dòng)init過(guò)程,創(chuàng)建系統(tǒng)第一個(gè)進(jìn)程:init進(jìn)程。 在分析Linux在ARM架構(gòu)處理器上的啟動(dòng)過(guò)程后,下面來(lái)給出Linux內(nèi)核在本系統(tǒng)使用的S3C2440上實(shí)現(xiàn)移植的過(guò)程。登錄Linux內(nèi)核官方網(wǎng)站()下載Linux內(nèi)核源碼壓縮包。解壓后即可得到Linux內(nèi)核源碼,執(zhí)行如下命令即可:$ tar xjf // 0對(duì)于ARM架構(gòu)的嵌入式微處理器,與其體系相關(guān)的代碼在Linux內(nèi)核源碼包的子目錄arch/arm/目錄下,Linux內(nèi)核的移植工作主要就是修改這個(gè)目錄下的文件。移植的主要步驟如下:(1)首先修改頂層Makefile,配置、編譯內(nèi)核以確定所下載的內(nèi)核源碼包可以被正確的編譯。如下所示: 將185 ARCH ?=$(SUBARCH) //185為代碼行號(hào),下同186 CROSS_COMPILE ?=修改為:185 ARCH ?=arm186 CROSS COMPILE ?=armlinux然后執(zhí)行make命令配置內(nèi)核:make smdk2410_ defconfig //smdk2410_ defconfig位于arch/arm/configs/目錄下。最后執(zhí)行make uImage編譯內(nèi)核,即可在頂層目錄中生成內(nèi)核映像文件vmlinux,還可以在arch/arm/boot/目錄中生成UBoot格式的內(nèi)核映像文件uImage o至此,就可以通過(guò)前面已經(jīng)移植的UBoot來(lái)測(cè)試剛剛生成的內(nèi)核映像文件是否正確。測(cè)試通過(guò)后,即可向下進(jìn)行移植工作了。(2)修改內(nèi)核。在本系統(tǒng)移植過(guò)程中對(duì)內(nèi)核代碼的修改主要是修改系統(tǒng)晶振頻率,使之與本系統(tǒng)所使用的晶振頻率相符。需要修改的文件為:arch/arm/machs3 c2440/machs3 。 將:s3c24xx一nit clocks(16934400)。 修改為:s3c24xx_init clocks(1200000)。(3)修改MTD分區(qū)。MTD(Memory Technology Device),即內(nèi)存技術(shù)設(shè)備,是Linux中對(duì)ROM, NOR Flash, NAND Flash等存儲(chǔ)器設(shè)備抽象出來(lái)的一個(gè)設(shè)備層,它向上提供統(tǒng)一的訪問(wèn)接口:讀、寫、擦除等。屏蔽了底層硬件的操作、各類存儲(chǔ)設(shè)備的差異。需要修改的文件為:arch/arm/plats3 c24xx/,主要修改的是該文件中的smdk一 default nand_part數(shù)據(jù)結(jié)構(gòu)。本系統(tǒng)中對(duì)NANDFlash的戈d分為:前2MB用于存放Linux內(nèi)核,剩下的
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1