2012微機原理及接口技術課件-CH10_第1頁
2012微機原理及接口技術課件-CH10_第2頁
2012微機原理及接口技術課件-CH10_第3頁
2012微機原理及接口技術課件-CH10_第4頁
2012微機原理及接口技術課件-CH10_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第十章 基于ARM的硬件系統設計1、 ARM嵌入式系統的開發(fā)過程(裸機系統、OS)2、ARM微處理器最小硬件系統電源、時鐘、復位、存儲器、調試接口3、人機交互接口鍵盤與LED接口、LCD顯示接口、觸摸屏接口4、通信接口串行通信接口、其他通信接口JTAG/USB/網絡線目標機宿主機在嵌入式開發(fā)過程中有宿主機和目標機的角色之分 宿主機是開發(fā)嵌入式軟件的計算機 目標機是運行嵌入式軟件的硬件平臺ARM選型確定開發(fā)模式建議ARM初學者先學裸機系統的開發(fā)需求(功能)分析明確性能參數、外設接口、開發(fā)復雜性總體方案設計(硬、軟件)基于ARM的硬件電路設計(最小系統【第10章】 + 功能電路)軟件設計【第11章

2、】(裸機模式、OS模式)編寫程序(集成開發(fā)環(huán)境ADS、RVDS、MDK等等)編譯、調試(軟件仿真,或J-link硬件仿真器,或編寫調試代碼)下載通過USB直接下載(Flash內自帶燒錄程序)或利用FlashPGM、H-JTAG等燒寫工具將可執(zhí)行映像燒寫至Flash存儲器脫離開發(fā)環(huán)境,上電運行!裸機系統的開發(fā)建立交叉編譯環(huán)境(arm-linux-gcc)操作系統裁剪(內核配置和編譯)編寫程序( linux開發(fā)環(huán)境下,啟動程序、驅動、用戶程序)編譯、調試下載脫離開發(fā)環(huán)境,上電運行!基于OS的開發(fā)嵌入式開發(fā)流程多通道高精度數據采集系統設計功能要求: 采集被測設備數據,并顯示處理結果。指標要求: 通道

3、數:8 路(由鍵盤選擇當前采集通道); 信號幅度范圍:-15V+15V; A/D 分辨率:16Bit; 滿量程精度:0.1%; 最高采樣速率:100KSa/s。 通信接口:RS232接口及10Mbps以太網, 實現與上位機通信。設計要求最小系統(CPU板)AD采集模塊LCD顯示模塊通信模塊鍵盤、LED模塊被測對象ARM 芯片選型原則性能參數的考慮ARM核版本工作頻率內部存儲器容量電源控制DSP協處理器功耗外設接口的考慮USB接口RTCGPIO數量其他因素芯片封裝的選擇芯片的封裝有很多種類型,如:DIP、QFP、PGA、BGA等在散熱性能、信號完整性特性、體積大小等方面的要求三星公司的 S3C2

4、440A 芯片采用 ARM920T 內核:內核運行速度最高達533MHz,滿足系統需要;LCD 控制器(支持可達到 4K 色的 STN 和 256K 色的 TFT),并配有一個 LCD 專用 DMA;S3C2440A芯片參考資料非常豐富,開發(fā)難度??;同時 S3C2440A價格合適(原裝正品30-45RMB)。 綜合考慮上述因素,本數據采集裝置選用 S3C2440A為主控 CPU。一些主流的ARM9處理器芯片如:飛思卡爾:MC9328MX27三星:S3C2440A Atmel公司:AT91SAM9263 意法半導體:STR91x 恩智浦半導體:LPC2000 系列硬件設計方案核心板的設計(CPU

5、板的設計)自行設計開發(fā)(價格便宜,設計靈活) ARM微處理器 + 存儲器模塊 + 電源模塊 + 時鐘模塊 + 復位模塊 + JTAG調試接口模塊?!咀钚∠到y 】購買成品(開發(fā)板)功能電路設計AD采集模塊LCD顯示模塊網絡模塊最小系統(CPU板)AD采集模塊LCD顯示模塊通信模塊鍵盤、LED模塊核心板(CPU板)的設計 最小系統的設計最小系統設計內容對應課本P311-P317最小系統的設計ARM微處理器;存儲器模塊,包括程序保存存儲器(FLASH)和程序運行存儲器(SDRAM);電源模塊,包括CPU內核和I/O接口電源電源;時鐘模塊,包括系統主時鐘和實時時鐘;復位模塊,包括外部復位和內部復位;J

6、TAG調試接口模塊。 最小系統(最小硬件系統)通常是指以嵌入式處理器為核心,包含電源、時鐘和復位等保障處理器正常工作的基本硬件電路 。S3C2440A最小硬件系統:存儲器模塊存儲器模塊為系統程序的保存和運行提供空間,在系統設計中主要根據處理器的存儲器接口選擇合適的存儲器芯片(存儲類型、容量、速度和接口類型 )ARM最小系統中的存儲器通常包括存放程序的NOR Flash、NAND Flash和用于程序運行的SDRAM。存儲器模塊通常掛接在ARM芯片的局部總線上(外部三總線)。使用16位存儲芯片構造32位寬存儲器系統12S3C2440A最小硬件系統:電源模塊 電源模塊是系統工作的能量來源,其電壓、

7、紋波、內阻和驅動能力等性能直接影響到系統工作的穩(wěn)定性,因此電源模塊在系統設計中至關重要。電源電壓一定要在系統需求的范圍之內電源的驅動能力一定要能滿足整個系統的功率需求電源紋波和電路干擾的處理在設計PCB時需要對模擬電源和數字電源進行物理上的隔離13IO端口供電電源3.3V(輸入端大于4.75V)內核供電電源1.2V接至VDDOP(IO端口電源)引腳接至VDDi等引腳(內部模塊核心邏輯電源)接至VDDA_ADC(ADC電源)引腳S3C2440A最小硬件系統:時鐘模塊 時鐘模塊為系統提供同步工作信號,其穩(wěn)定性直接關系到系統的工作穩(wěn)定性。 在ARM嵌入式系統中通常包括頻率較高的系統主時鐘16.934

8、4MHz和頻率較低的實時時鐘32.768KHz。時鐘經內部鎖相環(huán)后得到四組時鐘信號:FCLK:ARM920T內核HCLK:AHB總線、存儲器控制器、中斷控制器、LCD控制器、DMA控制器和USB主機模塊PCLK:訪問APB總線的外設,如WDT,I2S,I2C,PWM定時器,MMC接口,ADC,UART,GPIO等模塊UCLK:USB模塊需要的48 MHz時鐘S3C2440A最小硬件系統:復位模塊系統外部復位和內部復位一般來說系統對外部復位信號波形有一定的要求(低電平至少持續(xù)4個FCLK),若不能滿足要求(例如持續(xù)時間過短),則系統將不能正常工作。 低電平復位芯片 復位后內核執(zhí)行的操作:1、PC

9、R14_svc,CPSR-SPSR_svc2、M4:0=10011,I,F置位,T清零3、PC=0 x000000004、恢復ARM工作狀態(tài)S3C2440A最小硬件系統:調試接口 ARM微處理器一般都采用JTAG作為基本調試接口nTRST(測試復位信號),TMS(測試模式選擇),TCK(測試時鐘),TDI(測試數據輸入)和TDO(測試數據輸出) JTAG(Joint Test Action Group,聯合測試行動小組)是一種國際標準測試協議(IEEE 1149.1兼容),主要用于芯片內部測試?,F在多數的高級器件都支持JTAG協議,如ARM、DSP、FPGA器件等。 標準的JTAG接口是4線:

10、TMS、TCK、TDI、TDO,分別為模式選擇、時鐘、數據輸入和數據輸出線。 功能電路的設計(AD模塊、LCD顯示、通信模塊)LCD顯示模塊(人機交互接口)、通信模塊設計內容對應課本P318-P333功能電路的設計AD模塊多通道共享多通道并行本方案采用多通道共享方式,其 ADC 數據采集裝置有如下兩種常見方案:方案1:ARM 直接控制 AD 采樣方案2:由單獨的 ADC 控制邏輯控制 AD 采樣,同時利用 FIFO 緩存采樣數據。第一種方案:ARM 需要控制 AD 的整個采樣過程,包括 AD 啟動、通道切換、并使用中斷方式讀取轉換結果,如果 AD 工作在連續(xù)轉換模式下,會導致 ARM 頻繁進入

11、中斷,增大 ARM 負擔,造成系統效率低下,降低系統可靠性。第二種方案:采用獨立的 ADC 控制器控制 AD 采樣,同時將采樣結果使用 FIFO 緩存,當數據累積到一定量時再通知 ARM 進行中斷處理。這種方案雖然增加了獨立的 ADC 控制器和 FIFO 緩存,但是可以明顯降低 ARM 負擔,顯著提高系統效率和可靠性。 本方案采用 FPGA 實現ADC 控制器和 FIFO功能,具體作用是地址譯碼、AD 時序控制、通道切換和數據緩沖。本模塊選用的 AD 轉換器 AD976 最高采樣率 100KSa/s,滿足系統采樣速度要求;積分非線性最大為 3LSB=0.0000460.1%,滿足系統精度要求。

12、考慮到成本及適用性等因素,可選用 Altera公司推出的 Cyclonen 系列芯片中 EP1C3T100FPGA 內部邏輯主要包括以下幾個部分:1. 地址譯碼邏輯:這部分邏輯主要產生 ARM 訪問 FPGA 內部邏輯各個寄存器的地址,2. 模擬開關切換時鐘和 AD 采樣控制時鐘產生邏輯:這部分邏輯主要產生模擬開關的切換時鐘 和 AD 轉換器的轉換信號。3. 模擬開關通道選通邏輯:用于當 SWITCH_CLK 有效時,將模擬開關切換到下一個預設通道。4. FIFO 緩沖邏輯:這部分邏輯主要實現 AD 采樣數據的緩沖和 ARM對緩沖數據的讀取.功能電路的設計人機交互接口 人機交互接口主要用于人與

13、設備之間的信息交換,通常包括用于信息輸入的鍵盤、觸摸屏,以及信息輸出的各類顯示設備。 以S3C2440A的相關接口為例介紹各類接口硬件結構與使用:鍵盤與LED接口LCD顯示接口鍵盤與LED接口按鍵和LED是最常用的兩種輸入輸出器件,使用它們可以實現簡單的信號輸入和輸出,在嵌入式系統中有重要用途。這類簡單外設與處理器進行連接時,通常有兩種方式:一是使用處理器的GPIO直接控制,由處理器運行相應軟件來實現所需功能;二是使用專用的控制芯片來獲取按鍵信息以及驅動顯示。GPIO(General Purpose Input)可以實現任何一般用途的信號輸入/輸出。ARM處理器芯片的大部分引腳都可以通過設定相

14、應的控制寄存器實現基本的GPIO功能,并可編程設置信號方向、電平上拉/下拉等功能。在S3C2440A中共有130個多功能I/O引腳,這些引腳除了可以作為某個特殊功能使用外,均可以配置成GPIO模式,并分為以下八組:Port A(GPA):25個輸出端口Port B(GPB):11個輸入/輸出端口Port C(GPC):16個輸入/輸出端口Port D(GPD):16個輸入/輸出端口Port E(GPE):16個輸入/輸出端口Port F(GPF):8個輸入/輸出端口Port G(GPG):16個輸入/輸出端口Port H(GPH):9個輸入/輸出端口Port J(GPJ):13個輸入/輸出端口

15、GPIO 例10.1:使用S3C2440A的端口G的第47引腳驅動四個LED,并點亮GPG4引腳的LED。GPIO控制鍵盤或LED的內容必須掌握!每組GPIO端口均有各自的寄存器組,主要包括端口配置寄存器(GPxCON)、端口數據寄存器(GPxDAT)、端口上拉寄存器(GPxUP)。寄存器名地址讀寫屬性功能復位值GPGCON0 x56000060可讀可寫配置引腳功能為輸入/輸出/其他0 x0000 0000GPGDAT0 x56000064可讀可寫G端口數據寄存器未定義GPGUP0 x56000068可讀可寫上拉配置寄存器低電平0有效0 xFC00G端口共有16個GPIO引腳,寄存器GPGCO

16、N寬度為32位,每個引腳的功能各由2位來選擇控制,第47引腳的控制位如下:端口GGPGCON寄存器位功能選擇GPG715:14 00=輸入 01=輸出10=EINT15 11=保留GPG613:12 00=輸入 01=輸出10=EINT14 11=保留GPG511:10 00=輸入 01=輸出10=EINT13 11=保留GPG49:8 00=輸入 01=輸出10=EINT12 11=保留寄存器GPGDAT和GPGUP寬度均為16位,各引腳按其編號與相應的寄存器位對應。GPGDAT中存放的即為需要輸出的數據,根據硬件電路連接圖可知,要將第4引腳LED點亮,則對應的引腳應輸出低電平,所以寄存器G

17、PGDAT中的7:4位應設置為二進制值1110。本例中端口為輸出功能,因此寄存器GPGUP中對應各位均設置為1,將上拉電阻斷開。GPGCONEQU0 x56000060GPGDATEQU0 x56000064GPUPEQU0 x56000068;配置GPGCON寄存器,設置相關引腳為輸出功能LDRR0, =GPGCON LDRR1, R0 BICR1, R1, #0 x0000FF00 ORRR1, R1, #0 x00005500 STRR1, R0;配置GPGUP寄存器,斷開各上拉電阻LDRR0, =GPGUPLDRR1, R0ORRR1, R1, #0 x00F0STRR1, R0;輸出

18、驅動數據,點亮GPG4引腳對應的LEDLDRR2, =GPGDATLDRR3, R2ORRR3, R3, #0 x00F0BICR3, R3, #0 x0010STRR3, R2在嵌入式系統中常用的LCD產品主要有兩種:一種是帶有驅動電路的LCD顯示模塊;另一種則僅是LCD顯示屏,沒有驅動電路,需要與驅動電路配合使用。在常見的ARM處理器芯片中,通常都帶有LCD控制器,可以直接驅動多種LCD顯示屏。S3C2440A中的LCD控制器模塊,可以直接與STN或TFT等多種不同分辨率的單色/彩色LCD連接,具有將顯示緩存(在系統存儲器中)中的LCD圖象數據傳輸到外部LCD 驅動電路的邏輯功能,驅動其完

19、成各類數據的顯示。LCD顯示接口功能電路的設計通信接口 通信接口通常用于嵌入式設備與其他設備進行信息交換,由于各類設備性能指標差異巨大,要實現信息的傳遞需要進行速率、電平、時序、信息格式等多方面的轉換和匹配,所以該類接口種類十分豐富。串行通信接口網絡通信其他通信接口接口初始化:ULCON、UCON、UFCON、UMCON、UBRDIV數據傳遞:UTRSTAT、UFSTAT、UTXH、URXH接收錯誤狀況:UERSTATS3C2440A中UART0的相關寄存器寄存器名 地址(大端存儲) 地址(小端存儲) 位寬 讀寫 功能例10.2:UART0采用查詢方式進行數據通信,要求使用8位數據位,1位停止

20、位,奇校驗,傳輸速率115200bps,不使用FIFO,關閉流控制,處理器外設時鐘PCLK=66.68MHz。步驟1:接口初始化設置幀格式、時鐘來源、收發(fā)模式、中斷配置、FIFO的使用、波特率計算等步驟2:數據傳遞:可選擇使用查詢方式或中斷方式傳遞UART0的內容必須掌握!主要用于幀格式配置ULCON0=0 x23步驟1:UART0的初始化配置ULCON0線路控制寄存器(配置數據幀格式)課本P329(中文手冊P235有詳細說明)應設置:UCON0=0 x0005步驟1:UART0的初始化配置UCON0控制寄存器(時鐘來源、收發(fā)模式、中斷配置等)主要用于使能FIFO及相關參數配置UFCON0=0

21、 x00步驟1:UART0的初始化配置UFCON0 FIFO控制寄存器主要用于設置與Modem相關參數UFCON0=0 x00步驟1:UART0的初始化配置UMCON0調制解調器控制寄存器步驟1:UART0的初始化配置UBRDIV0波特率控制寄存器UBRDIV= int (UART時鐘頻率/(波特率16) ) 1采用66.68MHz的PCLK作為時鐘源,為得到115200bps的速率,則:UBRDIV= int (66.68M/(11520016) ) 1 =int(36.176) 1=35實際波特率=UART時鐘頻率/(UBRDIV+1)16) =66.68M/(35+1) 16)11576

22、4bps實際的工作速率與理論值之間存在偏差:(115764 115200)/115200100% = +0.49%初始化程序段ULCON0EQU0 x50000000UCON0EQU0 x50000004UFCON0EQU0 x50000008UMCON0EQU0 x5000000CUBRDIV0EQU0 x50000028LDRR2, =ULCON0;配置ULCON0寄存器MOVR3, #0 x23STRBR3, R2LDRR2, =UCON0;配置UCON0寄存器MOVR3, #0 x05STRHR3, R2LDRR2, =UFCON0;配置UFCON0寄存器MOVR3, #0 x00ST

23、RR3, R2LDRR2, =UMCON0 ;配置UMCON0寄存器MOVR3, #0 x00STRR3, R2LDRR2, =UBRDIV0;配置UBRDIV0寄存器MOVR3, #35STRHR3, R2步驟2:使用UART0進行數據收發(fā)使用UTRSTAT0、UTXH0、URXH0進行狀態(tài)的判斷并完成通信收/發(fā)示例程序段UTRSTAT0EQU0 x50000010UTXH0EQU0 x50000020;小端存儲下對應的地址URXH0EQU0 x50000024;假設系統采用小端存儲TLOOPLDRR0, =UTRSTAT0LDRR1, R0 ;讀取UART0收發(fā)狀態(tài)寄存器的值 TSTR1,

24、 #0 x02;判斷發(fā)送緩沖區(qū)是否空閑BEQTLOOP;不空閑則繼續(xù)查詢LDRR0, =UTXH0STRBR2, R0;若空閑,則將R2寄存器中字節(jié);傳遞至發(fā)送緩沖區(qū),完成一字節(jié);數據發(fā)送RLOOPLDRR0, =UTRSTAT0 LDRR1, R0 ;讀取UART0收發(fā)狀態(tài)寄存器的值TSTR1, #0 x01;判斷接收緩沖區(qū)是否有數據BEQRLOOP;若沒有數據則繼續(xù)查詢LDRR0, =URXH0LDRBR2, R0;若有數據則將數據收回至R2寄;存器完成一字節(jié)數據接收利用UART0進行RS232接口電路設計網絡接口電路設計 本系統的以太網控制電路由以太網芯片、網絡隔離變壓器和RJ45 接口組成,選用的以太網芯片為DM9000,將 MAC 控制器和物理層接口集成到芯片內部,實現了網絡的物理層和 MAC 層協議。它能提供10/100Mbps

溫馨提示

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

評論

0/150

提交評論