www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 汽車電子 > 汽車電子
[導(dǎo)讀]一、車輛調(diào)度系統(tǒng)的整體設(shè)計(jì):整個(gè)系統(tǒng)包括四個(gè)部分(1)通信主站;(2)車載從站;(3)通信鏈路。(4)系統(tǒng)監(jiān)控部分。下面對(duì)各個(gè)部分的功能做一個(gè)簡(jiǎn)單的介紹。(1)通信主站:完成信息的轉(zhuǎn)發(fā),它是連接系統(tǒng)監(jiān)控部分和車載從站的

一、車輛調(diào)度系統(tǒng)的整體設(shè)計(jì):

整個(gè)系統(tǒng)包括四個(gè)部分(1)通信主站;(2)車載從站;(3)通信鏈路。(4)系統(tǒng)監(jiān)控部分。下面對(duì)各個(gè)部分的功能做一個(gè)簡(jiǎn)單的介紹。

(1)通信主站:完成信息的轉(zhuǎn)發(fā),它是連接系統(tǒng)監(jiān)控部分和車載從站的紐帶,它將從系統(tǒng)監(jiān)控部分來(lái)的信息轉(zhuǎn)發(fā)給車載從站。并且接收車載從站的信息,并將信息上傳給系統(tǒng)監(jiān)控部分。

(2)車載從站:被監(jiān)控的對(duì)象,接收監(jiān)控調(diào)度命令,并可以返回自己的狀態(tài)信息。狀態(tài)信息的取得是依靠在車載從站中的GPS接收機(jī)來(lái)完成車輛位置和速度信息等的采集工作。

(3)通信鏈路:完成通信主站和車載從站的信息傳遞及通信主站和系統(tǒng)監(jiān)控部分的信息交互。其中前者在本次設(shè)計(jì)中是以GSM手機(jī)模塊做為通信的工具,而后者是采用RS232或USB來(lái)實(shí)現(xiàn)的。

(4)系統(tǒng)監(jiān)控部分:以圖形的方式將被監(jiān)控車輛的位置信息顯示在電子地圖上(GIS,地理信息系統(tǒng)的采用),并且可以顯示其狀態(tài)等文字信息。并且可以通過(guò)系統(tǒng)監(jiān)控部分的人機(jī)界面來(lái)完成調(diào)度命令等信息的輸入。由于在很多的論文中包含了這些車輛監(jiān)控系統(tǒng)的基本組成元素,所以在這里就簡(jiǎn)單的介紹一下。相關(guān)內(nèi)容可以參考有關(guān)的論文資料。下面重點(diǎn)討論UC/OS-II的內(nèi)核調(diào)度機(jī)理、操作系統(tǒng)的移植、基于狀態(tài)機(jī)嵌入式系統(tǒng)程序開(kāi)發(fā)和硬件設(shè)計(jì)方面的問(wèn)題。圖一給初一個(gè)車輛監(jiān)控系統(tǒng)的示意圖。

二、操作系統(tǒng)的內(nèi)核調(diào)度機(jī)理:

由于本系統(tǒng)對(duì)時(shí)性要求不是很強(qiáng),采用了UC/OS-II這種簡(jiǎn)單的源碼開(kāi)發(fā)的操作系統(tǒng)。由于UC/OS-II是以任務(wù)為基礎(chǔ)進(jìn)行調(diào)度的。所以系統(tǒng)中所要處理的中間結(jié)果或響應(yīng)外部的輸入和輸出,都應(yīng)該在任務(wù)中完成。任務(wù)的調(diào)度是基于優(yōu)先級(jí)的(UC/OS不支持時(shí)間片輪轉(zhuǎn)的方法)。在多任務(wù)調(diào)度開(kāi)始后,時(shí)鐘節(jié)拍開(kāi)始工作,時(shí)鐘節(jié)拍產(chǎn)生周期性的中斷,時(shí)鐘節(jié)拍提供延時(shí)或超時(shí)的依據(jù)。多任務(wù)啟動(dòng)之前應(yīng)該先進(jìn)行初始化的工作,包括CPU、TCB(任務(wù)控制塊)、ECB(事件控制塊)和操作系統(tǒng)本身的初始化等。初始化完畢后多任務(wù)啟動(dòng),系統(tǒng)總是運(yùn)行就緒狀態(tài)優(yōu)先級(jí)最高的任務(wù)。由于任務(wù)本身是一個(gè)無(wú)限的循環(huán),所以任務(wù)中必須包含引起任務(wù)切換的函數(shù),如OSTimeDly()、OSSemPend()等,執(zhí)行到這些函數(shù)時(shí)將引起任務(wù)的切換,即任務(wù)的調(diào)度。任務(wù)切換之前應(yīng)該保護(hù)現(xiàn)場(chǎng)。任務(wù)之間要進(jìn)行通信,通信的方式很多,可以采用全局變量、共享存儲(chǔ)區(qū)等一些常用的方式,但在采用UC/OS-II的系統(tǒng)中任務(wù)之間的通信更多采用信號(hào)量、消息郵箱等進(jìn)行。

三、操作系統(tǒng)的移植:

將UC/OS-II這個(gè)操作系統(tǒng)移植到三星公司ARM7TDMI S3C44B0X上要注意OSCtxSW()這個(gè)任務(wù)切換函數(shù),其中任務(wù)切換的核心是利用出棧指令將各個(gè)任務(wù)的工作現(xiàn)場(chǎng)加以恢復(fù)。利用中斷返回指令改變PC的指針達(dá)到任務(wù)切換的目的。它實(shí)際上是從任務(wù)堆棧中恢復(fù)處理器所有的寄存器,并且執(zhí)行中斷返回指令。實(shí)際的移植是用軟件來(lái)模擬中斷的發(fā)生。移植中的關(guān)鍵問(wèn)題是如何構(gòu)造任務(wù)堆棧及任務(wù)切換時(shí)的出棧順序。而任務(wù)區(qū)堆棧初始化主要是模擬任務(wù)被中斷后堆棧中的內(nèi)容。另值得注意的是開(kāi)關(guān)中斷的函數(shù)OS_ENTERCRITICAL()和OS_EXIT_CRITICAL()這個(gè)函數(shù)。這兩個(gè)函數(shù)實(shí)現(xiàn)了對(duì)臨界區(qū)內(nèi)容的保護(hù)。

四、基于狀態(tài)機(jī)的程序設(shè)計(jì):

整個(gè)系統(tǒng)的軟件設(shè)計(jì)采用任務(wù)加狀態(tài)機(jī)的設(shè)計(jì)方法,由于系統(tǒng)中采用了UC/OS-II的操作系統(tǒng),所以系統(tǒng)中所有事件處理都采用任務(wù)調(diào)度的方式,任務(wù)在操作系統(tǒng)得調(diào)度下運(yùn)行。而對(duì)于每個(gè)任務(wù)采用基于狀態(tài)機(jī)的設(shè)計(jì)方法,引起系統(tǒng)中某個(gè)狀態(tài)發(fā)生轉(zhuǎn)移的事件可能是信號(hào)量、也可能是其它的事件。下面對(duì)狀態(tài)機(jī)的有關(guān)內(nèi)容加以介紹。

狀態(tài)機(jī)可以看成是一個(gè)狀態(tài)和轉(zhuǎn)換的圖,描述了應(yīng)用程序?qū)邮盏绞录捻憫?yīng)。

狀態(tài)機(jī)的執(zhí)行:狀態(tài)機(jī)在某個(gè)時(shí)刻處理某個(gè)事件而在處理另外的事件之前必須完成對(duì)這個(gè)事件的處理并得到結(jié)果。

基于狀態(tài)機(jī)的程序執(zhí)行過(guò)程是這樣的:在任何時(shí)候都存在一個(gè)或者多個(gè)狀態(tài)機(jī)活動(dòng)的狀態(tài)。如果一個(gè)狀態(tài)是活動(dòng)的,那么離開(kāi)這個(gè)狀態(tài)的轉(zhuǎn)換可能會(huì)激發(fā),引起一個(gè)事件的執(zhí)行,并使得另一個(gè)狀態(tài)或位于初始狀態(tài)位置的狀態(tài)激活(下一個(gè)狀態(tài)處于初始狀態(tài))。

狀態(tài)機(jī)它是說(shuō)明狀態(tài)機(jī)的對(duì)象在對(duì)象自己的生命期中事件的所經(jīng)歷的狀態(tài)序列以及它們對(duì)那些事件的響應(yīng)??梢赃@樣理解狀態(tài)機(jī)狀態(tài)機(jī)是對(duì)象的狀態(tài)在事件的作用下從一個(gè)狀態(tài)轉(zhuǎn)移到另一個(gè)狀態(tài)。

狀態(tài)機(jī)中的幾個(gè)基本概念:

1.狀態(tài)(state):是指在對(duì)象的生命期中的一個(gè)條件或狀況,在此期間對(duì)象將滿足某些條件、執(zhí)行某些活動(dòng)或等待某些事件。

2.事件(event)是對(duì)一個(gè)在時(shí)間和空間上占有一定位置的有意義的事情的說(shuō)明。在狀態(tài)機(jī)中一個(gè)事件的產(chǎn)生可以引起一次狀態(tài)轉(zhuǎn)換。

3.轉(zhuǎn)換(transition)是兩個(gè)狀態(tài)之間的一種關(guān)系,它指明對(duì)象在第一個(gè)狀態(tài)中執(zhí)行的一定的動(dòng)作,并當(dāng)特定事件或特定條件滿足時(shí)進(jìn)入第二個(gè)狀態(tài)。

嵌入式系統(tǒng)的程序設(shè)計(jì)中,應(yīng)該注意的另一個(gè)問(wèn)題是函數(shù)的可重入問(wèn)題, 可重入函數(shù)可以被遞歸調(diào)用,可以同時(shí)被兩個(gè)或多個(gè)進(jìn)程調(diào)用,這就要求在編譯的時(shí)候要為可重入函數(shù)提供一個(gè)模擬堆棧區(qū)。

圖二是設(shè)計(jì)中采用狀態(tài)機(jī)這種設(shè)計(jì)方法設(shè)計(jì)的系統(tǒng)程序中LCD顯示部份。下面是對(duì)圖二的解釋。

其中菜單1是顯示歡迎界面(就是上面提到的狀態(tài));菜單2是發(fā)送短消息;菜單3是記錄發(fā)送短消息內(nèi)容的;菜單4是用來(lái)讀取接收到的短消息。具體的狀態(tài)轉(zhuǎn)移過(guò)程是這樣的,當(dāng)顯示處于歡迎界面的時(shí)候,在這個(gè)狀態(tài)下,如向下的按鍵被按下(這就是一個(gè)事件)或發(fā)送短消息的鍵被按下,則系統(tǒng)狀態(tài)轉(zhuǎn)移到菜單2(發(fā)生了一次狀態(tài)轉(zhuǎn)移,下面和這是類似的,故相應(yīng)的分析省略了。);在這個(gè)狀態(tài)下,當(dāng)向下按鍵被按下或系統(tǒng)要輸入發(fā)送短消息的內(nèi)容時(shí)候,系統(tǒng)狀態(tài)從菜單2進(jìn)入菜單3;在這個(gè)狀態(tài)下,當(dāng)向下的鍵盤(pán)被按下,系統(tǒng)的狀態(tài)轉(zhuǎn)移到菜單4;讀取短消息結(jié)束時(shí),系統(tǒng)狀態(tài)返回到歡迎界面。實(shí)際的系統(tǒng)還有返回按鍵等,這里只是用這個(gè)圖簡(jiǎn)單說(shuō)明采用狀態(tài)機(jī)的程序設(shè)計(jì)方法。

五、硬件設(shè)計(jì):

為了從分利用S3C44B0X的時(shí)鐘頻率高的特點(diǎn),減小S3C44B0X在取指和存取數(shù)據(jù)的延遲,系統(tǒng)中采用將代碼固化在FLASH中,并在系統(tǒng)啟動(dòng)后將代碼從FLASH拷貝到SDRAM中運(yùn)行。并且系統(tǒng)中采用PDIUSBD12做為通信主站和PC上的系統(tǒng)監(jiān)控部分之間通信。比起RS232串行通信方式,速度有很大的液提高。尤其在調(diào)度的車輛數(shù)量比較多的時(shí)候其速度優(yōu)勢(shì)是比較明顯的。

六、總結(jié):

經(jīng)過(guò)系統(tǒng)的運(yùn)行,系統(tǒng)達(dá)到了設(shè)計(jì)的要求。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在工業(yè)物聯(lián)網(wǎng)設(shè)備部署中,Modbus通信故障是導(dǎo)致系統(tǒng)停機(jī)的首要原因之一。據(jù)統(tǒng)計(jì),超過(guò)60%的現(xiàn)場(chǎng)問(wèn)題源于通信配置錯(cuò)誤或數(shù)據(jù)解析異常。本文從嵌入式系統(tǒng)開(kāi)發(fā)視角,系統(tǒng)闡述Modbus通信調(diào)試的方法論,結(jié)合實(shí)際案例解析如何高...

關(guān)鍵字: 嵌入式系統(tǒng) Modbus通信

在嵌入式系統(tǒng)開(kāi)發(fā)中,看門(mén)狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門(mén)狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門(mén)狗 嵌入式系統(tǒng)

人工智能(AI)和機(jī)器學(xué)習(xí)(ML)是使系統(tǒng)能夠從數(shù)據(jù)中學(xué)習(xí)、進(jìn)行推理并隨著時(shí)間的推移提高性能的關(guān)鍵技術(shù)。這些技術(shù)通常用于大型數(shù)據(jù)中心和功能強(qiáng)大的GPU,但在微控制器(MCU)等資源受限的器件上部署這些技術(shù)的需求也在不斷增...

關(guān)鍵字: 嵌入式系統(tǒng) 人工智能 機(jī)器學(xué)習(xí)

Zephyr開(kāi)源項(xiàng)目由Linux基金會(huì)維護(hù),是一個(gè)針對(duì)資源受限的嵌入式設(shè)備優(yōu)化的小型、可縮放、多體系結(jié)構(gòu)實(shí)時(shí)操作系統(tǒng)(RTOS)。近年來(lái),Zephyr RTOS在嵌入式開(kāi)發(fā)中的采用度逐步增加,支持的開(kāi)發(fā)板和傳感器不斷增加...

關(guān)鍵字: 嵌入式系統(tǒng) 軟件開(kāi)發(fā) 實(shí)時(shí)操作系統(tǒng) Zephyr項(xiàng)目

在資源受限的嵌入式系統(tǒng)中,代碼執(zhí)行效率和內(nèi)存占用始終是開(kāi)發(fā)者需要權(quán)衡的核心問(wèn)題。內(nèi)聯(lián)函數(shù)(inline functions)和宏(macros)作為兩種常見(jiàn)的代碼展開(kāi)技術(shù),在性能、可維護(hù)性和安全性方面表現(xiàn)出顯著差異。本文...

關(guān)鍵字: 內(nèi)聯(lián)函數(shù) 嵌入式系統(tǒng)

在嵌入式系統(tǒng)和服務(wù)器開(kāi)發(fā)中,日志系統(tǒng)是故障排查和運(yùn)行監(jiān)控的核心組件。本文基于Linux環(huán)境實(shí)現(xiàn)一個(gè)輕量級(jí)C語(yǔ)言日志庫(kù),支持DEBUG/INFO/WARN/ERROR四級(jí)日志分級(jí),并實(shí)現(xiàn)按大小滾動(dòng)的文件輪轉(zhuǎn)機(jī)制。該設(shè)計(jì)在某...

關(guān)鍵字: C語(yǔ)言 嵌入式系統(tǒng)

在嵌入式系統(tǒng)和底層驅(qū)動(dòng)開(kāi)發(fā)中,C語(yǔ)言因其高效性和可控性成為主流選擇,但缺乏原生單元測(cè)試支持成為開(kāi)發(fā)痛點(diǎn)。本文提出一種基于宏定義和測(cè)試用例管理的輕量級(jí)單元測(cè)試框架方案,通過(guò)自定義斷言宏和測(cè)試注冊(cè)機(jī)制,實(shí)現(xiàn)無(wú)需外部依賴的嵌入...

關(guān)鍵字: C語(yǔ)言 嵌入式系統(tǒng) 驅(qū)動(dòng)開(kāi)發(fā)

在嵌入式系統(tǒng)與驅(qū)動(dòng)開(kāi)發(fā)中,內(nèi)存映射I/O(Memory-Mapped I/O, MMIO)是一種將硬件寄存器映射到處理器地址空間的技術(shù),允許開(kāi)發(fā)者通過(guò)指針直接讀寫(xiě)寄存器,實(shí)現(xiàn)高效、低延遲的硬件控制。本文通過(guò)C語(yǔ)言實(shí)戰(zhàn)案例...

關(guān)鍵字: 內(nèi)存映射 I/O操作 嵌入式系統(tǒng)

在嵌入式系統(tǒng)開(kāi)發(fā)和多線程編程中,程序崩潰、內(nèi)存越界等復(fù)雜問(wèn)題常令開(kāi)發(fā)者困擾。GDB作為強(qiáng)大的調(diào)試工具,其條件斷點(diǎn)和內(nèi)存查看功能可精準(zhǔn)定位隱蔽缺陷。本文通過(guò)實(shí)際案例演示這些高級(jí)功能的應(yīng)用,幫助開(kāi)發(fā)者提升調(diào)試效率。

關(guān)鍵字: GDB 嵌入式系統(tǒng)
關(guān)閉