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

正文內(nèi)容

基于arm的gpsgprs車載定位系統(tǒng)模型的設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2024-07-19 04:05 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能:NAND FLASH結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲(chǔ)密度,并且寫入和擦除的速度也很快,應(yīng)用NAND的困難在于FLASH的管理和需要特殊的系統(tǒng)接口。FLASH閃存是非易失存儲(chǔ)器,可以對(duì)成塊的存儲(chǔ)器單元進(jìn)行擦寫和再編程。任何FLASH器件的寫入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為0。一般NAND FLASH的存儲(chǔ)容量較大,雖然NAND的管理比較困難,但是S3C2410X提供了能夠從NAND FLASH啟動(dòng)系統(tǒng)的Steppingstone機(jī)制,因此S3C2410X系統(tǒng)可以采用1片NAND FLASH同時(shí)作為啟動(dòng)ROM和系統(tǒng)程序保存ROM,減少了硬件成本。在本設(shè)計(jì)中,使用三星公司的NAND FLASH芯片K9F1208U0M,用來存放啟動(dòng)代碼(Bootloader)、μC/OSII內(nèi)核映像、文件系統(tǒng),另外還有應(yīng)用程序。它的單片存儲(chǔ)容量為64M,8位數(shù)據(jù)寬度,快速的寫周期時(shí)間(編程時(shí)間為200us,塊擦除時(shí)間為2ms),命令、地址、數(shù)據(jù)I/O口復(fù)用。芯片上包含有寫控制器,能夠自動(dòng)編程和擦寫。NAND FLASH部分的電路圖如圖表 342:NAND FLASH部分的電路圖。圖表 342:NAND FLASH部分的電路圖 串口電路串行口是計(jì)算機(jī)一種常用的接口,具有連接線少,通訊簡(jiǎn)單,得到廣泛的使用。常用的串口是RS322C接口(又稱EIA RS223C)它是在1970年由美國電子工業(yè)協(xié)會(huì)(EIA)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家及計(jì)算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”。它所具有的特性有:機(jī)械特性:RS232C接口是單端發(fā)送,單端接收,傳輸線上允許一個(gè)驅(qū)動(dòng)器和一個(gè)發(fā)送器。RS232C標(biāo)準(zhǔn)接口有25針(DB25)和9針(DB9)兩種。它的最大傳輸距離可達(dá)30m,最大速率20kb/s,適于相距較近設(shè)備的通信電氣特性:RS232C標(biāo)準(zhǔn)定義15V~3V表示邏輯“1”,+3V~l5v表示邏輯“0,它選擇15V~3V和+3V~+15V這個(gè)范圍而不采用TTL邏輯(0v~5v)的原因是為了提高抗干擾能力和增加傳輸距離,因此與TTL設(shè)備連接時(shí)需加電平轉(zhuǎn)換接口由于S3C2140的異步串行通訊接口不是RS232邏輯,因此,需加電平轉(zhuǎn)換接口,采用SP3232低功耗芯片,將TTL電平轉(zhuǎn)換為RS232電平。在設(shè)計(jì)中采用兩個(gè)9針DB9串口(如圖表35:串口電路圖),分別用來連接GPS模塊和GPRS模塊。另外還用來和PC機(jī)進(jìn)行通信,觀察系統(tǒng)啟動(dòng)情況和下載代碼等。COM0(串口0)包含了四個(gè)信號(hào)(TxD、RxD、CTS、RTS),可用來連接GPRS模塊。COM1(串口一)只有兩個(gè)信號(hào)(TxD,RxD),可用來連接GPS模塊。兩個(gè)串口的TxD,RxD信號(hào),分別與兩個(gè)模塊的TX,RX交叉相接,完成數(shù)據(jù)的發(fā)送和接收。圖表35:串口電路圖 GPS 模塊電路GPS是GPS定位信息的接收機(jī),本設(shè)計(jì)直接采用OEM板GPS模塊,從GPS模塊可以直接得到GPS衛(wèi)星的定位信息,而不需要了解太多GPS原理上的知識(shí)、算法等,因此加快了開發(fā)速度。并且,GPS模塊大多采用專用的處理芯片和相關(guān)算法,提高了GPS定位信息的精度。本設(shè)計(jì)采用合眾思?jí)压镜腅531接收機(jī)模塊。它是12通道的GPS接收機(jī)模塊,同時(shí)可以跟蹤12顆GPS衛(wèi)星,跟蹤性能優(yōu)越,能夠快速定位。E531接收機(jī)功耗低,數(shù)據(jù)更新率為每秒一次,能滿足車載系統(tǒng)的需求,性價(jià)比較高。其主要指標(biāo)如下:(1) 電氣指標(biāo):輸入電壓:。GPS指標(biāo):接收機(jī)頻率:L1,C/A code(SSP),接收機(jī)通道:并行12通道,定位時(shí)間:快速啟動(dòng):約8秒,熱啟動(dòng):約15秒,冷啟動(dòng):約50秒(典型值)自由定位:2分鐘,更新率:1HZ,精度:定位精度:3m(CEP),小于6m 2DRMS速度精度:(50%)接收機(jī)靈敏度:152dB.(跟蹤)。139dBm(捕獲)。(2) 接口:接口特性:CMOS電平輸出。串口0:默認(rèn)波特率為4800輸出:,默認(rèn)輸出語句包括義GGA,GSA,GSV,RMC??蛇x輸出:GLL,VTG,ZDA,DTM。輸入:選擇坐標(biāo)系、波特率設(shè)置、輸出語句選擇等。串口1:默認(rèn)波特率為115200,二進(jìn)制協(xié)議在本設(shè)計(jì)中,使用串口0,通過串口提取ASCLL碼。串口數(shù)據(jù)通過掀SPS232電平轉(zhuǎn)換為RS223電平。另外,將GPS模塊的發(fā)送端和接收端經(jīng)電平轉(zhuǎn)換后與串口DB9交叉相連。完整的GPS接收機(jī)包括電源、接收機(jī)和天線等模塊。GPS接收機(jī)連接圖如圖表361:GPS模塊電路圖, GPS供電電路如圖表362:GPS供電電路。圖表361:GPS模塊電路圖圖表362:GPS供電電路 GPRS模塊電路在車載終端中,短消息的發(fā)送、接收和語音通話是由無線通信模塊來負(fù)責(zé)完成的。GPRS模塊是指帶有GPRS功能的GSM模塊,可以通過GPRS網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸?,F(xiàn)在使用較多的有法國WAVECOM公司的WISMO系列、Siemens公司的MC35,MC45系列、Motorola公司的G81,G20系列,BENQ公司的M22,M23系列等。這些模塊接口簡(jiǎn)單、使用方便并且功能非常強(qiáng)大,為GPRS應(yīng)用提供理想的解決方案,在工業(yè)與民用等諸多領(lǐng)域已得到了廣泛的應(yīng)用。:(1) 接口簡(jiǎn)單,使用方便:一般都提供電源接口、SIM卡接口、RS223數(shù)據(jù)口,利用AT指令進(jìn)行控制(2) 功能齊全,有兩種工作模式:GSM Phase 2模式,支持語音服務(wù)。GPRS分組交換模式模塊本身支持的數(shù)據(jù)業(yè)務(wù)包括SMS、CSD、HSCCSD和GPRS。同時(shí)也支持語音,傳真等服務(wù)。有的模塊內(nèi)部集成了TCP/IP協(xié)議棧,方便了網(wǎng)絡(luò)應(yīng)用程序的開發(fā)。本設(shè)計(jì)采用的GPRS模塊是BENQ M23圖表371:GPRS模塊電路圖表372:SIM卡模塊電路4嵌入式操作系統(tǒng)及其開發(fā)環(huán)境介紹以嵌入式處理器為中心,搭建好硬件電路,僅僅提供了裸機(jī)運(yùn)行平臺(tái),要使整個(gè)系統(tǒng)的各部分資源充分利用起來,還需要嵌入式操作系統(tǒng)的軟件支持。嵌入式操作系統(tǒng)EOS(Embedded Operation System)是一種實(shí)時(shí)的,支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件。它是嵌入式系統(tǒng)(包括軟、硬件)極為重要的組成部分部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、通信協(xié)議、圖形用戶界面和標(biāo)準(zhǔn)化瀏覽器。嵌入式與一般的商用多任務(wù)0S(如unix、windows以及Linux等)有共同的一面,也有不同的一面。商用多任務(wù)0S主要目的是方便用戶管理計(jì)算機(jī)資源和追求系統(tǒng)資源的最大利用率,而嵌入式操作系統(tǒng)重點(diǎn)追求的是可確定性、可靠性,當(dāng)然也包括有限資源的管理。一般嵌入式操作系統(tǒng)內(nèi)核都很小,在幾KB到幾十KB之間?;旧隙贾С只趦?yōu)先級(jí)的搶占式調(diào)度策略和時(shí)間片輪翻調(diào)度,具有微內(nèi)核結(jié)構(gòu),有標(biāo)準(zhǔn)組件可代選用,支持虛擬存儲(chǔ)技術(shù)和存儲(chǔ)保護(hù)機(jī)制。一個(gè)典型的嵌入式操作系統(tǒng)一般要包括操作系統(tǒng)所具備的基本功能,如進(jìn)程調(diào)度、內(nèi)存管理以及中斷處理等,同時(shí)要具有小巧、速度快和響應(yīng)可預(yù)測(cè)性等特點(diǎn),必須保證實(shí)時(shí)任務(wù)在要求的時(shí)間內(nèi)完成。μC/OSII是一種免費(fèi)公開源代碼、結(jié)構(gòu)小巧、具有可剝奪實(shí)時(shí)內(nèi)核的實(shí)時(shí)操作系統(tǒng)。 μC/OSII 是專門為計(jì)算機(jī)的嵌入式應(yīng)用設(shè)計(jì)的, 絕大部分代碼是用C語言編寫的。CPU 硬件相關(guān)部分是用匯編語言編寫的、總量約200行的匯編語言部分被壓縮到最低限度,為的是便于移植到任何一種其它的CPU 上。用戶只要有標(biāo)準(zhǔn)的ANSI 的C交叉編譯器,有匯編器、連接器等軟件工具,就可以將μC/OSII嵌人到開發(fā)的產(chǎn)品中。μC/OSII 具有執(zhí)行效率高、占用空間小、實(shí)時(shí)性能優(yōu)良和可擴(kuò)展性強(qiáng)等特點(diǎn), 最小內(nèi)核可編譯至 2KB 。μC/OSII 已經(jīng)移植到了幾乎所有知名的CPU 上。 嚴(yán)格地說μC/OSII只是一個(gè)實(shí)時(shí)操作系統(tǒng)內(nèi)核,它僅僅包含了任務(wù)調(diào)度,任務(wù)管理,時(shí)間管理,內(nèi)存管理和任務(wù)間的通信和同步等基本功能。沒有提供輸入輸出管理,文件系統(tǒng),網(wǎng)絡(luò)等額外的服務(wù)。但由于μC/OSII良好的可擴(kuò)展性和源碼開放,這些非必須的功能完全可以由用戶自己根據(jù)需要分別實(shí)現(xiàn)。 μC/OSII目標(biāo)是實(shí)現(xiàn)一個(gè)基于優(yōu)先級(jí)調(diào)度的搶占式的實(shí)時(shí)內(nèi)核,并在這個(gè)內(nèi)核之上提供最基本的系統(tǒng)服務(wù),如信號(hào)量,郵箱,消息隊(duì)列,內(nèi)存管理,中斷管理等。 μC/OSII 中最多可以支持64 個(gè)任務(wù),分別對(duì)應(yīng)優(yōu)先級(jí)0~63,其中0 為最高優(yōu)先級(jí)。63為最低級(jí),系統(tǒng)保留了4個(gè)最高優(yōu)先級(jí)的任務(wù)和4個(gè)最低優(yōu)先級(jí)的任務(wù),所有用戶可以使用的任務(wù)數(shù)有56個(gè)。 μC/OSII提供了任務(wù)管理的各種函數(shù)調(diào)用,包括創(chuàng)建任務(wù),刪除任務(wù),改變?nèi)蝿?wù)的優(yōu)先級(jí),任務(wù)掛起和恢復(fù)等。 系統(tǒng)初始化時(shí)會(huì)自動(dòng)產(chǎn)生兩個(gè)任務(wù):一個(gè)是空閑任務(wù),它的優(yōu)先級(jí)最低,該任務(wù)僅給一個(gè)整形變量做累加運(yùn)算;另一個(gè)是系統(tǒng)任務(wù),它的優(yōu)先級(jí)為次低,該任務(wù)負(fù)責(zé)統(tǒng)計(jì)當(dāng)前cpu的利用率。 μC/OSII的時(shí)間管理是通過定時(shí)中斷來實(shí)現(xiàn)的,該定時(shí)中斷一般為10毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。 μC/OSII要求用戶在定時(shí)中斷的服務(wù)程序中,調(diào)用系統(tǒng)提供的與時(shí)鐘節(jié)拍相關(guān)的系統(tǒng)函數(shù),例如中斷級(jí)的任務(wù)切換函數(shù),系統(tǒng)時(shí)間函數(shù)。在ANSI C中是使用malloc和free兩個(gè)函數(shù)來動(dòng)態(tài)分配和釋放內(nèi)存。但在嵌入式實(shí)時(shí)系統(tǒng)中,多次這樣的錯(cuò)作會(huì)導(dǎo)致內(nèi)存碎片,且由于內(nèi)存管理算法的原因,malloc和free的執(zhí)行時(shí)間也是不確定。 μC/OSII中把連續(xù)的大快內(nèi)存按分區(qū)管理。每個(gè)分區(qū)中包含整數(shù)個(gè)大小相同的內(nèi)存塊,但不同分區(qū)之間的內(nèi)存快大小可以不同。用戶需要?jiǎng)討B(tài)分配內(nèi)存時(shí),系統(tǒng)選擇一個(gè)適當(dāng)?shù)姆謪^(qū),按塊來分配內(nèi)存。釋放內(nèi)存時(shí)將該塊放回它以前所屬的分區(qū),這樣能有效解決碎片問題,同時(shí)執(zhí)行時(shí)間也是固定的。 任務(wù)間通信與同步 對(duì)一個(gè)多任務(wù)的操作系統(tǒng)來說,任務(wù)間的通信和同步是必不可少的。μC/OSII中提供了4中同步對(duì)象,分別是信號(hào)量,郵箱,消息隊(duì)列和事件。所有這些同步對(duì)象都有創(chuàng)建,等待,發(fā)送,查詢的接口用于實(shí)現(xiàn)進(jìn)程間的通信和同步。 μC/OSII 采用的是可剝奪型實(shí)時(shí)多任務(wù)內(nèi)核??蓜儕Z型的實(shí)時(shí)內(nèi)核在任何時(shí)候都運(yùn)行就緒了的最高優(yōu)先級(jí)的任務(wù)。 μC/OSII的任務(wù)調(diào)度是完全基于任務(wù)優(yōu)先級(jí)的搶占式調(diào)度,也就是最高優(yōu)先級(jí)的任務(wù)一旦處于就緒狀態(tài),則立即搶占正在運(yùn)行的低優(yōu)先級(jí)任務(wù)的處理器資源。為了簡(jiǎn)化系統(tǒng)設(shè)計(jì),μC/OSII規(guī)定所有任務(wù)的優(yōu)先級(jí)不同,因?yàn)槿蝿?wù)的優(yōu)先級(jí)也同時(shí)唯一標(biāo)志了該任務(wù)本身。 任務(wù)調(diào)度將在以下情況下發(fā)生: (1) 高優(yōu)先級(jí)的任務(wù)因?yàn)樾枰撤N臨界資源,主動(dòng)請(qǐng)求掛起,讓出處理器,此時(shí)將調(diào)度就緒狀態(tài)的低優(yōu)先級(jí)任務(wù)獲得執(zhí)行,這種調(diào)度也稱為任務(wù)級(jí)的上下文切換。 (2) 高優(yōu)先級(jí)的任務(wù)因?yàn)闀r(shí)鐘節(jié)拍到來,在時(shí)鐘中斷的處理程序中,內(nèi)核發(fā)現(xiàn)高優(yōu)先級(jí)任務(wù)獲得了執(zhí)行條件(如休眠的時(shí)鐘到時(shí)),則在中斷態(tài)直接切換到高優(yōu)先級(jí)任務(wù)執(zhí)行。這種調(diào)度也稱為中斷級(jí)的上下文切換。 這兩種調(diào)度方式在μC/OSII的執(zhí)行過程中非常普遍,一般來說前者發(fā)生在系統(tǒng)服務(wù)中,后者發(fā)生在時(shí)鐘中斷的服務(wù)程序中。 調(diào)度工作的內(nèi)容可以分為兩部分:最高優(yōu)先級(jí)任務(wù)的尋找和任務(wù)切換。其最高優(yōu)先級(jí)任務(wù)的尋找是通過建立就緒任務(wù)表來實(shí)現(xiàn)的。 μC/OSII 中的每一個(gè)任務(wù)都有獨(dú)立的堆棧空間,并有一個(gè)稱為任務(wù)控制塊TCB(Task Control Block)的數(shù)據(jù)結(jié)構(gòu),其中第一個(gè)成員變量就是保存的任務(wù)堆棧指針。任務(wù)調(diào)度模塊首先用變量OSTCBHighRdy 記錄當(dāng)前最高級(jí)就緒任務(wù)的TCB 地址,然后調(diào)用OS_TASK_SW()函數(shù)來進(jìn)行任務(wù)切換。   μC/OSII的組成部分   μC/OSII可以大致分成核心、任務(wù)處理、時(shí)間處理、任務(wù)同步與通信,CPU的移植等5個(gè)部分。 (1) 核心部分() 是操作系統(tǒng)的處理核心,包括操作系統(tǒng)初始化、操作系統(tǒng)運(yùn)行、中斷進(jìn)出的前導(dǎo)、時(shí)鐘節(jié)拍、任務(wù)調(diào)度、事件處理等多部分。能夠維持系統(tǒng)基本工作的部分都在這里。(2) 任務(wù)處理部分() 任務(wù)處理部分中的內(nèi)容都是與任務(wù)的操作密切相關(guān)的。包括任務(wù)的建立、刪除、掛起、恢復(fù)等等。因?yàn)棣藽/OSII是以任務(wù)為基本單位調(diào)度的,所以這部分內(nèi)容也相當(dāng)重要。(3) 時(shí)鐘部分() μC/OSII中的最小時(shí)鐘單位是timetick(時(shí)鐘節(jié)拍)。任務(wù)延時(shí)等操作是在這里完成的。 (4) 任務(wù)同步和通信部分 為事件處理部分,包括信號(hào)量、郵箱、郵箱隊(duì)列、事件標(biāo)志等部分;主要用于任務(wù)間的互相聯(lián)系和對(duì)臨界資源的訪問。 (5) 與CPU的接口部分 是指μC/OSII針對(duì)所使用的CPU的移植部分。由于μC/OSII是一個(gè)通用性的操作系統(tǒng),所以對(duì)于關(guān)鍵問題上的實(shí)現(xiàn),還是需要根據(jù)具體CPU的具體內(nèi)容和要求作相應(yīng)的移植。這部分內(nèi)容由于牽涉到SP等系統(tǒng)指針,所以通常用匯編語言編寫。主要包括中斷級(jí)任務(wù)切換的底層實(shí)現(xiàn)、任務(wù)級(jí)任務(wù)切換的底層實(shí)現(xiàn)、時(shí)鐘節(jié)拍的產(chǎn)生和處理、中斷的相關(guān)處理部分等內(nèi)容。 μC/OSII任務(wù)之間的通訊與同步方式在μC/OSII中,有多種方法可以保護(hù)任務(wù)之間的共享數(shù)據(jù)和提供任務(wù)之間的通訊。(1) 利用宏OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()來關(guān)閉中斷和打開中斷。當(dāng)兩個(gè)任務(wù)或者一個(gè)任務(wù)和一個(gè)中斷服務(wù)子程序共享某些數(shù)據(jù)時(shí),可以采用這種方法;(2) 利用函數(shù)OSSchedLock()和OSSchekUnlock()對(duì)μC/OSII中的任務(wù)調(diào)度函數(shù)上鎖和開鎖;(3) 信號(hào)量;(4) 郵箱;(5) 隊(duì)列。通過調(diào)用OSSemCreate()建立信號(hào)量,并對(duì)信號(hào)量的初始計(jì)數(shù)值賦值。該初始值為0到65
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1