【正文】
90的零點調(diào)整在室溫點上,這樣就能使得測量結(jié)果更精確了。0. 5℃;(5) 較寬的工作電壓:+ 4~+ 30V。第三章 溫度監(jiān)測電路設計能夠把非電量轉(zhuǎn)換為電量的器件稱為傳感器,傳感器實質(zhì)上是一種功能塊,其作用是將來自外界的各種信號轉(zhuǎn)換成電信號。與JTAG 接口兼容的器件可以是微處理器(MPU)、微控制器(MCU)、PLD、CPL、FPGA、ASIC 規(guī)范的芯片。 相關(guān)JTAG引腳的定義為:TCK為測試時鐘輸入;TDI為測試數(shù)據(jù)輸入,數(shù)據(jù)通過TDI引腳輸入JTAG接口;TDO為測試數(shù)據(jù)輸出,數(shù)據(jù)通過TDO引腳從JTAG接口輸出;TMS為測試模式選擇,TMS用來設置JTAG接口處于某種特定的測試模式;TRST為測試復位,輸入引腳,低電平有效,GND。但是電容被利用的這個特性也是它的缺點。我們知道8bit可以組成1byte,而字節(jié)是內(nèi)存中最小的尋址單元。 SDRAM模塊SDRAM與Flash不同,它不具有掉電保護數(shù)據(jù)的特性,但其存取速度大大高于Flash存儲器,且有讀/寫的屬性,因此SDRAM在系統(tǒng)中主要用作程序的運行空間,數(shù)據(jù)及堆棧區(qū)。Flash按結(jié)構(gòu)分為NOR和NAND兩大類。它是針對不要求運行操作系統(tǒng)的應用而設計的。在本設計中,我們用的是ARM9處理器。在目標機上,一般會具備某種形式的調(diào)試代理與調(diào)試器共同配合對目標機上的進程進行調(diào)試。由于編譯的過程包括編譯、鏈接等幾個階段,因此,嵌入式的交叉編譯也包括交叉編譯和交叉鏈接等過程,通常,ARM的交叉編譯器為armelfgcc,交叉鏈接器為armelfld,一般可執(zhí)行文件是ELF格式。這些嵌入式處理器運行的必要條件的電路或者芯片與嵌入式處理器一起構(gòu)成了嵌入式處理器的最小系統(tǒng)。 嵌入式系統(tǒng)的結(jié)構(gòu)嵌入式系統(tǒng)一般由3個部分組成,:嵌入式系統(tǒng)硬件平臺、嵌入式操作系統(tǒng)及嵌入式系統(tǒng)應用。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。內(nèi)蒙古科技大學畢業(yè)設計說明書(畢業(yè)論文)畢業(yè)設計說明書基于ARM的嵌入式溫度監(jiān)測系統(tǒng)摘 要隨著科技的發(fā)展,嵌入式系統(tǒng)的發(fā)展也異常迅速,同時,嵌入式系統(tǒng)已經(jīng)應用于各個方面,給人們的生產(chǎn)和生活帶來了極大的便利。 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 。其中,嵌入式系統(tǒng)硬件平臺指各種嵌入式器件、設備,嵌入式操作系統(tǒng)是指在嵌入式硬件平臺上運行的操作系統(tǒng),目前主流的嵌入式操作系統(tǒng)有嵌入式linux、μC/OSII等,具體應用那種嵌入式操作系統(tǒng)應視具體情況而定。: 最小嵌入式系統(tǒng) 嵌入式系統(tǒng)與普通單片機開發(fā)的不同之處按照軟件工程的原理,嵌入式開發(fā)軟件的一般流程為需求分析、軟件概要設計、軟件詳細設計、軟件實現(xiàn)和軟件測試。 交叉調(diào)試嵌入式軟件編譯和鏈接完成后即進入調(diào)試階段。這種調(diào)試代理可能是某些支持調(diào)試功能的硬件設備,也可能是某些專門的調(diào)試軟件。下面對ARM9進行相應的介紹。ARM920T、ARM940T都執(zhí)型v4T架構(gòu)指令[13]。NAND器件執(zhí)行擦除操作十分簡單,而NOR則要求在進行擦出前,現(xiàn)將目標塊內(nèi)所有的地址都寫0。當系統(tǒng)初始化后,CPU首先從復位地址0x0處讀取啟動代碼,在完成系統(tǒng)的初始化后,程序代碼一般應調(diào)入SDRAM中運行,以提高系統(tǒng)的運行速度,同時,系統(tǒng)及用戶堆棧、運行數(shù)據(jù)也都放在SDRAM中。雖然內(nèi)存基本存儲單元具有唯一的地址,但是并不能進行獨立的尋址,這將要求內(nèi)存芯片有數(shù)以百計的引腳同計算機通信,顯然這是不可能的。因為電容器不能持久的保持存儲的電荷,所以內(nèi)存需要不斷定時刷新,才能保持暫存的數(shù)據(jù)。 JTAG最初是用來對芯片進行測試的,基本原理是在器件內(nèi)部定義一個TAP(Test Access Port測試訪問口)通過專用的JTAG測試工具對進行內(nèi)部節(jié)點進行測試。 標準中規(guī)定對應于數(shù)字集成電路芯片的每個引腳都設有一個移位寄存單元,稱為邊界掃描單元BSC。隨著技術(shù)的不斷進步,傳感器也有了飛速的發(fā)展,體積變得越來越小,精度越來越高,功能也越來越強大。 誤差校正經(jīng)過激光微調(diào)定標的AD590 芯片,其靈敏度為1μA/K,輸出電流值(μA ) 可直接表征絕對溫度(K)。例如:室溫在一般情況下為25℃,那么我們就應該調(diào)整電阻R2,使AD590的輸出為:V0=+25,單位為mv。 (32) 第二級放大倍數(shù),此級的作用是改變符號。熱電偶是工業(yè)上最常用的溫度檢測元件之一。熱電偶補償導線的作用只起延伸熱電極,使熱電偶的冷端移動到控制室,它本身并不能消除冷端溫度變化對測溫的影響,不起補償作用。冷端溫度為,則有 (34) (35)兩式相加得 (36)所以, (37)各種熱電偶的分度表都是在冷端為0℃是制成的,如果在實際應用熱電偶的冷端不是0℃,而是中間的某一溫度tn時,則熱電偶輸出的熱電勢應為。當然,我們也可以多接幾個電容,那樣我們就可以濾除更多的有害因素,但是那樣就會增加我們的成本。由 得, (39)由 得, (310)由(39)式(310)式,得 (311) (312)到此為止,前面兩個運算放大器是組成的放大器的放大倍數(shù)已經(jīng)證明完成。 設置共享文件夾,并解壓linux開發(fā)包此方法要求開機是進入root用戶,按照以下步驟進行:(1)在虛擬機的界面下,選擇菜單條的VM→setting,彈出一個畫面,點擊options,選擇shared folders,點擊右側(cè)窗口的內(nèi)的add,進行共享文件設置。解壓/mnt/hgfs/mag/linux/ 的linux開發(fā)包:tar –xvzf /mnt/hgfs/mag/linux/ –C /另外,也可以把linux 開發(fā)包放在移動存儲設備中,在linux系統(tǒng)下掛載移動存儲設備后在解壓開發(fā)包。但這些專用操作系統(tǒng)都是商業(yè)化產(chǎn)品,其高昂的價格使許多低端產(chǎn)品的小公司望而卻步;而且,源代碼封閉性也大大限制了開發(fā)者的積極性。 嵌入式Linux系統(tǒng)從軟件的角度看通??梢苑譃?個層次:(1)引導加載程序。(4)用戶應用程序。當我們使用單片機或者像UCOS這樣的操作系統(tǒng)時,一般只需要在初始化CPU和其它硬件設備后,直接加載程序即可,不需要單獨構(gòu)建一個引導加載程序。Bootloader是嚴重地依賴于硬件而實現(xiàn)的。用戶進程可以并行運行、公平地占用系統(tǒng)資源而互不干擾。在這里,點擊load an alternate configuration file,輸入config_ac2410_tp_nec35,保存后退出。 文件系統(tǒng)在系統(tǒng)啟動后,操作系統(tǒng)要完成的最后一步操作是掛載根文件系統(tǒng)。用戶可用連接到FTP服務器上下載文件,也可以將自己的文件上傳到FTP服務器中。(2) 真實帳號登錄:就是以本地的真實用戶名和密碼進行登錄,前提條件就是在FTP服務器上擁有該賬號。[3] 查看并口驅(qū)動是否成功安裝右鍵點擊“我的電腦”,屬性→硬件→設備管理器→端口,看到giveio(COM3)。查看并卸載虛擬機的串口方法如下:打開虛擬機的主界面,先不進入linux,點擊VM→Setting,在hardware窗口下,查看是否有Serial Using port COM1,若有則選中該項后,點擊Remove,OK即可完成虛擬機串口的卸載。同時在windows可以看到分區(qū)顯示。下一步應下載文件系統(tǒng),重要提示:此時不能給ARM板斷電后上電或復位,不能拔下USB電纜,否則主機會出現(xiàn)錯誤,重新插上USB電纜時,主機將無法識別USB,也無法正常安裝,需要重新燒寫vivi及kernel。第五章 溫度監(jiān)測系統(tǒng)的軟件編程 編寫Linux下的ADC驅(qū)動程序嵌入式應用對成本和實時性比較敏感,而對linux的應用要求主要體現(xiàn)在對硬件的驅(qū)動程序的編寫和上層應用程序的開發(fā)。但對嵌入式linux系統(tǒng)而言,一般不能夠像桌面linux那樣靈活地使用insmod/rmmod加載卸載設備驅(qū)動程序,因為常將設備驅(qū)動程序靜態(tài)編譯進內(nèi)核。某些字符設備可以每次傳遞一個字節(jié),傳完每個字節(jié)后產(chǎn)生一個中斷;另外一些字符設備可以在內(nèi)部緩存數(shù)據(jù),因此可以每次傳遞多個字節(jié)。網(wǎng)絡設備網(wǎng)絡設備與字符設備和塊設備不同,通常不把網(wǎng)絡設備看成普通文件,因為普通文件的內(nèi)容是無結(jié)構(gòu)的,而網(wǎng)絡設備的數(shù)據(jù)流是有結(jié)構(gòu)的數(shù)據(jù)包,是成塊的。對應著設備的3種類型,設備文件也分為字符型設備文件(Character)、塊型設備文件(Block)和網(wǎng)絡插件型設備文件(Socket)。對于Block型和Character型設備。例如:創(chuàng)建設備文件和設備號并顯示。在linux操作系統(tǒng)寫有字符設備和塊設備兩類主要的設備文件類型。struct file_operations{ struct module *owner。 int(*open) (struct inode*, struct file *)。ssize_t(*sendpage) (struct file*, struct page*,int,size_t ,loff_t *,int)。(3) write向外部設備發(fā)送數(shù)據(jù)。(6) readdir一般用于文件系統(tǒng)的操作。(2)對初始化設備相關(guān)的參數(shù)。注冊終端使用的函數(shù)。(5)其它的一些初始化工作,比如給設備分配I/O,事情DMA通道等。其框圖如下: ADC驅(qū)動程序框圖驅(qū)動程序依靠注冊在file_operations 結(jié)構(gòu)中的函數(shù)實現(xiàn)設備的功能,這些函數(shù)被稱為“方法”。第一種情況是該硬件驅(qū)動程序被多個應用程序調(diào)用,造成在內(nèi)核中有多個file 類型的結(jié)構(gòu)實例。返回的ssize_t類型是有符號整型變量。它們在復制不對ptr做任何檢查,因此在調(diào)用它們之前需要使用access_ok()函數(shù)對ptr進行檢查。下面將分別介紹這兩種加載的方法。在文件系統(tǒng)中cramfs中加上設備驅(qū)動程序?qū)脑O備文件。設備文件都包含在/dev目錄下,linux使用的根文件系統(tǒng)是cramfs文件系統(tǒng)。(1)將ADC設備驅(qū)動文件復制到kernel/drivers/char目錄下,該目錄保存了linux的字符型設備的設備的驅(qū)動程序。 get_user(data,ptr)。copy_to_user將“from”地址處的“count”個字節(jié)傳遞到用戶空間中以“to”開頭的地址空間中。只用在計數(shù)器為0值時調(diào)用release方法,內(nèi)核才會真正釋放由open 分配的資源。下面將對進行分析。int _init device_init (void)。其中,irq是中斷向量。(3)注冊設備。(8) ioctl 執(zhí)行設備專有的命令。如果返回值非負,就表示成功地寫入的字節(jié)數(shù)。ifdef MAGIC_ROM_PTR int (*roptr) (struct file*,struct vm_area_struct *)。 int(*release) (struct inode*, struct file *)。 ssize_t (*read) (struct file *,char *,size_t,loff_t *)。塊設備是主要對針對磁盤等慢速設備設計的,一面耗費過多的CPU時間來等待。如上例中,在當前位置創(chuàng)建出一個與 /dev/had 一樣的、可以訪問的第