日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 汽車電子 > 汽車電子
[導(dǎo)讀]一、車輛調(diào)度系統(tǒng)的整體設(shè)計(jì):整個(gè)系統(tǒng)包括四個(gè)部分(1)通信主站;(2)車載從站;(3)通信鏈路。(4)系統(tǒng)監(jiān)控部分。下面對各個(gè)部分的功能做一個(gè)簡單的介紹。(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)控部分。下面對各個(gè)部分的功能做一個(gè)簡單的介紹。

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

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

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

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

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

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

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

將UC/OS-II這個(gè)操作系統(tǒng)移植到三星公司ARM7TDMI S3C44B0X上要注意OSCtxSW()這個(gè)任務(wù)切換函數(shù),其中任務(wù)切換的核心是利用出棧指令將各個(gè)任務(wù)的工作現(xiàn)場加以恢復(fù)。利用中斷返回指令改變PC的指針達(dá)到任務(wù)切換的目的。它實(shí)際上是從任務(wù)堆棧中恢復(fù)處理器所有的寄存器,并且執(zhí)行中斷返回指令。實(shí)際的移植是用軟件來模擬中斷的發(fā)生。移植中的關(guān)鍵問題是如何構(gòu)造任務(wù)堆棧及任務(wù)切換時(shí)的出棧順序。而任務(wù)區(qū)堆棧初始化主要是模擬任務(wù)被中斷后堆棧中的內(nèi)容。另值得注意的是開關(guān)中斷的函數(shù)OS_ENTERCRITICAL()和OS_EXIT_CRITICAL()這個(gè)函數(shù)。這兩個(gè)函數(shù)實(shí)現(xiàn)了對臨界區(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)行。而對于每個(gè)任務(wù)采用基于狀態(tài)機(jī)的設(shè)計(jì)方法,引起系統(tǒng)中某個(gè)狀態(tài)發(fā)生轉(zhuǎn)移的事件可能是信號量、也可能是其它的事件。下面對狀態(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è)事件而在處理另外的事件之前必須完成對這個(gè)事件的處理并得到結(jié)果。

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

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

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

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

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

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

嵌入式系統(tǒng)的程序設(shè)計(jì)中,應(yīng)該注意的另一個(gè)問題是函數(shù)的可重入問題, 可重入函數(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顯示部份。下面是對圖二的解釋。

其中菜單1是顯示歡迎界面(就是上面提到的狀態(tài));菜單2是發(fā)送短消息;菜單3是記錄發(fā)送短消息內(nèi)容的;菜單4是用來讀取接收到的短消息。具體的狀態(tài)轉(zhuǎn)移過程是這樣的,當(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)向下的鍵盤被按下,系統(tǒng)的狀態(tài)轉(zhuǎn)移到菜單4;讀取短消息結(jié)束時(shí),系統(tǒng)狀態(tài)返回到歡迎界面。實(shí)際的系統(tǒng)還有返回按鍵等,這里只是用這個(gè)圖簡單說明采用狀態(tài)機(jī)的程序設(shè)計(jì)方法。

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

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

六、總結(jié):

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

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

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

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

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

關(guān)鍵字: 單片機(jī) 看門狗 嵌入式系統(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開源項(xiàng)目由Linux基金會維護(hù),是一個(gè)針對資源受限的嵌入式設(shè)備優(yōu)化的小型、可縮放、多體系結(jié)構(gòu)實(shí)時(shí)操作系統(tǒng)(RTOS)。近年來,Zephyr RTOS在嵌入式開發(fā)中的采用度逐步增加,支持的開發(fā)板和傳感器不斷增加...

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

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

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

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

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

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

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

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

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

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

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