【正文】
有效,在集成電路正常工作時無效,不影響集成電路的功能。與JTAG 接口兼容的器件可以是微處理器(MPU)、微控制器(MCU)、PLD、CPL、FPGA、ASIC 規(guī)范的芯片。在線編程),對FLASH等器件進(jìn)行編程。 相關(guān)JTAG引腳的定義為:TCK為測試時鐘輸入;TDI為測試數(shù)據(jù)輸入,數(shù)據(jù)通過TDI引腳輸入JTAG接口;TDO為測試數(shù)據(jù)輸出,數(shù)據(jù)通過TDO引腳從JTAG接口輸出;TMS為測試模式選擇,TMS用來設(shè)置JTAG接口處于某種特定的測試模式;TRST為測試復(fù)位,輸入引腳,低電平有效,GND。SDRAM是多bank 結(jié)構(gòu)[22]。但是電容被利用的這個特性也是它的缺點。另外,為了保持內(nèi)部數(shù)據(jù)還必須進(jìn)行刷新。我們知道8bit可以組成1byte,而字節(jié)是內(nèi)存中最小的尋址單元。因此要在系統(tǒng)中使用SDRAM,就要求微處理器具有刷新控制邏輯,或在系統(tǒng)中另外加入刷新控制邏輯電路。 SDRAM模塊SDRAM與Flash不同,它不具有掉電保護(hù)數(shù)據(jù)的特性,但其存取速度大大高于Flash存儲器,且有讀/寫的屬性,因此SDRAM在系統(tǒng)中主要用作程序的運行空間,數(shù)據(jù)及堆棧區(qū)。NOR的特點是芯片內(nèi)執(zhí)行,這樣應(yīng)用程序可以直接在Flash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)ARM中。Flash按結(jié)構(gòu)分為NOR和NAND兩大類。作為一種非易失性存儲器,F(xiàn)lash在系統(tǒng)中用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。它是針對不要求運行操作系統(tǒng)的應(yīng)用而設(shè)計的。ARM9系列的第一個處理器是ARM920T,包含獨立的數(shù)據(jù)指令Cache和MMU。在本設(shè)計中,我們用的是ARM9處理器。第二章 設(shè)計用嵌入式模塊 ARM處理器 ARM處理器當(dāng)前有6個產(chǎn)品系列:ARMARMARM9E、ARM10E、ARM11和SecurCore,其中ARM11是最近推出的產(chǎn)品。在目標(biāo)機(jī)上,一般會具備某種形式的調(diào)試代理與調(diào)試器共同配合對目標(biāo)機(jī)上的進(jìn)程進(jìn)行調(diào)試。宿主機(jī)與目標(biāo)機(jī)通過串口或者網(wǎng)絡(luò)進(jìn)行通信。由于編譯的過程包括編譯、鏈接等幾個階段,因此,嵌入式的交叉編譯也包括交叉編譯和交叉鏈接等過程,通常,ARM的交叉編譯器為armelfgcc,交叉鏈接器為armelfld,一般可執(zhí)行文件是ELF格式。編譯的主要工作就是將程序轉(zhuǎn)化成該程序的CPU所能識別的機(jī)器代碼。這些嵌入式處理器運行的必要條件的電路或者芯片與嵌入式處理器一起構(gòu)成了嵌入式處理器的最小系統(tǒng)。一個嵌入式芯片供電系統(tǒng)為其供電;必須有時鐘信號系統(tǒng)提供時鐘信號;必須有復(fù)位系統(tǒng)。 嵌入式系統(tǒng)的結(jié)構(gòu)嵌入式系統(tǒng)一般由3個部分組成,:嵌入式系統(tǒng)硬件平臺、嵌入式操作系統(tǒng)及嵌入式系統(tǒng)應(yīng)用。 Drivert 。s production and daily life. At present, the application of embedded system have been developed to the stage of bining embedded processor with operating system, and the design es true based on bining the ARM processor with linux operating system. Embedded temperature measurement system includes temperature monitoring hardware and software systems. Hardware system includes SBC2410 system development kit, temperature detection circuit, signal amplifier circuit and signal display terminal. This paper, in detail, introduces the hardware design according to modules. The process of the design of temperature measurement software system is as follows: First,the design construct Linux environment for temperature measurement the system .Secondly, the design piles and loads driver program in Linux。其中硬件系統(tǒng)包括SBC2410開發(fā)套件,溫度檢測電路、信號放大電路及信號顯示終端,論文中按模塊對各部分硬件的設(shè)計進(jìn)行了詳細(xì)的介紹。內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計說明書(畢業(yè)論文)畢業(yè)設(shè)計說明書基于ARM的嵌入式溫度監(jiān)測系統(tǒng)摘 要隨著科技的發(fā)展,嵌入式系統(tǒng)的發(fā)展也異常迅速,同時,嵌入式系統(tǒng)已經(jīng)應(yīng)用于各個方面,給人們的生產(chǎn)和生活帶來了極大的便利。溫度監(jiān)測軟件系統(tǒng)的設(shè)計過程如下,本設(shè)計首先為溫度監(jiān)測系統(tǒng)構(gòu)建Linux環(huán)境,其次在Linux下編寫并加載系統(tǒng)驅(qū)動程序,然后編寫應(yīng)用程序,編譯并下載到ARM開發(fā)板中。 At last, the design writes, piles and downloads the application program to ARM development board. After repeated debugging, the design achieves the purpose of the temperature measurement.Key words: Linux 。 Emperature measurement內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計說明書(畢業(yè)論文)目 錄摘 要 IAbstract II第一章 嵌入式系統(tǒng)簡介 1 嵌入式系統(tǒng)的概念 1 嵌入式系統(tǒng)的結(jié)構(gòu) 1 嵌入式系統(tǒng)與普通單片機(jī)開發(fā)的不同之處 2 交叉編譯 2 交叉調(diào)試 3第二章 設(shè)計用嵌入式模塊 5 ARM處理器 5 Flash模塊 5 SDRAM模塊 6 JTAG調(diào)試器 8第三章 溫度監(jiān)測電路設(shè)計 10 AD590的室溫補償電路 10 性能 10 誤差校正 10 AD590的補償電路設(shè)計 11 熱電偶的測溫電路 12 熱電偶的測溫原理 12 熱電偶的測溫電路設(shè)計 14第四章 溫度監(jiān)測系統(tǒng)的Linux構(gòu)建 17 構(gòu)建交叉編譯器 17 交叉編譯器 17 設(shè)置共享文件夾,并解壓linux開發(fā)包 17 安裝交叉編譯器 18 Linux操作系統(tǒng) 19 引導(dǎo)加載程序 20 內(nèi)核 21 文件系統(tǒng) 23 燒寫 24 Windows下燒寫vivi 24 分區(qū)格式化Flash及重新下載vivi 25 燒寫linux內(nèi)核 27 下載文件系統(tǒng) 27第五章 溫度監(jiān)測系統(tǒng)的軟件編程 28 編寫Linux下的ADC驅(qū)動程序 28 Linux設(shè)備 29 驅(qū)動程序的編寫說明 32 驅(qū)動程序編寫的具體內(nèi)容 34 ADC驅(qū)動程序具體函數(shù)的分析 36 ADC驅(qū)動程序的加載和刪除 39 編寫應(yīng)用程序 41 線性化部分 41 A/D轉(zhuǎn)換速率的計算 44 主程序的編寫 45第六章 溫度監(jiān)測的調(diào)試 47 編譯ad驅(qū)動程序 47 運行應(yīng)用程序 48 為ARM開發(fā)板更新內(nèi)核和文件系統(tǒng) 48 48 運行main 主程序 49總結(jié) 51參考文獻(xiàn) 52附錄 54附錄A:程序源代碼 54附錄B:測溫原理圖 68附錄C:ARM板電路圖 69致謝 70內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計說明書(畢業(yè)論文)第一章 嵌入式系統(tǒng)簡介 嵌入式系統(tǒng)的概念嵌入式系統(tǒng)是不同于常見計算機(jī)系統(tǒng)的一種計算機(jī)系統(tǒng),它不以獨立設(shè)備的物理形態(tài)出現(xiàn),即它沒有一個統(tǒng)一的外觀,它的部件根據(jù)主體設(shè)備以及應(yīng)用需要嵌入在設(shè)備的內(nèi)部,發(fā)揮著運算、存儲、以及控制的作用。其中,嵌入式系統(tǒng)硬件平臺指各種嵌入式器件、設(shè)備,嵌入式操作系統(tǒng)是指在嵌入式硬件平臺上運行的操作系統(tǒng),目前主流的嵌入式操作系統(tǒng)有嵌入式linux、μC/OSII等,具體應(yīng)用那種嵌入式操作系統(tǒng)應(yīng)視具體情況而定。嵌入式芯片還需要有存儲系統(tǒng)。: 最小嵌入式系統(tǒng) 嵌入式系統(tǒng)與普通單片機(jī)開發(fā)的不同之處按照軟件工程的原理,嵌入式開發(fā)軟件的一般流程為需求分析、軟件概要設(shè)計、軟件詳細(xì)設(shè)計、軟件實現(xiàn)和軟件測試。進(jìn)行交叉編譯的主機(jī)稱為宿主機(jī),也就是普通的通用計算機(jī),宿主機(jī)系統(tǒng)資源豐富,使用的方便地集成開發(fā)環(huán)境和調(diào)試工具。 交叉調(diào)試嵌入式軟件編譯和鏈接完成后即進(jìn)入調(diào)試階段。調(diào)試器可以控制、訪問被調(diào)試進(jìn)程,讀取被調(diào)試進(jìn)程的當(dāng)前狀態(tài),并能夠改變被調(diào)試的運行狀態(tài)。這種調(diào)試代理可能是某些支持調(diào)試功能的硬件設(shè)備,也可能是某些專門的調(diào)試軟件。ARMARMARM9E、ARM10E是4個通用處理器系列。下面對ARM9進(jìn)行相應(yīng)的介紹。次處理器能夠被用在要求有虛擬存儲器支持的操作系統(tǒng)上。ARM920T、ARM940T都執(zhí)型v4T架構(gòu)指令[13]。常用的Flash為8位或16位的數(shù)據(jù)寬度。NAND器件執(zhí)行擦除操作十分簡單,而NOR則要求在進(jìn)行擦出前,現(xiàn)將目標(biāo)塊內(nèi)所有的地址都寫0。NOR的傳輸速率很高,在1~4MB的小容量時具有極高的成本效益,但是很低的寫入和擦除速度大大降低了它的性能。當(dāng)系統(tǒng)初始化后,CPU首先從復(fù)位地址0x0處讀取啟動代碼,在完成系統(tǒng)的初始化后,程序代碼一般應(yīng)調(diào)入SDRAM中運行,以提高系統(tǒng)的運行速度,同時,系統(tǒng)及用戶堆棧、運行數(shù)據(jù)也都放在SDRAM中。SDRAM是高速的動態(tài)隨機(jī)存取存儲器,它的同步接口和完全流水線的內(nèi)部結(jié)構(gòu)使其擁有極大的數(shù)據(jù)速率,目前SDRAM時鐘頻率已經(jīng)達(dá)到100MHz以上。雖然內(nèi)存基本存儲單元具有唯一的地址,但是并不能進(jìn)行獨立的尋址,這將要求內(nèi)存芯片有數(shù)以百計的引腳同計算機(jī)通信,顯然這是不可能的。要知道SDRAM的結(jié)構(gòu)特點,就必須先了解DRAM器件的結(jié)構(gòu)特點。因為電容器不能持久的保持存儲的電荷,所以內(nèi)存需要不斷定時刷新,才能保持暫存的數(shù)據(jù)。 JTAG調(diào)試器JTAG是英文“Joint Test Action Group(聯(lián)合測試行為組織)”的詞頭字母的簡寫, 是一種國際標(biāo)準(zhǔn)測試協(xié)議(IEEE ),主要用于芯片內(nèi)部測試及對系統(tǒng)進(jìn)行仿真、調(diào)試。 JTAG最初是用來對芯片進(jìn)行測試的,基本原理是在器件內(nèi)部定義一個TAP(Test Access Port測試訪問口)通過專用的JTAG測試工具對進(jìn)行內(nèi)部節(jié)點進(jìn)行測試。 JTAG編程方式是在線編程,傳統(tǒng)生產(chǎn)流程中先對芯片進(jìn)行預(yù)編程現(xiàn)再裝到板上因此而改變,簡化的流程為先固定器件到電路板上,再用JTAG編程,從而大大加快工程進(jìn)度。 標(biāo)準(zhǔn)中規(guī)定對應(yīng)于數(shù)字集成電路芯片的每個引腳都設(shè)有一個移位寄存單元,稱為邊界掃描單元BSC。JTAG也可以實現(xiàn)對電路版的Flash編程。隨著技術(shù)的不斷進(jìn)步,傳感器也有了飛速的發(fā)展,體積變得越來越小,精度越來越高,功能也越來越強(qiáng)大。 AD590的室溫補償電路 性能集成溫度傳感器AD590 是一種高內(nèi)阻、電流輸出型的兩端器件, 其檢測靈敏度為1 μA/K。 誤差校正經(jīng)過激光微調(diào)定標(biāo)的AD590 芯片,其靈敏度為1μA/K,輸出電流值(μA ) 可直接表征絕對溫度(K)。經(jīng)校正后,大大減小了誤差,同時也減小了誤差對溫度的依賴,即減小了誤差溫度系數(shù)[20]。例如:室溫在一般情況下為25℃,那么我們就應(yīng)該調(diào)整電阻R2,使AD590的輸出為:V0=+25,單位為mv。在本設(shè)計中。 (32) 第二級放大倍數(shù),此級的作用是改變符號。它的特點是使用溫度計范圍寬,高溫下性能較穩(wěn)定,熱電偶與溫度的關(guān)系近似線性,價格便宜,因此它是目前用量最大的一種熱電偶。熱電偶是工業(yè)上最常用的溫度檢測元件之一。熱電偶就是利用熱電效應(yīng)來工作的。熱電偶補償導(dǎo)線的作用只起延伸熱電極,使熱電偶的冷端移動到控制室,它本身并不能消除冷端溫度變化對測溫的影響,不起補償作用。如果自由端溫度保持恒定,則熱電偶熱電勢就變成為工作段溫度的單值函數(shù)。冷端溫度為,則有 (34) (35)兩式相加得 (36)所以, (37)各種熱電偶的分度表都是在冷端為0℃是制成的,如果在實際應(yīng)用熱電偶的冷端不是0℃,而是中間的某一溫度tn時,則熱電偶輸出的熱電勢應(yīng)為。:熱電偶的輸出信號從這里進(jìn)入濾波和放大電路,經(jīng)這里出來后就可以進(jìn)入單片機(jī)了,從而被單片機(jī)識別。當(dāng)然,我們也可以多接幾個電容,那樣我們就可以濾除更多的有害因素,但是那樣就會增加我們的成本。通過調(diào)節(jié)滑動變阻器可以使在沒有輸入的條件下,是輸出為零,這樣可以大大減小測量的誤差,從而提高測量的精度。由 得, (39)由 得, (310)由(39)式(310)式,得 (311) (312)到此為止,前面兩個運算放大器是組成的放大器的放大倍數(shù)已經(jīng)證明完成。交叉編譯器就是在一個平臺上生成能夠在另外一個平臺上運行的代碼。 設(shè)置共享文件夾,并解壓linux開發(fā)包此方法要求開機(jī)是進(jìn)入root用戶,按照以下步驟進(jìn)行:(1)在虛擬機(jī)的界面下,選擇菜單條的VM→setting,彈出一個畫面,點擊options,選擇shared folders,點擊右側(cè)窗口的內(nèi)的add,進(jìn)行共享文件設(shè)置。(3)在linux系統(tǒng)的終端里