劉彥文《基于ARM的嵌入式系統原理及應用》第11章-1_第1頁
劉彥文《基于ARM的嵌入式系統原理及應用》第11章-1_第2頁
劉彥文《基于ARM的嵌入式系統原理及應用》第11章-1_第3頁
劉彥文《基于ARM的嵌入式系統原理及應用》第11章-1_第4頁
劉彥文《基于ARM的嵌入式系統原理及應用》第11章-1_第5頁
已閱讀5頁,還剩154頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 基于基于ARM的的 嵌入式嵌入式系統原理及應用系統原理及應用 劉彥文劉彥文 編著編著 2017年年2月月 第第11章章 微處理器片內其他模塊(微處理器片內其他模塊(1)高等院校信息技術規劃教材高等院校信息技術規劃教材本課件的配套教材本課件的配套教材基于基于ARM的的嵌入式嵌入式系統原理及應用系統原理及應用 劉彥文劉彥文 清華大學出版社 2017/2 第第11章章 微處理器片內微處理器片內 其他模塊其他模塊(1)11.1 MMC/SD/SDIO主控制器主控制器11.1.1 MMC/SD/SDIO卡概述 MMC/SD/SDIO卡簡介 MMC卡nMMC卡(Multimedia Card)稱為多媒體

2、卡。1997年由西門子和SanDisk共同推出,卡內有控制器和存儲器,存儲器技術基于東芝的Nand Flash技術。卡的尺寸為24mm32mm1.4mm,卡的工作電壓為2.73.6V,卡上有7個引腳。MMC卡可以插入SD卡座。nMMC卡不支持卡上加密技術。nMMC卡支持兩種工作模式:MMC和SPI模式。MMC模式是默認模式,SPI模式是可選的第二種模式。 SD卡nSD卡(Secure Digital Memory Card)稱為安全數字存儲卡。1999年由松下、東芝和SanDisk共同推出,2000年成立了SD協會(Secure Digital Association,SDA),IBM、Mic

3、rosoft、Motorola、NEC、Samsung等大量廠商參加。SD卡已成為目前消費數碼產品中應用最廣泛的一種存儲卡。SD卡主要用于數碼相機、攝錄機、PDA、手機及多媒體播放器。 nSD卡的技術是基于MMC卡發展而來,卡內存儲器使用Nand Flash技術。SD卡包含一個內容保護機制,符合SDMI(Secure Digital Music Initiative,安全數字音樂促進)標準。SD卡的安全系統采用雙向認證和“新密碼算法”來防止卡的內容被非法使用。nSD卡也支持對用戶自己的數據進行非安全訪問。nSD卡還支持基于常用標準的第二安全系統,如ISO-7816,這樣就可以將SD卡連接到公共

4、網絡和其他系統,用于支持移動電子商務和數字簽名的應用。 SDIO卡nSDIO卡(Secure Digital Input Output Card)稱為安全數字I/O卡。SDIO卡有自己單獨的規范,可以從SDA得到。SDIO卡可以包含存儲功能,以及I/O功能。SDIO卡的存儲部分應該完全兼容SD卡規范。SDIO卡基于并兼容SD卡,這種兼容包括機械、電氣、電源、信號和軟件。SDIO卡的意圖是為移動電子設備在低功耗下提供高速數據讀寫。nSDIO卡是使用SD卡的插座引腳來連接外部設備的,典型的應用有:Wi-Fi Card(無線網卡)、CMOS Sensor Card(CMOS相機傳感器卡)、GPS C

5、ard(GPS接收器卡)、Bluetooth Card(藍牙卡)等等。SDIO支持SPI/1位/4位數據總線模式,工作電壓、卡的尺寸、引腳與SD卡兼容。 MMC/SD/SDIO卡引腳信號含義nMMC/SD/SDIO卡需要插到一個卡座(插槽)中,卡座通常在微處理器片外,通過總線與MMC/SD/SDIO主控制器(host controller)連接。例如S3C2410A芯片內部集成的MMC/SD/SDIO主控制器,受ARM920T控制,芯片外部只需將相應的引腳通過總線與卡座引腳連接即可使用。 nMMC/SD/SDIO卡支持兩種總線模式:SPI(Series Peripheral Interface

6、,串行外設接口)總線模式和SD總線模式。SPI總線模式只支持一條數據線傳輸數據,數據傳輸速率沒有SD總線模式所支持的4條數據線傳輸的速率快。兩種總線模式下卡的引腳信號的定義不同、卡座引腳與主控制器的連線方式也不同。n圖11.1是MMC/SD卡的引腳排列,P407表11-2是SD總線模式下MMC/SD卡引腳信號的含義,表11-3是SPI總線模式下MMC/SD卡引腳信號的含義。另外,SDIO卡與SD卡引腳信號含義相同。 圖11.1 MMC/SD卡引腳排列 n從表11-2可以看出,MMC卡未使用1號引腳(保留),沒有8、9號引腳,MMC卡只使用一條數據線DAT0。SD卡比MMC卡多了8、9號兩個引腳

7、。SD卡分為1位數據線模式和4位數據線模式。1位模式只使用一條數據線DAT0,稱為標準總線模式;4位模式使用4條數據線DAT3DAT0,稱為寬總線模式。數據線可以雙向傳輸數據。n上電初始化時,如果1號引腳連接上拉電阻,初始化時該引腳檢測到高電平,卡就支持SD總線模式;如果1號引腳初始化時檢測到低電平卡就支持SPI總線模式。 nSD卡上電后默認使用標準總線模式,可以設置為寬總線模式。SD卡其余引腳描述如下:2號引腳傳輸從主控制器到卡的命令,并且傳輸從卡返回到主控制器的應答,雙向傳輸。5號引腳接收從主控制器送來的時鐘信號,頻率在主控制器內部可調。8號引腳和9號引腳,除了可以傳輸數據外,DAT1線在

8、SDIO模式不用于數據傳輸操作時,能夠作為卡的中斷輸出。DAT2線在SDIO模式能夠作為讀等待信號。3、4、6號引腳分別作為電源或地,一般可以接3.3V和地。nSPI總線模式2號引腳是卡的數據輸入引腳,7號引腳是卡的數據輸出引腳。1號引腳應該在初始化時接低電平用作片選信號,卡才能夠以SPI總線模式操作。 MMC/SD卡座與主控制器的連接n圖11.2為SD總線模式,MMC/SD卡座與S3C2410A的MMC/SD/SDIO主控制器引腳連接舉例圖。n圖中卡座的引腳DAT3DAT0與S3C2410A主控制器引腳SDDAT3SDDAT0連接,同時連接10K上拉電阻;卡座的CMD與主控制器的SDCMD連

9、接,同時連接10K上拉電阻。由于卡座的CD/DAT3引腳連接上拉電阻,卡插入卡座后,初始化時卡被設置為SD總線模式。n圖中卡座11號引腳CD電位的變化,用于表示卡插入卡座或從卡座拔出。CD引腳連接到S3C2410A的EINT7引腳,EINT7在S3C2410A內部設置上拉電阻,當卡座中未插入卡時,CD為高電平;當卡座插入卡時,卡座內部使CD變為低電平,產生中斷請求。當從卡座中拔出卡時,CD又恢復為高電平。同樣,圖中卡座10號引腳WP電位的變化,用于表示卡的寫保護狀態,該引腳連接到S3C2410A的GPIO中的某個引腳即可。 圖11.2 MMC/SD卡座與主控制器連接圖 SD卡內部結構n SD卡

10、內部結構見圖11.3。n圖11.3中,SD卡引腳信號經過接口驅動器與卡接口控制器連接,卡接口控制器與一組寄存器、存儲器核(memory core)接口連接,加電檢測電路能夠產生復位(reset)信號到卡接口控制器和存儲器核接口。存儲器核由Nand Flash存儲器組成。SD主控制器通過CMD引腳向SD卡發送命令并讀取CMD引腳返回的應答信息;主控制器寫入SD卡的數據或從SD卡讀出的數據,通過雙向數據線DAT3DAT0或DAT0傳輸。nSD卡內電路的供電電源、時鐘信號由引腳提供。 11.1.2 S3C2410A MMC/SD/SDIO主控制器概述 主控制器特點n主要特點有: 符合SD存儲器卡規范

11、ver 1.0,兼容MMC卡規范ver 2.11; 兼容SDIO卡規范ver 1.0; 16字(64字節)FIFO用于數據發送和接收(Tx/Rx); 40位命令寄存器; 136位應答寄存器; 8位預分頻邏輯; CRC7和CRC16產生器; 支持查詢(polling)、中斷和DMA數據傳輸模式,支持字節或字格式傳輸; 支持1位、4位(寬總線)模式,塊/數據流(stream)模式; 對SD/SDIO,在數據傳輸模式,SDCLK最高25MHz; 對MMC,在數據傳輸模式,SDCLK最高20MHz。 MMC/SD/SDIO主控制器使用的引腳信號n參見圖11.2,S3C2410A的MMC/SD/SDIO

12、主控制器,提供以下引腳信號,用來與卡座連接:SDDAT3:0,SD主控制器接收/發送數據;SDCMD,SD主控制器接收應答/發送命令;SDCLK,SD主控制器送出的時鐘。n另外,卡座的CD(Card Detect,插卡檢測)引腳應該連接到S3C2410A的外部中斷請求引腳,例如EINT7;卡座的WP(Write Protect,寫保護)引腳,應該連接到S3C2410A的某個GPIO引腳,如GPH8。11.1.3 S3C2410A MMC/SD/SDIO主控制器組成n圖11.4中,左側與APB總線接口連接的信號,分別是S3C2410A芯片內部的地址、選擇、時鐘、寫入數據和讀出數據信號。DMA、I

13、NT模塊產生DMA請求、接收DMA響應以及產生中斷請求信號。ARM920T通過APB總線接口,可以對主控制器內各個寄存器進行讀寫,從而實現對主控制器的控制。n圖11.4中,上部CMD寄存器是命令寄存器,接收ARM920T送來的命令中的高8位和隨后的32位,通過命令控制模塊,將它們與主控制器內部產生的CRC7(7位循環冗余校驗碼,Cyclic Redundancy Check)及1位停止位的內容,由并行變串行經TxCMD線發送到卡;從卡返回的應答信息,經由RxCMD線,由串行變并行,送應答寄存器,等待ARM920T讀出。 圖11.4 S3C2410A MMC/SD/SDIO主控制器組成框圖n圖1

14、1.4中預分頻器用戶可編程,用于對PCLK頻率分頻,使得送到卡的SDCLK時鐘信號的頻率能夠被改變。通常對卡初始化時,要求SDCLK頻率較低,例如設置為400kHz;另外有些SD卡的訪問時間較長,SDCLK設置為25MHz時會引起超時錯誤,需要降低SDCLK的頻率。n圖11.4中FIFO接收從ARM920T送到主控制器的并行數據,經過數據控制模塊,連同CRC16(16位循環冗余校驗碼)由并行變成串行,經TxDAT3:0,發送到卡,如果使用1位數據總線,只用TxDAT0傳送。從卡讀出數據,經RxDAT3:0,串行送到數據控制模塊變為并行,存入FIFO,等待ARM920T讀取。如果使用1位數據總線

15、,只用RxDAT0傳送。 n可以通過DMA、中斷或查詢模式,將FIFO數據讀入內存,或由內存將數據送到FIFO。n需要注意的是,4位數據總線模式,4條傳輸線TxDAT3:0(或RxDAT3:0)的CRC16是分別計算的,即每一條傳輸線單獨計算產生CRC16校驗碼。n另外,命令發送線TxCMD和應答接收線RxCMD,使用S3C2410A芯片的同一個引腳SDCMD分時傳輸,而4條數據發送線TxDAT3:0和4條數據接收線RxDAT3:0,使用S3C2410A的對應4個引腳SDDAT3:0,分時傳輸。11.1.4 MMC/SD總線協議總線協議 MMC/SD總線協議概述nSD總線模式傳輸的命令、應答及

16、數據,總是以一個起始位(二進制數0)開始,以一個停止位(二進制數1)結束。停止位也稱結束位。總線上傳輸的命令、應答及數據描述如下:n命令:一個操作是從命令開始的,命令由主控制器發出,從CMD線傳送到SD卡。主控制器通過發送命令,對SD卡進行操作。n應答:應答是由卡發出,從CMD線傳送到主控制器,作為對先前卡收到命令的一個回答。也有個別命令,不需要卡產生應答。數據:數據可以從主控制器傳送到卡,或從卡傳送到主控制器。數據在數據線DAT3:0或DAT0上傳輸。 命令nMMC/SD協議中有兩種命令,一種是ACMD(Application Specific Command)命令;另一種是GEN_CMD(

17、General Command)命令,也直接稱為CMD命令。所有的ACMD命令在發送前,必須先發送CMD55命令。而GEN_CMD命令在發送前,不需要任何標識命令,可直接發送。通常卡收到命令后發送給主控制器一個應答。nMMC/SD協議命令長度為固定的48位,具體格式見P412表11-4。n表11-4中命令變量,例如對于讀寫卡上塊數據的命令,表示的是塊數據的字節起始地址。這類命令稱為帶地址的命令。n命令中包含CRC7校驗位;位47、46和位0的值是固定的。n命令在CMD線上傳輸時,先傳輸最高位,最后傳輸最低位。nMMC/SD協議常用命令見P413表11-5。n從表11-5可以看出,有的命令,卡不

18、產生應答,卡和主控制器之間也無數據傳輸,例如CMD0;有的命令,卡只產生應答,無數據傳輸,例如CMD2,卡的CID內容是通過應答傳送給主控制器的;有的命令,卡不僅產生應答,卡與主控制器之間還要傳輸數據,例如CMD17,這類命令稱為帶數據(傳輸)的命令。nCMD0命令的48位二進制數表示如下:0100,0000,0000,0000,0000,0000,0000,0000,0000,0000,1001,0101n其中最高2位為01(起始位,傳輸位),其次6位為000000(CMD0對應的命令索引或編號),之后32位全為0(命令變量),接著7位為1001010(CRC7),最后1位為1(停止位)。

19、應答(response)n應答是卡收到命令后,對主控制器的回應。卡上通常有6個寄存器的內容可以作為應答的部分內容,6個寄存器的名稱和含義見P413表11-6。寄存器各位的含義見相關規范。n上述OCR、CID、CSD和SCR寄存器中,包含卡的狀態信息,其中CSD寄存器中有部分域是可以由主控制器設置的;RCA和DSR寄存器保存卡的實際配置參數。RCA內容由卡在識別期間送主控制器,缺省值為0 x0000。n應答分為短應答和長應答兩種格式,分別為48位和136位二進制數。應答中通常還包含起始位、傳輸位、CRC7和停止位。傳輸位值為固定的二進制數0,表示傳輸方向由卡到主控制器。 n以下通過舉例說明幾種應

20、答的格式及含義。 R1應答 R1應答具體含義見表11-7。 R1b應答 R1b應答具體含義見表11-8。 R3應答 R3應答具體含義見表11-9。 R6應答 R6應答具體含義見表11-10。 (見P414-415) 數據線與讀寫時序n主控制器與MMC卡只能通過DAT0一條數據線串行傳輸數據。主控制器與SD卡可以選擇1位或4位模式使用DAT0或DAT3:0數據線傳輸數據。初始化后SD卡默認為1位模式,用ACMD6命令可以將SD卡設置為4位傳輸模式。nDAT3:0除了用于傳輸數據外,還可以用作某些狀態的指示。初始化階段,SD卡通過DAT3可以檢測卡使用SPI還是SD總線模式;通過DAT2主控制器發

21、送讀等待信號;通過DAT1主控制器接收卡送來的中斷請求;通過DAT0主控制器檢測卡是否處于忙狀態。在寫多塊數據時,寫入卡的數據先保存在卡的緩沖區,然后由緩沖區寫入Flash存儲體,當緩沖區滿時,卡處于忙狀態,DAT0輸出為低電平。nMMC卡與主控制器之間傳輸的數據可以選擇數據流(stream)或塊(block)方式。SD卡只能使用塊方式。通常MMC/SD卡使用塊方式較多。塊的大小可以由主控制器對卡進行設置,一般選擇塊大小為512字節。傳輸可以選擇單塊或多塊傳輸模式。n圖11.5為讀塊時序圖,圖11.6為寫塊時序圖。 圖11.5 讀塊時序圖 圖11.6 寫塊時序圖n從圖11.5可以看出,主控制器

22、發出讀多塊命令后,卡通過CMD線送出應答,并由DAT線傳輸卡的一塊數據及CRC16,然后傳輸下一塊,。要停止傳輸時,主控制器發出停止傳輸命令,卡停止傳輸。圖11.6寫塊時序中,如果卡的緩沖區滿,卡通過使DAT0為低電平表示卡忙(busy)。 11.1.5 S3C2410A MMC/SD卡初始化及數據傳輸 初始化n對MMC/SD卡進行初始化可以參考以下主要步驟: 對MMC/SD卡與S3C2410A連接的GPIO引腳初始化; 插卡自動檢測參考圖11.2,插卡時S3C2410A的EINT7引腳電位變低,引起中斷,進行后續處理; 復位:主控制器發送CMD0命令,復位MMC/SD卡的狀態; 判斷是MMC

23、卡還是SD卡:主控制器發送CMD55,它是帶R1應答的命令,查看是否有返回值。由于MMC卡不支持CMD55,因此沒有返回值則說明插入的是MMC卡,否則是SD卡; 電壓檢測:對MMC卡,發送CMD1命令,對SD卡發送ACMD41命令,根據應答中OCR內容,檢測卡所支持的最高電壓及最低電壓,當卡的電壓范圍與主控制器的不匹配時,卡進入非激活狀態; 獲取卡的CID:主控制器發送CMD2命令,卡通過應答回送CID。CID是每張卡都有的一個唯一的標識,是由生產商在生產時就定義好的; 分配或詢問卡的相對地址:RCA(Relative Card Address,卡相對地址)是卡在本地系統中的一個臨時地址,是系

24、統初始化時由主控制器發送CMD3命令動態分配或詢問卡得到的。對MMC卡,CMD3命令設置RCA;對SD卡,CMD3命令詢問RCA,主控制器認為卡返回的RCA值合適,就使用這個RCA值,否則繼續用CMD3命令詢問RCA。之后,主控制器對卡的訪問就通過這個地址進行。 數據傳輸n主控制器讀MMC/SD卡上數據前,要先發送CMD7命令,把卡設置為傳輸狀態,然后發讀卡命令CMD17(單塊)或CMD18(多塊),命令中要指定卡上數據的32位字節起始地址,然后數據從卡傳送到主控制器。當指定的數據塊從卡傳送到主控制器(單塊),或主控制器發出強制停止傳輸命令CMD12后(多塊),數據傳輸過程被停止。n主控制器往

25、MMC/SD卡上寫數據前,要先發送CMD7命令,然后發寫卡命令CMD24(單塊)或CMD25(多塊),命令中同樣要指定寫入卡上數據的字節起始地址,然后數據從主控制器傳送到卡。當指定的數據塊從主控制器傳送到卡(單塊),或主控制器發出強制停止傳輸命令CMD12后(多塊),數據傳輸過程被停止。n在讀卡過程中,如果卡檢測到錯誤,例如地址超范圍、地址對齊錯、卡停止發送數據錯等,卡停止數據傳輸,只有主控制器發出強制停止傳輸命令后,卡才會通過應答傳輸錯誤信息給主控制器。同樣,在寫卡過程中,發生寫保護、地址超范圍、地址對齊錯等錯誤,卡停止數據傳輸,等待主控制器發出強制停止傳輸命令,然后回送錯誤信息。11.2

26、LCD控制器控制器11.2.1 液晶顯示基礎知識液晶顯示基礎知識 LCD(Liquid Crystal Display,液晶顯示器)是嵌入式系統中常用的輸出設備。 液晶顯示原理 液晶材料特性n實驗發現,液晶材料在一定的溫度范圍,處于兼有液體和晶體兩種特性的物質狀態中。液晶顯示器是以液晶材料為基本材料,并將其裝在兩塊導電玻璃基片間的液晶盒中,依靠外電場作用于初始排列的液晶分子,使液晶單元產生遮光與透光效果,達到顯示目的的一種顯示設備。n液晶分子的液體特性,使其具有兩個非常有用的特點。一個特點是,當把液晶材料裝入兩面帶有細小溝槽的液晶盒中,在無外電場作用下,液晶單元的液晶分子會順著兩個面的溝槽方向

27、排列;如果對液晶單元施加一定的外電場,棒狀液晶分子會以電流流向方向排列。另一個特點是,如果液晶層分子排列方向發生了扭轉,會使通過液晶層的光線隨之扭轉,以不同方向(與入射面方向不同)從另一個面射出。n液晶材料本身并不發光,通常在玻璃基片的一側有一個光源,稱為背光源。液晶面板一般在每個像素對應處有一個液晶單元,液晶單元連接一對電極,通過給電極對施加一定的電壓,或使電壓為0,使得液晶單元能夠阻擋背光源的光線通過,或允許背光源的光線通過,產生像素暗、亮的顯示效果。 TN型液晶器件顯示原理nTN(Twisted Nematic,扭曲向列型)液晶器件顯示原理參見圖11.7。圖圖11.7 TN型液晶器件顯示

28、原理圖型液晶器件顯示原理圖n圖11.7中,兩塊導電玻璃基片間充滿了液晶,上下偏光片(起偏器、檢偏器)偏振軸作正交設置。當不加電壓時,如圖左側,液晶分子沿著兩個面排列,但分子長軸在上下基片之間連續扭曲90度。由于液晶分子的排列使得液晶具有90度的旋光性,從而使入射偏振光的偏振方向(透光方向)旋轉90度,透過檢偏器,實現透光。n圖11.7中右側表示加了一定的電壓后,液晶分子的長軸開始沿電場方向傾斜。當電壓達到一定值時,液晶分子都變成沿電場方向排列,這時液晶90度旋光性能消失,進入的偏振光被檢偏器阻隔,光線無法射出,從而可以遮光。n也有將圖11.7中上下偏光片的偏振軸平行排列的,這種液晶器件不加電時

29、遮光,加電時透光。 TN型液晶器件電光特性曲線nTN型液晶器件電光特性曲線見圖11.8。 圖11.8 TN型液晶器件電光特性曲線 n當液晶器件的起偏器和檢偏器的偏振軸正交排列,如圖11.7所示,它的電光特性曲線是圖11.8(b)中的正型電光特性曲線。n在圖11.8(b)中,橫軸表示加在液晶單元電極對上的電壓,縱軸表示液晶單元透光強度,它是跟隨加在電極對上的電壓改變的。當施加的電壓為0時,透光強度最大;當施加的電壓等于閾值電壓Vth時,透光強度為90%;隨著施加電壓的增大,透光強度逐漸降低,當施加電壓達到飽和電壓Vs后,透光強度降低為10%;之后電壓的增大引起透光強度的變化就很緩慢了。當施加電壓

30、變為0時,透光強度又變為最大。 n當液晶器件的起偏器和檢偏器的偏振軸平行排列時,它的電光特性曲線是圖11.8(a)中的負型電光特性曲線。n為了簡單起見,本章其余部分描述中,不再區分正型和負型電光特性曲線,只簡單地說某一像素加電顯示,不加電不顯示。n由于液晶體在直流電壓作用下會產生電解作用,并且液晶單元是容性負載,加在電極對上的正壓或負壓所起的作用是一樣的,所以采用交流驅動的方法,某段時間電極對施加正壓,另一段時間施加負壓。 STN型液晶器件顯示原理nSTN(Super Twisted Nematic,超扭曲向列型)液晶器件顯示基本原理,是將傳統的TN液晶分子扭曲角加大,實驗證明這樣就可以明顯地

31、改善電光特性曲線的陡度。扭曲角在180360度時的液晶器件被稱為超扭曲向列型液晶。當扭曲角為270度時,電光特性曲線陡度最大。 STN LCD基礎知識nS3C2410A LCD控制器支持的STN LCD面板可以分為單色面板和彩色面板。不同的單色面板可以分為只顯示單色、標定為4級灰度、標定為16級灰度的面板。不同的彩色面板可以分為顯示256色、顯示4096色的面板。n只顯示單色的STN面板顯示原理介紹如下。n假設面板規格為320240,表示面板上有240行、360列顯示像素。也就是說,240行中的每1行,有360個像素;而360列中的每1列,有240個像素。 n生產液晶面板時,在上下玻璃基片內側

32、,各光刻出X方向和Y方向兩組平行的直線電極,每一個X、Y電極交叉處對應一個液晶單元(像素)。nX方向電極稱為行電極,也稱掃描電極;Y方向電極稱為列電極,也稱信號電極。n在X方向某一電極與Y方向某一電極施加驅動電壓后,在外電場作用下,X方向與Y方向交叉點液晶單元中液晶分子的初始排列狀態發生改變,調制通過液晶單元的背光,產生亮與暗、遮光與透光的效果,達到顯示的目的。n外加驅動電壓必須超過液晶顯示的閾值(通常大于飽和電壓),并且應該維持一定時間。當驅動電壓消失后,該液晶單元的液晶分子排列又恢復到初始排列狀態。nSTN液晶屏一幀的顯示過程,可以細分為一幀中各行的顯示過程。例如液晶屏為240行,360列

33、。每一幀的顯示先從第一行(液晶屏頂部)開始,然后是第2行、第3行,直至最后1行,即第240行。最后1行顯示完,一幀顯示結束,開始下一幀的顯示。這種顯示模式稱為單掃描模式。 n每一行的顯示,首先由LCD控制器將這一行的360個像素(列像素)對應的數據(像素數據),比如1表示顯示,0表示不顯示,通過傳輸線送到LCD驅動器的移位寄存器。n移位寄存器的每1位,與1個列電極相連。n之后LCD控制器通過傳輸線送出行同步信號脈沖到LCD驅動的某一行的電極,在這一行的電極與連接在移位寄存器上的360個列電極共同作用下,對這一行上的360個液晶單元分別施加了不同的兩種合成驅動電壓,例如某一像素合成電壓為0,而另

34、一像素合成電壓為飽和電壓,由此決定了這一行上列像素的顯示與不顯示。n行同步信號脈沖結束后,這一行360個列液晶單元將不再施加行驅動電壓。這種驅動技術稱為無源動態驅動技術。 n液晶屏雙掃描模式指的是,把液晶屏分成上半屏和下半屏兩部分,比如某液晶屏全屏為240行,把1120行作為上半屏,121240行作為下半屏。nLCD控制器首先同時送出第1行和第121行的數據(例如8條數據線中4條用于第1行數據傳輸,另4條用于第121行數據傳輸,連續傳輸),分別送到LCD驅動器的兩個移位寄存器,當這兩行全部數據送完,LCD控制器發出行同步信號脈沖,LCD驅動器同時掃描這兩行。然后LCD控制器依次送出第2行和第1

35、22行數據,掃描; 。nS3C2410A LCD控制器支持單色STN面板灰度顯示的基本原理描述如下。n前面講過,對LCD面板X方向某一電極與Y方向某一電極施加驅動電壓,該電極對應的液晶單元處于顯示狀態;沒有施加驅動電壓,液晶單元處于非顯示狀態;也就是說液晶單元只處于這兩種狀態中的一種。驅動電壓不能單獨控制某一液晶單元(像素)顯示的亮暗程度(灰度級)。n一個單色LCD面板如果標定為16級灰度時,有灰度0、1、2 、15共16個級,如果LCD面板上某像素顯示灰度級為0,LCD控制器把每16幀作為一個周期,在這連續的16幀中,控制該像素均不顯示;另一個像素灰度級為1,LCD控制器控制該像素在1幀中顯

36、示,其余15幀該像素均不顯示;對灰度級為15的像素,LCD控制器控制該像素在16幀均顯示。用這種方法,實現了灰度16個級的顯示。n對于STN彩色面板,例如能夠顯示4096色,其中紅色有16個級、綠色有16個級、藍色有16個級。n紅、綠、藍色各個級組合起來就能夠產生4096種顏色。n彩色顯示的基本原理,是顯示面板的每個像素(分為3個窗口,各加了紅、綠、藍濾光片,可以顯示紅、綠、藍三原色)由紅、綠、藍三個子像素組成,紅色(綠色、藍色)16個級產生的方法與前述灰度產生16個級的方法相同。nS3C2410A LCD控制器輸出到單色STN LCD驅動器的數據,是某一行、某一列像素亮與滅對應的數據;對彩色

37、STN LCD驅動器,是某一行、某一列像素的3個子像素(紅、綠、藍)亮與滅對應的數據。 TFT LCD基礎知識nTFT(Thin Film Transistor,薄膜晶體管型) LCD內部驅動方式與STN LCD不同之處是,TFT LCD對液晶屏的每個液晶單元(像素)連接一個有源器件,使每個液晶單元可以單獨驅動、控制。這種驅動技術稱為有源驅動技術。有源器件和矩陣電極均在下基板,上基板只有一個公用電極。TFT LCD使用的液晶材料,仍然是TN(扭曲向列型)材料。nTFT液晶屏內部驅動電路框圖見圖11.9。n單個薄膜晶體管各電極名稱、與存儲電容和液晶電容的連接見圖11.9(a),TFT液晶屏內部驅

38、動液晶矩陣電路框圖見圖11.9(b),圖中只畫出4行4列總共驅動16個TFT及所連接的液晶單元電極。 (a) 圖11.9 TFT電極名稱及連接、液晶屏內部 驅動液晶矩陣電路框圖 (b) 圖11.9 TFT電極名稱及連接、液晶屏內部 驅動液晶矩陣電路框圖n在圖11.9(a)中,薄膜晶體管的三個電極分別是g(gate,柵極)、s(source,源極)和d(drain,漏極)。n當g極加一個適當的高電平,電流從s極流向d極。當g極加一個低電平,s極與d極斷開。n每個TFT的d極連接著一個液晶單元電極,這個電極和公用電極之間夾有一層液晶(相當于一個液晶盒),從電學角度可以把它看作一個電容CLC;TFT

39、的d極還連接著一個存儲電容CST,目的是為了增加并聯的液晶單元的顯示時間。n當g極(行線)為高電平時,s極(列線)的電流流向CST及CLC(圖中細線表示電流方向),這兩個電容上電壓的大小決定了液晶單元透過光線的強度。n當g極為低電平時,由存儲電容CST的電壓維持液晶單元透過光線的強度不變,直到下一次g極為高電平為止。n圖11.9(b)中,LCD顯示屏的每一行,也稱柵極連線(或行線),用g1、g2、g3、g4表示。n每一行上所有TFT的柵極都連在一起。n圖中LCD顯示屏的每一列,也稱源極連線(或數據線),用s1、s2、s3、s4表示。n每一列上所有的TFT的源極都連在一起。nLCD顯示采用行掃描

40、法驅動每一行連接的各列液晶單元電極。n例如g1線驅動為高電平,g2、g3、g4為低電平,g1線上各TFT導通,g2、g3、g4線上各TFT截止,分時分別驅動s1、s2、s3、s4線,g1線上4個TFT分別對各自的CST和CLC充電,由于s1、s2、s3、s4電壓可能不同,決定了各液晶單元透過光線的強度不同。n對于16級灰度LCD屏,s1、s2、s3、s4的電壓取決于微處理器傳輸到LCD這一行各列顯示灰度所對應的二進制數,不同的二進制數可以經過D/A轉換器轉換成不同的驅動電壓。n第1行上各列分別驅動之后,g2線驅動為高電平,g1、g3、g4為低電平,分時分別對g2線上4個TFT各自的CST和CL

41、C充電,。n對于彩色TFT LCD屏,每一個像素由三個子像素(紅、綠、藍)組成,也就是每個像素由三個液晶單元組成。如果TFT LCD面板規格為320240,也就是320列、240行,那么在圖11.9(b)中,行線為g1、g2、g240,列線有3203條即s1、s2、s3、s960,其中s1、s2、s3對應這一行上第1像素的紅、綠、藍三個子像素。n對彩色TFT LCD驅動器,S3C2410A LCD控制器送出的數據是每一行每一列紅、綠、藍三色分別對應的數字,LCD驅動器將它們分別驅動為對應級的紅色、對應級的綠色和對應級的藍色的存儲電容和液晶電容的電壓。nTFT液晶屏也使用背光。 STN/TFT

42、LCD特點及應用場合n與TFT LCD比較,STN LCD主要特點有:對比度不高、色彩不豐富、反應速度慢、價格較低。常用于普通電話機、普通游戲機、傳真機、醫療設備、儀器儀表、電子詞典、PDA、MP3和汽車儀表上的顯示模塊。而TFT LCD對比度高、色彩豐富、反映速度較快、價格較高。常用于筆記本電腦、動漫顯示設備、PC機、手機、數碼相機等設備的顯示模塊。11.2.2 S3C2410A LCD控制器概述nS3C2410A芯片內部集成的LCD控制器,支持STN型和TFT型面板。LCD控制器使用專門的LCD DMA通道,讀取位于系統存儲器(內存)視頻緩沖區的圖像數據,在LCD控制器中經過處理或變換,與

43、相應的時序信號配合,送到LCD驅動器。LCD驅動器與LCD面板是一體的。 LCD控制器能夠與如下STN LCD面板接口: 單色顯示LCD面板; 2BPP(Bits Per Pixel,位/像素),單色LCD面板標定為4級灰度; 4BPP,單色LCD面板標定為16級灰度; 8BPP,256色,彩色LCD面板; 12BPP,4096色,彩色LCD面板。 LCD控制器能夠與如下TFT彩色LCD面板接口: 1BPP、2BPP、4BPP和8BPP,在LCD控制器內使用調色板的彩色LCD面板; 16BPP、24BPP,在LCD控制器內不使用調色板的真彩色顯示的彩色LCD面板。 LCD控制器能被編程,支持與

44、下述相關的不同請求: 水平和垂直像素個數; 用于數據接口的數據行寬度; 接口定時; 刷新速率。 11.2.3 S3C2410A LCD控制器特點 對于STN LCD,LCD控制器: 支持3種類型的LCD面板:4位雙掃描/4位單掃描/8位單掃描顯示類型; 支持單色/4灰度級/16灰度級的STN LCD面板; 支持256色/4096色的彩色STN LCD面板; 支持多種屏幕尺寸,如典型的實際屏幕尺寸:640480、320240、160160像素等;最大虛擬屏顯存為4MB;在256色模式,最大虛擬屏尺寸為40961024、20482048、10244096等。 對于TFT LCD,LCD控制器: 支

45、持1、2、4或8BPP使用調色板的彩色顯示; 支持16、24BPP不使用調色板的真彩色顯示; 支持24BPP最大16M色顯示; 支持多種屏幕尺寸,如典型的實際屏幕尺寸:640480、320240、160160像素等;最大虛擬屏顯存為4MB;在64K色模式,最大虛擬屏尺寸為20481024等。 LCD控制器共同特點: LCD控制器有1個專用的DMA; 支持LCD幀同步中斷和LCD FIFO中斷功能(INT_FrSyn和INT_FiCnt); 系統存儲器被用作視頻存儲器; 支持多種虛擬顯示屏(支持硬件水平/垂直滾屏),虛擬屏顯存使用系統存儲器; 對不同的顯示面板,可編程的定時控制; 支持小端/大端

46、數據格式,部分支持WinCE數據格式; 支持三星SEC TFT LCD面板(LTS350Q1-PD1/PD2型號)。 11.2.4 S3C2410A LCD控制器外部接口信號nLCD控制器位于S3C2410A芯片內部,通過芯片引腳,LCD控制器提供以下接口信號:VFRAME/VSYNC/STV:幀同步信號(STN)/垂直同步信號(TFT)/SEC TFT信號;VLINE/HSYNC/CPV:行同步脈沖信號(STN)/水平同步信號(TFT)/SEC TFT信號;VCLK/LCD_HCLK:像素時鐘信號(STN/TFT)/SEC TFT信號;VD23:0:LCD像素數據輸出端口(STN/TFT/S

47、EC TFT);VM/VDEN/TP:用于LCD驅動器的交流偏置信號(STN)/數據允許信號(TFT)/SEC TFT信號;LEND/STH:行結束信號(TFT)/SEC TFT信號;LCD_PWREN:LCD面板電源允許控制信號;LCDVF0:SEC TFT信號OE;LCDVF1:SEC TFT信號REV;LCDVF2:SEC TFT信號REVB。 11.2.5 S3C2410A LCD控制器組成 LCD控制器組成n LCD控制器組成框圖見圖11.10。n圖11.10中,S3C2410A LCD控制器用于傳送視頻(video)數據以及產生需要的控制信號,如VFRAME、VLINE、VCLK、

48、VM等等。LCD控制器使用VD23:0傳送像素數據到LCD驅動器(面板)。圖中REGBANK寄存器組有17個可編程寄存器和25616(bit)的調色板存儲器,被用來配置LCD控制器。 圖11.10 S3C2410A LCD控制器組成框圖 n圖中LCDCDMA是一個專用DMA,自動地傳送幀存儲器中的視頻數據到LCD驅動器。通過使用專用DMA,視頻數據不用CPU干預,能夠顯示在顯示屏上。n圖中VIDPRCS從LCDCDMA接收視頻數據,把它們改變成適合的數據格式,如適合4/8位單掃描、4位雙掃描顯示模式的數據格式,通過VD23:0數據端口發送到LCD驅動器。圖中TIMEGEN由可編程邏輯組成,支持

49、常用的不同LCD驅動器接口定時及速率的多種不同要求。TIMEGEN模塊產生VFRAME、VLINE、VCLK、VM等信號。n圖11.10中LPC3600是專門用于三星LTS350Q1-PD1/PD2的定時控制邏輯單元。 數據流描述n在LCDCDMA中有FIFO存儲器,當FIFO為空或部分空,LCDCDMA請求從主存幀存儲器(也稱幀緩沖區)裝入數據。n裝入數據使用突發(burst)存儲器傳輸方式,每一次突發請求,連續從主存取4個字,即16字節數據。在總線傳輸期間,不允許總線主設備權轉讓給別的總線主設備。當傳輸請求由總線仲裁器接收時,4個連續的字數據由主存的幀緩沖區傳送到LCDCDMA內的FIFO

50、。n全部FIFO大小為28個字,分別由12個字的FIFOL和16個字的FIFOH組成。使用FIFOL和FIFOH,用來支持雙掃描顯示模式。在單掃描顯示模式,僅有FIFO中的1個,即FIFOH能夠被使用。11.3 USB主控制器及設備控制器主控制器及設備控制器1.3.1 USB基礎 S3C2440A/S3C2410A支持USB1.1協議,本章描述的內容以USB1.1為主。 USB系統層次結構概述nUSB系統層次結構見圖11.11。n圖11.11中主機系統,指的是PC機或微控制器MCU。圖11.11 USB系統層次結構圖 n主機系統USB功能層和USB設備層是軟件部分。nUSB主控制器與根HUB(

51、集線器)通常由硬件和固件組成,PC機中對應芯片在主板上。n對于嵌入式系統,USB主控制器與根HUB,有的被集成在嵌入式微處理器芯片內部,如下文介紹的S3C2410A;而另外一些嵌入式微處理器芯片內部沒有集成USB主控制器與根HUB,如S3C44B0X,需要在微處理器芯片外,連接單獨的USB主控制器與根HUB芯片。nUSB主控制器英文為USB Host Controller,也寫作USB HOST。 n圖11.11中USB設備,通常指帶USB接口的鼠標、鍵盤、打印機、掃描儀等等。這些USB設備通常是主機系統以外的、獨立的設備,通過USB總線與USB主機系統交換信息。n在USB設備中,有一個USB

52、設備控制器,對USB設備進行控制。n在S3C2410A芯片內部,也集成了一個USB設備控制器,該設備控制器允許通過總線接口連接到另外一個主機系統,作為它的USB設備。而S3C44B0X芯片內部無USB設備控制器,需要時可以在微處理器片外連接專門的USB設備控制器芯片。n主機系統可以連接一個或多個USB設備,如PC機可以連接多個USB設備,但是主機系統不應該與主機系統連接,USB設備也不應該與USB設備連接。nUSB接口層對應具體的物理層,主要實現物理信號和數據包的傳輸;USB設備層主要提供USB基本的協議棧,執行通用的USB各種操作和請求命令;USB功能層提供每個USB設備所需的特定功能。n在

53、S3C2410A芯片內部,USB主控制器與根HUB一方面與USB設備通信,另外還接受S3C2410A片內MCU(微控制器,指ARM920T)的控制,并與MCU交換數據。nS3C2410A芯片內的USB設備控制器,可以與別的主機系統連接通信,同時也受到MCU控制,并與MCU交換數據。 USB系統拓撲結構與集線器概述 USB系統拓撲結構nUSB系統拓撲結構舉例見圖11.12。nUSB系統拓撲結構是層層向上的星型結構,也可以看成是一級與一級的級聯結構。nUSB系統最上層是USB主控制器與根HUB,是該拓撲結構的起點,每一層都是集線器與功能設備之間點到點的連接。nUSB2.0版包括根集線器層,USB系

54、統最多允許7層,最多可以連接包括集線器在內的127個USB設備。圖11.12 USB系統拓撲結構舉例 集線器(HUB)nUSB集線器是為USB總線提供更多連接點的一種設備。n根集線器(root hub)一般集成在主控制器中,根集線器使得眾多USB設備共享同一個USB主控制器成為可能。根集線器既是USB主控制器的組成部分,同時又具備一般集線器的一些特點。n根據USB1.1協議,USB集線器主要執行以下操作: 控制USB下行端口的電源; 允許/禁止USB下行端口; 動態檢測連接在每一個下行端口上的設備; 設置并報告每一個端口的狀態; 提供過流保護機制。n典型的集線器外觀示意圖見圖11.13。圖11

55、.13 典型的集線器外觀示意圖n圖11.13中,集線器有一個上行(up stream)端口和7個下行(down stream)端口。上行端口用來連接上一層集線器或根HUB,而每一個下行端口可以連接下一層集線器或USB設備。n一個集線器內部邏輯包括集線器控制器(controller)和集線器中繼器(repeater)。中繼器是位于上行、下行端口之間的,是由協議控制的開關。集線器內部邏輯見圖11.14。圖11.14 集線器內部邏輯圖 USB物理接口及電氣特性概述 USB接口信號線及連接頭nUSB電纜共有4條線,見圖11.15。n其中D+和D-是一對雙絞線,為信號線,傳輸的信號是NRZI(Nor R

56、eturn to Zero Inverted,反相不歸零)編碼的差分信號;nV BUS和GND是電源和地線,為USB設備提供電源,電源電壓為5V,最大電流為500mA。圖11.15 USB接口的信號線圖圖11.16 USB接口信號線連接頭示意圖n圖11.16中連接頭1號引腳接VBUS,4號引腳接GND,2號引腳接D-,3號引腳接D+。n有兩種給USB設備提供電源的方式,對于功耗較小的USB設備,使用總線供給方式,由根HUB或HUB為USB設備供電;對于功耗較大的USB設備,例如掃描儀等,USB設備使用自帶的電源,不使用總線供給方式。nUSB主機系統還支持先進電源管理(Advanced Powe

57、r Management,APM)功能,支持對USB設備掛起、喚醒等電源事件的處理。 反相不歸零編碼與差分信號n在USB接口信號線上傳輸的是反相不歸零(NRZI)編碼的差分信號,發送方數據經過反相不歸零編碼器、差分信號驅動器送到信號線,接收方由差分信號接收器和反相不歸零解碼器對收到的信號進行處理,見圖11.17。n通常反相不歸零編碼電路產生的信號與數據的對應關系見圖11.18。圖11.18 通常反相不歸零編碼與數據的對應關系圖11.17 USB接口信號線上信號傳輸示意圖nUSB采用了發送端帶有填充位的反相不歸零編碼方法,即發送的數據中如果有連續的六個1,就要進行一次強行轉換,發送器要把填充位0

58、自動插入發送數據流中,因此在接收器接收數據時,應該作相應的判斷,并扔掉填充位0。對應的操作分別稱為位填充和位移去。圖11.19是帶自動插入填充位的反相不歸零編碼示意圖。 圖11.19 帶自動插入填充位的反相不歸零編碼示意圖 USB主機系統概述 USB主機系統n從開發人員角度看USB主機系統與USB設備之間的通信,USB主機系統可分為3個不同的模塊,分別是客戶軟件、USB系統軟件和USB總線接口,如圖11.20所示。n在圖11.20中,客戶軟件(含USB設備驅動程序)負責與USB設備軟件的功能單元進行通信,以實現USB設備的特定功能,但它不能直接訪問功能單元,它與USB設備間的通信必須經過USB

59、系統軟件和USB總線接口才能實現。圖11.20 USB主機系統示意圖nUSB系統軟件負責與USB邏輯設備進行配置通信,并管理客戶軟件啟動的USB數據傳輸,它對USB主控制器的硬件進行抽象,并提供USBDI通信接口,以簡化客戶軟件與USB設備功能單元之間的通信機制。HCD(Host Controller Driver,主控制器驅動程序)負責具體驅動USB主控制器。nUSB總線接口包括主控制器和根集線器,USB主控制器負責USB主機系統和USB設備之間的實際數據傳輸,實現電氣和協議層的交互。nUSBD以I/O請求包(IRPs,I/O Request Packets)的方式提供數據傳輸機制,而I/O

60、請求包包含了一個通過某個管道傳輸數據的請求。此外,USBD還向客戶提供了一個USB設備的抽象,可以通過控制它實現配置和狀態管理。USBD擁有默認管道,使用它可以實現對USB設備的訪問,并進行標準USB控制。 管道(pipe)n管道也稱為通道,是描述USB主機系統與USB設備之間信息傳輸的一個術語,是邏輯上的一種連接。n管道可以分為默認管道和一般管道(二者都簡稱為管道)。n所有管道的一端在USB主機系統(PC機或MCU的內存USB緩沖區),另一端分別連接某一個USB設備的不同端點(End Point)。n端點可以簡單地看作USB設備內部獨立的寄存器端口,不同的寄存器端口有不同的端點號。 n一個U

溫馨提示

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

評論

0/150

提交評論