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

正文內(nèi)容

[信息與通信]基于嵌入式webserer的溫度采集系統(tǒng)的設(shè)計-文庫吧資料

2025-01-24 12:21本頁面
  

【正文】 0000 0000 1010 001000A2H+ 176。C0000 0101 0101 00000550H+ 176。 DS18B20溫度數(shù)據(jù)表 TEMPERATUREDIGITAL OUTPUT(Binary)DIGITAL OUTPUT(Hex)+125 176。 : DS18B20溫度值格式表LS ByteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit022222222MS ByteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSS222這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲在DS18B20的兩個8比特的RAM中,二進制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,;如果溫度小于0,這5位為1。 64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標(biāo)號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1)。圖中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器1的預(yù)置值。計數(shù)器1和溫度寄存器被預(yù)置在-55℃所對應(yīng)的一個基數(shù)值。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。 DS18B20內(nèi)部結(jié)構(gòu)圖 DS18B20工作原理 DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由2s減為750ms。 DS18B20的引腳定義和內(nèi)部結(jié)構(gòu)DS18B20只有3個管腳:(1)DQ為數(shù)字信號輸入/輸出端; (2)GND為電源地; (3)VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。 告警搜索命令識別和尋址溫度在編定的極限之外的器件;216。 在1秒內(nèi)把溫度轉(zhuǎn)換為數(shù)字;216。 測溫范圍為55℃~125℃,℃;216。 可用數(shù)據(jù)線供電;216。 多點能力使分布式溫度檢測應(yīng)用得以簡化;216。 DS18B20的特性: 216。讀寫及溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。由于每片DS18B20含有唯一的硅串行數(shù),所以在一條總線上可掛接任意多個DS18B20芯片。C。C范圍內(nèi),精度為177。C~+125176??梢酝ㄟ^串口Rs232來控制ARM7TDMI,以啟動操作系統(tǒng)或者運行其他應(yīng)用程序。4 硬件設(shè)計 總體結(jié)構(gòu)框圖整個設(shè)計系統(tǒng)包括嵌入式webserver和溫度采集兩大部分。在編譯內(nèi)核是,執(zhí)行make romfs時會生成romfs目錄,將編譯好的應(yīng)用程序拷到romfs目錄下的bin子目錄中。由于目前使用的uClinux操作系統(tǒng)內(nèi)核采用ROMFS作為根文件系統(tǒng),目標(biāo)系統(tǒng)的uClinix啟動后,其目錄大多數(shù)是建立在FLASH中,因而是不可寫的,只有/var、/tmp等少數(shù)幾個目錄建立在SDRAM,是可讀寫的,但若目標(biāo)系統(tǒng)掉電,內(nèi)容就丟失了,因此只能作為應(yīng)用程序調(diào)試用,當(dāng)應(yīng)用程序調(diào)試完成后,還應(yīng)將其寫入FLASH。因此需要有FTP服務(wù)器和FTP客戶端。通過以太網(wǎng)口從網(wǎng)絡(luò)添加用戶程序到目標(biāo)系統(tǒng)中的方法十分方便,特別是在用戶應(yīng)用程序的調(diào)試過程中,可以免去每次修改都要重新編譯內(nèi)核并燒寫入FLASH的麻煩。將應(yīng)用程序添加到目標(biāo)系統(tǒng)中,可以利用FTP下載。3)燒寫uClinux根文件系統(tǒng)。在編譯完uClinux后,會在arch/armnommu/boot目錄下生成zImage,它是壓縮后的內(nèi)核鏡像。由于優(yōu)龍ARM44b0開發(fā)套件中提供了BIOS,所以只需用Flash燒寫工具將BIOS燒到開發(fā)板的Flash中。引導(dǎo)加載程序是系統(tǒng)加電后運行的第一段代碼,即BIOS。 uClinux下載編譯好uClinux后,需要將生成的二進制文件燒寫到開發(fā)板上的FLASH中。 make image:這里再一次make image 就是為了得到uClinux 的可執(zhí)行文件的鏡像了。這個文件是由上面的make image生成的。 make linux:有了romfs 的鏡像我們就可以編譯Linux了。但是沒有關(guān)系,因為我們在這里需要的僅僅是romfs 的鏡像,以便在下面編譯Linxu 內(nèi)核的時候使用。因為原來的Linux 編譯出來是elf 格式的,不能直接用于下載或者編譯(不過那個文件也是需要的,因為如果你需要,那個elf 格式的內(nèi)核文件里面可以包含調(diào)試的信息)。216。原來的程序是分散在user 目錄下,現(xiàn)在例如可執(zhí)行文件需要放到bin目錄,配置文件放在etc 目錄下,這些事就是make romfs 所做的。216。216。216。 make lib_only:編譯uClibc。 make dep:這個僅僅是在第一次編譯的時候需要,以后就不用了,為的是在編譯的時候知道文件之間的依賴關(guān)系,在進行了多次得編譯后,make 會根據(jù)這個依賴關(guān)系來確定哪些文件需要重新編譯、哪些文件可以跳過。 修改uClinuxdist/vendors/Samsung/44B0/rc如下 hostname Samsung/bin/expand /etc/ /dev/ram0/bin/expand /etc/ /dev/ram1mount t proc proc /procmount t ext2 /dev/ram0 /varmount t ext2 /dev/ram1 /varchmod 777 /ramdiskmkdir /var/configmkdir /var/tmpmkdir /var/logmkdir /var/runmkdir /var/lockmkdir /var/emptyIfconfig lo route add net netmask loifconfig eth0 netmask upcat /etc/motd4)編譯uClinux216。\$(ROOTDIR)/$(LINUXDIR)/linux (TAB)$(IMAGEDIR)/(TAB)cat $(IMAGEDIR)/ $(IMAGEDIR)/\$(ROMFSIMG) $(IMAGE)改為(TAB)$(CROSS_COMPILE)ld r o $(ROOTDIR)/$(LINUXDIR)/\b binary $(ROMFSIMG)(tab)$(CROSS_COMPILE)objcopy O binary R .note R .ment S\ $(ROOTDIR)/$(LINUXDIR)/linux $(RAMIMAGE)(TAB)cp $(ROOTDIR)/$(LINUXDIR)/arch/armnommu/boot/zImageremovesection=.eramremovesection=.init\removesection=.bss removesection=.eramremovesection=.text\removesection=.ramvec= $(IMAGEDIR)/ELFIMAGE = $(IMAGEDIR)/兩行改為ROMIMAGE = $(IMAGEDIR)/RAMIMAGE = $(IMAGEDIR)/并取消其中最后連接的命令:(TAB)$(CROSS_COMPILE)objcopy O binary\ removesection=.romvec 修改vendors/Samsung/44B0/Makefile,原來的IMAGE {0, romfs_data, 1}, endif216。后加上ifdef CONFIG_BOARD_SNDS100 .........} arena[] = {endif再在struct arena_t {216。 ,在*(.got) /* Global offset table */ 下加上 romfs_data = .。2)安裝補丁,執(zhí)行命令:patch p1 3)修改文件216。在本設(shè)計中系統(tǒng)源代碼:;補丁包:;使用交叉編譯工具鏈:armelftools。 移植uClinux操作系統(tǒng)uClinux移植首先要編譯uClinux源代碼,然后將編譯后的操作系統(tǒng)燒寫到flash中,最后需要將用戶應(yīng)用程序添加到操作系統(tǒng)的根文件系統(tǒng)中。因為前面創(chuàng)建gcc的過程沒有編譯C++編譯器,現(xiàn)在glibc已經(jīng)準(zhǔn)備好了,所以這個步驟將產(chǎn)生一個更完整的gcc編譯器。glibc是一個提供系統(tǒng)調(diào)用和基本函數(shù)的C語言庫,比如open,malloc和printf等,所有動態(tài)鏈接的程序都要用到它。解決辦法是先編譯僅支持C語言的gcc編譯器,并禁止支持線程。在這個過程中只能編譯C程序,而不能編譯C++程序。首先安裝軟件包binutils是非常重要的,因為glibc和gcc會針對可用的連接器和匯編器進行多種測試,以決定打開某些特性。這個過程結(jié)束后,會創(chuàng)建類似armlinuxld等工具。主要是生成include/linux/ 和 include/linux/ 文件,這是編譯 glibc 是要用到的, 和 文件的存在,也說明了你生成了正確的頭文件。在這個過程中,將設(shè)置一些環(huán)境變量,創(chuàng)建安裝目錄,安裝內(nèi)核源代碼和頭文件等。:這個壓縮包就是Linux的內(nèi)核,在編譯glibc時,要用到Linux內(nèi)核中的include目錄的內(nèi)核頭文件。Glibc:Libc是很多用戶層應(yīng)用都要用到的庫,用于定義系統(tǒng)調(diào)用和其它一些基本的函數(shù)調(diào)用。主要是為GNU系統(tǒng)提供C 編譯器。不同的體系結(jié)構(gòu)、不同的操作內(nèi)容甚至是不同版本的內(nèi)核,都會用到不同的交叉編譯器。因此,交叉編譯就是指在一臺機器中編譯能夠在另一臺機器中運行的程序。程序?qū)嶋H的運行環(huán)境稱為目標(biāo)機,也就是嵌入式系統(tǒng)環(huán)境。編譯的最主要的工作就是將程序轉(zhuǎn)化成運行該CPU所能識別的機器代碼。uClinux 對于嵌入式系統(tǒng)來說是一個網(wǎng)絡(luò)完備的操作系統(tǒng)。uClibc對libc(可用于標(biāo)準(zhǔn)Linux的函數(shù)庫)做了修改,為uClinux提供了更為精簡的應(yīng)用程序庫。這并不是意味著uClinux不能實現(xiàn)多進程,實際上uClinux多進程管理是通過vfork來實現(xiàn)的,或者是子進程代替父進程執(zhí)行,直到子進程調(diào)用exit函數(shù)退出,或者是子進程調(diào)用exec函數(shù)執(zhí)行一個新的進程。 uClinux所適用的微控制器:uClinux適用于摩托羅拉的ColdFire/Dragonball,ARM系列(例如Atmel, TI, Samsung等生產(chǎn)的芯片),Intel i960, Sparc (例如無MMU的 LEON), NEC v850,甚至是開放的可綜合(到CLPD內(nèi))的CPU核,比如OPENcore。平臺支持 開發(fā)uClinux的工具鏈:開發(fā)uClinux通常用標(biāo)準(zhǔn)的GNU工具鏈。實時性的支持uClinux本身并不支持實時性,目前存在兩種不同的方案提供uClinux對實時性的支持,它們分別是RTLinux(RTL)和RTAI(Real Time Application Interface)。但是由于沒有MMU的管理,操作系統(tǒng)對內(nèi)存空間是沒有保護的,所有程序訪問的地址都是實際物理地址。沒有內(nèi)存管理單元所帶來的好處是簡化了芯片設(shè)計,降低了產(chǎn)品成本。下面介紹一些和uClinux相關(guān)的知識。在GNU通用公共許可證(GNU GPL)的保證下,運行uClinux操作系統(tǒng)的用戶可以使用幾乎所有的Linux API函數(shù),不會因為沒有MMU而受到影響。一個進程在執(zhí)行前,系統(tǒng)必須為進程分配足夠的連續(xù)地址空間,然后全部載入主存儲器的連續(xù)空間中。uClinux系統(tǒng)對于內(nèi)存的訪問是直接的,所有程序中訪問的地址都是實際的物理地址。但是由于沒有MMU管理,所以實際上uClinux采用實存儲器管理策略。對于uClinux來說,其設(shè)計針對沒有MMU的處理器,即uClinux不能使用處理器的虛擬內(nèi)存管理技術(shù)。適用于沒有虛擬內(nèi)存或內(nèi)存管理單元(MMU)的處理器。,沿襲了主流Linux的絕大部分特性。嵌入式linux通用linux一樣,具有低成本、多種硬件平臺支持、優(yōu)異的性能和良好的網(wǎng)絡(luò)支持等優(yōu)點。 軟件開發(fā)環(huán)境本設(shè)計中程序的開發(fā)需要在交叉編譯環(huán)境中完成,同時程序的運行需要操作系統(tǒng)的支持,因此,建立軟件開發(fā)環(huán)境包括建立交叉編譯環(huán)境和移植操作系統(tǒng),在本設(shè)計中指移植uClinux。 四個小鍵盤,四個LED,一個蜂鳴器,一個PS/2接口;216。 串口:兩個標(biāo)準(zhǔn)三線RS232接口,其中COM2支持硬件流控制;216。 外部存儲器:2M Bytes NOR FLASH、8M Bytes SDRAM、16M Bytes Nand Flash ;216。 ARM開發(fā)環(huán)境本設(shè)計是在深圳優(yōu)龍公司開發(fā)的FS44B0X開發(fā)板上完成的,該開發(fā)板上的硬件資源有:216。THUMB指令集是ARM指令集的擴展,它以ARM指令集為基礎(chǔ),由36個指令格式,這些指令都是基于標(biāo)準(zhǔn)的32位ARM指令集,只是用16位重新進行了編碼。因此在指令吞吐量和實時中斷響應(yīng)上也較CISC性能更優(yōu)。ARM7TDMI各字原義如下: ARM7ARM6 32整型核的3V兼容版本; T16位壓縮指令集Thumb; D在片調(diào)試支持,允許處理器響應(yīng)調(diào)試請求暫停; M增強型乘法器,與以前處理器相比性能更高,產(chǎn)生全64位結(jié)果;I嵌入式ICE硬件提供片上斷點和調(diào)試點支持。ARM7TDMI是世界上廣泛使用的32位嵌入式RISC處理器。 主頻最高達130MIPS,高速的運算處理能力能勝任絕大多數(shù)的復(fù)雜應(yīng)用。 對操作系統(tǒng)的支持廣泛,包括Windows
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1