




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、嵌入式系統(tǒng)在中央空調集中控制系統(tǒng)中的應用研究 嵌入式系統(tǒng)在中央空調集中控制系統(tǒng)中的應用研究1設計要求 1.1 引言 隨著國民經濟的快速增長,我國人民生活水平的不斷提高??照{機組能夠改善和提高人們的生活和健康水平,所以國內空調企業(yè)的規(guī)模也在不斷的擴張,空調生產開始從單一品種、大規(guī)模生產、壓庫存的模式逐漸轉向多品種,按訂單生產、零庫存的方向發(fā)展。但中央空調機組因其設備功率大,零部件多,運轉工序復雜,所以對其使用時的可控性能、節(jié)能性能、人機交互性能的要求也隨之提高。目前的中央空調控制技術還以分散控制為主,每個控制器只能監(jiān)控其所控制的中央空調機組的狀態(tài),而對同一樓宇之中的其它控制器所控制的中央空調的狀
2、態(tài)則無法知道,更無法在總體上獲知所有中央空調機組的工作狀態(tài)。其采用的通信方式主要為用485串口將中央空調控制器與工控機相聯,再用RS232串口將工控機和上位機相連。因為受RS232串口的限制,使得通信距離較短,所能集中控制的中央空調的數目也就受到了較大限制,使得集中控制的效果和意義均不明顯。此種缺點造成由于資金缺口和工程進度等等問題,許多已建成的商用建筑和辦公大樓的空調系統(tǒng)往往都沒有設計或安裝自動控制系統(tǒng),隨著建筑物的投入使用,會發(fā)現空調區(qū)域的溫、濕度波動很大,往往會超過答應的變化范圍。舊有的空調系統(tǒng)在運行中往往遭到一些人為因素的影響,致使風系統(tǒng)平衡遭到破壞,加裝自控系統(tǒng)前必須先對舊有空調系統(tǒng)
3、的風道系統(tǒng)重新進行平衡調整,不然自控系統(tǒng)可能達不到預期限效果;另外加裝自動控制系統(tǒng)后對原空調系統(tǒng)的制冷、供熱和水循環(huán)系統(tǒng)都交有一定的影響;同時在改造進程中也會碰到一些非凡的問題。1.2 中央空調系統(tǒng)基本原理及組成 空調系統(tǒng)的組成有:被調對象、空調處理機組、空氣輸送設備以及分配設備。針對空氣處理設備在集中程度上的差異,空調系統(tǒng)通常分為集中式空調系統(tǒng)、半集中式空調系統(tǒng)以及分散式空調系統(tǒng);根據熱濕負荷所使用的介質的區(qū)別,空調系統(tǒng)又可以劃分為空氣系統(tǒng)、水系統(tǒng)、空氣水混合系統(tǒng)、冷劑系統(tǒng);又可根據空氣來源來分類,有直流式系統(tǒng)、封閉式系統(tǒng)和混合式系統(tǒng)三類系統(tǒng)。 空氣調節(jié)的定義通常為:將溫度、濕度、流速等參數
4、經過處理后的空氣,通過空氣輸入管道送入室內,以使整個室內空氣溫濕度、流速、清潔度及壓強等控制在設定要求內。 本文主要討論中央空調控制系統(tǒng),即為集中式控制系統(tǒng)。中央空調系統(tǒng)由空氣加熱、冷卻,加濕、去濕、空氣凈化、風量調節(jié)設備以及空調用冷、熱源等設備組成。這些設備的容量是設計容量,但在日常運行中的實際負荷在大部分時間里都是部分負荷,不會達到設計容量。所以為了舒適和節(jié)能必須對上述設備進行實時控制,使其實際輸出量與實際負荷相適應。當前,對其容量控制實現不同程度的自動化,其內容也越趨豐富。被控制參數主要有空氣的濕度、溫度、壓力和空氣清新度、氣流方向等,在冷熱源方面主要是冷熱水溫度,蒸汽壓力。有時也需測量
5、控制回水管的壓力差,測量供回水溫度以及回水量。同時,也要對這些參數進行指示、記錄、打印,并監(jiān)測各機電設備運行狀態(tài)及事故報警。其主要具備以下自控系統(tǒng):風機盤管控制系統(tǒng)、空調機組控制系統(tǒng)、冷凍站控制系統(tǒng)、熱交換站控制系統(tǒng)、排水控制系統(tǒng)等。2 設計作用與目的 采用基于嵌入式中央空調集中控制系統(tǒng),實現多臺中央空調系統(tǒng)的數據采集、集中管理和集中控制。3 所用設備及軟件 RS485集線器,計算機一臺,中央空調控制器,µC/OSII操作系統(tǒng),UDPtest軟件4系統(tǒng)總體設計 圖1系統(tǒng)總體框圖4.1中央空調單機組控制器與RS485集線器的通信方式及數據處理過程 中央空調單機組控制器(本文研究所采用的
6、中央空調單機組控制器為無錫華威控制技術科技有限公司所生產的中央空調控制器)首先對檢測到的中央空調機組的運行狀態(tài)的信息(包括環(huán)境溫度,設定溫度,運行模式等)進行編碼,以約定的格式和波特率(9600bps)通過RS485總線發(fā)往RS485集線器。每個RS485集線器采用多串口單片機設計,分為8口和16口兩種型號。8口的RS485集線器可以同時連接8個中央空調單機組控制器,16口的RS485集線器可以同時連接16個中央空調單機組控制器。中央空調單機組控制器將不斷的向RS485集線器發(fā)送其狀態(tài)信息數據,RS485集線器接收到這些數據后會檢查這些數據的合法性,如果該數據合法則將該數據存儲到接收緩沖區(qū)并等
7、待發(fā)送。4.2 RS485集線器與中央空調網絡集中控制器的通信方式及數據處理方式 RS485集線器通過RS485總線與中央空調網絡集中控制器相連。RS485集線器將中央空調單機組控制器發(fā)送來的數據信息通過RS485總線發(fā)送給中央空調網絡集中控制器。中央空調網絡集中控制器采用以ARM7TMI為內核的S3C44BOX設計。因為S3C44BOX片內沒有集成網卡芯片,因此為了使中央空調網絡集中控制器能夠通過以太網和控制計算機進行遠距離通信,中央空調網絡集中控制器采用了RTL8019AS為網卡芯片。中央空調網絡集中控制器在接收到RS485集線器發(fā)送過來的數據后首先對接收到的數據進行解碼,確定這是哪臺中央
8、空調單機組所傳送過來的數據,并讀出其中所包含的中央空調單機組的運行狀態(tài)、設定溫度,運行模式、故障信息等數據信息。中央空調網絡集中控制器會將與之相連的每臺中央空調機組的狀態(tài)信息存儲在其內存空間中(中央空調網絡集中控制器針對中央空調機組狀態(tài)信息的特點建立了特定的數據結構)。在中央空調網絡集中控制器的顯示屏上會顯示出所有與之相連的中央空調單機組,用戶可以通過鍵盤操作查詢每臺中央空調機組的運行狀態(tài),當用戶選定中央空調機組后,該中央空調的機組的“聯機狀態(tài)”、“設定溫度”、“室內溫度”、“運行模式”、“運行狀態(tài)”等信息就會在顯示屏上顯示出來。4.3中央空調網絡集中控制器與控制計算機的通信方式 因為一棟樓宇
9、之中可能會有上千臺中央空調機組,受通信端口數量和處理能力的限制一臺中央空調網絡集中控制器最多只能連接128臺中央空調機組并處理這些機組的數據信息。為了能夠控制樓宇內所有中央空調,中央空調網絡集中控制器需要將由RS485集線器所傳來的數據通過以太網轉發(fā)給控制計算機。之所以選擇通過以太網而不是通過RS485網絡,主要是因為兩點:1.RS485網絡的傳輸距離和傳輸速度有限制,只有在很短的距離下才能達到理論最高值lOMbps,當通信距離增大時通信速度和通信質量都會受到較大影響(在100kbps速率以下才有可能達到理論最大傳輸距離1219米);而控制計算機離中央空調網絡集中控制器可能會隨著樓宇建筑規(guī)模的
10、不同而有較大差異,最遠的中央空調網絡集中控制器可能離控制計算機的距離長達數百米甚至上千米,此時具有100Mbps帶寬現代快速以太網無疑在通信速度和通信質量上都具有無可比擬的優(yōu)勢;2.對于一棟建筑規(guī)模較大的樓宇可能需要上千臺甚至數千臺中央空調機組,如果要控制如此多臺中央空調機組至少需要數十臺中央空調網絡集中控制器。此時采用以太網則可以通過設置每臺中央空調網絡集中控制器的物理地址和IP地址(RTL8019AS網卡芯片的物理地址需要通過設置其相關寄存器而配置,IP地址的配置可通過移植的嵌入式TCP/IP協(xié)議棧的相關API函數來配置)確定其在網絡中的位置,這樣整個中央空調網絡集中控制系統(tǒng)的組建和控制就
11、變的相對簡單。5 RS485集線器的設計 RS485集線器是中央空調集中控制系統(tǒng)中的關鍵部件,在整個系統(tǒng)中發(fā)揮著連接中央空調單機組控制器和中央空調網絡集中控制器的關鍵作用。5.1 RS485集線器系統(tǒng)功能分析 RS485集線器在中央空調集中控制系統(tǒng)中負責連接中央空調網絡集中控制器和中央空調單機組控制器。 中央空調單機組控制器與RS485集線器通過RS485接口電路相連。中央空調單機組控制器會定時將中央空調機組的運行信息發(fā)往RS485集線器。RS485集線器當監(jiān)聽到串口接收中斷后會調用串口接收中斷處理程序來接收數據,如果接收到的數據合法就將該數據存往數據存儲緩沖區(qū)。 與數據接收是靠中斷觸發(fā)的處理
12、方式不同,RS485集線器會不停的偵聽數據存儲緩沖區(qū),如果數據存儲緩沖區(qū)中的數據不為空則會執(zhí)行數據發(fā)送程序將數據緩沖區(qū)中的數據通過RS485串口發(fā)往中央空調網絡集中控制器。5.2 RS485集線器硬件介紹 RS485集線器的硬件模塊示意圖圖2 RS485集線器硬件圖5.2.1 µPSD3251簡介 µPSD3251單片機39的結構為:包含8032微控制器的Flash PSD結構。 它片內集成了兩塊Flash存儲器、SRAM、通用I/0口、可編程邏輯、管理監(jiān)控功能。并可實現工ZC, ADC, DDC功能。片內集成8032微控制器,帶兩個標準異步通訊口,三個16為定時/計數器和
13、一個外部中斷。 µPSD3251單片機具有以下特點: (1)高速8032內核:40MHz5V, 24MHz3.3V; (2)雙Flash存儲結構,64KB主Flash, 16Kb二級Flash; (3) 2K字節(jié)的SRAM,支持后備電池掉電數據保護; (4)可編程譯碼PLD,靈活映射所有存儲器地址; (5)、兩路DART接口; (6)獨立的數據顯示通路(DDC), ADC; (7)多達46個I/0口線; (8)3000門PLD,16個宏單元; (9)可通過JTAG在線編程(ISP); (10)現場升級用戶程序代碼,不間斷用戶系統(tǒng)運行(IAP); (11)程序數據保密(Security
14、); (12)電源監(jiān)控功能(PMU ) ; (13)零功耗技術; (14).封裝:TQFP52 (T)。 在RS485集線器中,µPSD3251單片機的串口1通過CPLD16路切換矩陣與16個RS485接口相連,從而實現了將1路串口擴展為16路串口與中央空調單機組控制器通信。4路切換信號經過CPLD4/16譯碼轉換后可以確定16路RS485接口的地址,其中4/16路地址轉換表如下: 表1 4/16路地址轉換表µPSD3251單片機的串口2的作用為通過RS485總線與中央空調網絡集中控制器相連,從而實現與中央空調網絡集中控制器的數據通信。5. 2. 2 CPLD介紹 CPLD
15、 (Complex Programmable Logic Device)是Complex PLD的簡稱,一種較PLD為復雜的邏輯元件。 CPLD是一種用戶根據各自需要而自行構造邏輯功能的數字集成電路。其基本設計方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應的目標文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標芯片中,實現設計的數字系統(tǒng)。 CPLD是一種用戶根據各自需要而自行構造邏輯功能的數字集成電路。其基本設計方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應的目標文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標芯片中,實現設計的數字系統(tǒng)。 CPLD
16、16路切換矩陣4八s路譯碼功能的實現因為不屬于本文的研究內容,因此在這里不與介紹。5.3 RS485集線器軟件設計 5. 3. 1 RS485集線器軟件的主要功能 RS485集線器的軟件的設計主要目標為實現RS485集線器如下四個主要功能: (1)串口1的數據接收 串口1將采用中斷方式接收數據。當中央空調單機組控制器的數據發(fā)送到RS485集線器之后,RS485集線器的串口1會產生串口接收中斷,RS485集線器的8032微控制器將調用串口接收中斷處理程序來接收和處理接收到的數據。 (2)串口2的數據接收 串口2的數據接收方式與串口I相似。串口2的接收程序主要負責接收和處理中央空調網絡集中控制器發(fā)
17、送過來的數據。 (3)串口1的數據發(fā)送 串口1發(fā)送采用實時查詢方式,如果其發(fā)送緩沖區(qū)內有有效數據(串口1的發(fā)送緩沖區(qū)也就是串口2的接收緩沖區(qū))則串口1會將數據緩沖區(qū)內數據發(fā)往中央空調單機組控制器。 (4)串口2的數據發(fā)送 串口2發(fā)送數據的方式與串口1相似。它將其數據發(fā)送緩沖區(qū)內的數據發(fā)往中央空調網絡集中控制器。5. 3. 2 RS485集線器軟件的實現 因為µPSD3251單片機的8032內核屬于51系列,所以RS485集線器軟件采用C51來開發(fā)。 主程序是整個程序的入口地址,它首先進行全局變量和串口初始化工作。然后便進入一個永久循環(huán),以不斷偵測兩個串口是否可以執(zhí)行數據發(fā)送操作。 程
18、序中有函數bool CheckUartOne()和函數bool CheckUartTwo(),它們的功能基本一致,分別為判斷串口1和串口2將要發(fā)送數據的合法性。其中串口1將要發(fā)送的數據存儲在串口2的臨時接收數據存儲區(qū)中(因為串口2接收的程序來自中央空調網絡集中控制器,RS485集線器接收到該數據后需將數據通過串口1發(fā)往中央空調單機組控制器,以實現對每臺中央空調機組的控制),串口2將要發(fā)送的數據存儲在串口1的臨時接收數據存儲區(qū)中。兩個函數將通過校驗位來判斷存儲在對方臨時接收數據存儲區(qū)中的數據的合法性,如果數據合法則將數據轉存到數據存儲區(qū)中以等待發(fā)送,并清空臨時接收數據存儲區(qū)。 圖4為主程序流程圖
19、。它說明了主函數的整個處理流程。 中斷處理由中斷處理程序seriall()和中斷處理程序serial2()來完成。 seriall()為串口1的中斷服務程序。如果串口1中斷發(fā)生則會調用該程序來處理中斷操作。serial2()為串口2的中斷服務程序。如果串口2中斷發(fā)生則會調用該程序來處理中斷操作。圖3 串口中斷處理程序的流程圖圖4 主程序流程圖 函數bool CheckUartOne()和bool CheckUartTwo()的功能為通過計算來判斷串口1和串口2將要發(fā)送的數據的合法性,因為函數較為簡單在此就不做詳細講解。6中央空調網絡集中控制器的設計 中央空調網絡集中控制器是整個中央空調集中控制
20、系統(tǒng)中最核心的部件,它起著連接控制計算機和RS485集線器的重要作用。由RS485集線器發(fā)送過來的數據經由中央空調網絡集中控制器發(fā)往控制計算機,控制計算機上所運行的監(jiān)控軟件會根據這些數據所提供的信息顯示出整個中央空調集中控制系統(tǒng)中的所有中央空調機組的運行狀況。當中央空調集中控制系統(tǒng)的使用人員希望改變系統(tǒng)中的中央空調機組的運行狀態(tài)時,他可通過監(jiān)控軟件將命令信息發(fā)往中央空調網絡集中控制器。中央空調網絡集中控制器會根據命令信息中的目的地址而決定將命令信息轉發(fā)給哪臺中央空調單機組控制器(通過RS485集線器)。 同時中央空調網絡集中控制器上還具有友好的人機界面(用于顯示其所連接的中央空調機組信息的顯示
21、屏,和用于操作人員控制的鍵盤),操作人員可通過它查詢與其連接的中央空調機組的運行信息。6.1中央空調網絡集中控制器的硬件設計 中央空調網絡集中控制器為了完成數據集中處理、數據轉發(fā)、系統(tǒng)信息顯示等功能需要具備五個功能相對獨立功能模塊:圖5中央空調網絡集中控制器結構框圖 6.1.1顯示模塊 中央空調網絡集中控制器需要具有友好的人機界面,用以對操作人員對中央空調狀態(tài)進行監(jiān)控提供支持。這就需要中央空調網絡集中控制器具有LCD顯示屏幕,并且在系統(tǒng)軟件上需要具有相應的GUI(圖形用戶界面)模塊,這樣才能建立一個友好的人機界面。 圖6顯示模塊電路 6.1.2電源電路 電源系統(tǒng)是控制系統(tǒng)工作的基礎
22、,電源系統(tǒng)的工作穩(wěn)定與否直接關系到整個系統(tǒng)的性能。在設計電源系統(tǒng)的過程中,必須要考慮到以下幾個要點:電源系統(tǒng)的輸出電壓電流和功率是多大;電源系統(tǒng)采用的輸入電壓與電流大小;電源系統(tǒng)的電磁兼容性與電磁干擾因素;電源輸出紋波大小。另外還必須要考慮到系統(tǒng)的成本。 本控制系統(tǒng)中,微控制器LPC2210要使用到3.3V與1.8V兩組電源,3.3V為工O口供電電源,1.8V是內核與片內外設電源。從LPC2210技術手冊己說明微控制器對1.8V電源消耗的極限電流為70mA,也就是說1.8V電源只要能提供70mA的最大電流便可以滿足系統(tǒng)的要求,但為保證系統(tǒng)以后能夠可靠升級,要求1.8V電源能夠提供不小于300m
23、A的電流。系統(tǒng)對3.3V電源的消耗電流具有不確定性,主要與外部條件有關,通常要求能夠提供600mA電流,基本就可以滿足極限情況。鑒于系統(tǒng)對這兩組電壓的要求比較高,且功耗不是很大,故采用低壓差模擬電源LDO o LDO(低壓差電源芯片)芯片采用SPX 1117 ,該款LDO芯片具有較大輸出電流(可達800mA,較高精度輸出電壓且比較穩(wěn)定,輸出精度在1個百分點以內,并且設有熱保護與限流功能。系統(tǒng)電源電路如圖3-3所示。模塊輸入電壓之所以選擇SV,一方面是考慮到過高的電壓會使芯片的發(fā)熱量上升,影響芯片性能,同時波動的電壓對輸出電壓的波動也有影響,太高的壓差也失去了選擇低壓差模擬電源的意義;另一方面為
24、其它SV模塊提供電源。圖7 電源電路6.1.3復位電路 LPC2210通常工作在40MHz的時鐘,其高速、低功耗及低工作電壓的牛性使其噪聲容非常低,系統(tǒng)必須對電源紋波、時鐘穩(wěn)定性、電源監(jiān)控可靠性尊方面提出較高的要求。復位芯片的門檻值一般選擇為控制器工O供電電壓,本GI統(tǒng)的復位電路使用了SP708S,提供2.93 V的復位門檻值。 SP708屬于微處理器uP監(jiān)控器件,集成有眾多組件,可監(jiān)測uP及數字系統(tǒng)中白供電及電池的工作情況,可有效地增強系統(tǒng)的可靠性及工作效率。主要包含一個看I狗定時器,一個uP復位模塊,一個供電失敗比較器,一個手動復位輸入模塊,適G于3.0V或3.3V環(huán)境4。主要特性如下 &
25、#183;復位脈沖寬度:200ms; ·獨立的看門狗定時器且WD工可以保持浮空,以禁止看門狗功能; ·最大電源電流40uA ; ·支持開關式手動復位輸入; · Vcc下降至1V時,產生復位信號,支持高低電平兩種方式; ·內嵌Vcc干擾抑制電路;內嵌電壓監(jiān)測器,可監(jiān)測供電失敗或電池不足警告: 信號nRST連接到LPC2210芯片的復位腳RESET。當復位鍵RST按下時,SP708SCN的立即輸出復位信號,使LPC2210芯片復位。圖8 復位電路6.1.4系統(tǒng)時鐘及JTAG接口電路 系統(tǒng)使用外部晶振,晶振頻率為11.0592MHz??刂葡到y(tǒng)的JTA
26、G接口為ARM公司標準的仿真調試接口,共有20個引腳,接口連接如圖3-5所示。圖中,JTAG信號接口nTRST與微控制器LPC2210的TRST引腳連接,用來復位控制器內部JTAG接口電路;為了使復位后的系統(tǒng)JTAG接口處于使能態(tài),根據LPC2210技術手冊的要求,需要在RTCK引腳接一個4.7K下拉電阻。圖9 JTAG接口電路6.1.5鍵盤電路 為了方便用戶操作,本系統(tǒng)系統(tǒng)設置了12個按鍵,歸納如下: ·風向設定:有手動設定風向與自動設定2個設定按鍵; ·運轉模式設定:1個按鍵輸入。每按一次,便在制冷、通風、制熱、除濕四種模式中循環(huán)切換。 ·風速設定:1個按鍵輸
27、入。每按一次,便在高、中、低、自動四種風速模式下循環(huán)切換。 ·溫度設定:2個按鍵輸入。一個用于溫度增1設定,一個用于減1設定。 ·定時設定:3個按鍵輸入。一個定時設定按鍵開關,一個增1按鍵,一個時間減1輸入按鍵。 ·開機按鍵、測試運行按鍵與檢查按鍵各1個,共3個。 系統(tǒng)使用I2C接口的鍵盤與LED驅動芯片ZLG7290進行鍵盤掃描,該芯片提供了I2C串行接口和鍵盤中斷信號,方便與處理器連接;可驅動8位共陰極數碼管或64只獨立的LED和64個鍵盤,其管腳說明如下: ·Dig7-DigO: LED顯示位驅動及鍵盤掃描線; ·SegHw-SegA:
28、LED顯示段驅動及鍵盤掃描線; ·SDA/SCL: I2C總線接口數據/地址線及時鐘線; ·/INT:中斷輸出端,低電平有效; ·/RES:復位輸入端,低電平有效; ·OSC1:連接晶體以產生內部時鐘; ZLG7290采用3. 3V電源,復位引腳與系統(tǒng)復位信號nRST相連,當系統(tǒng)上電復位或手動復位時會同時復位ZLG7290 o ZLG7290的鍵盤中斷輸出信號與LPC2210的中斷引腳P0. 30相連,當有按鍵按下時,ZLG7290將會輸出中斷信號通知LPC2210 o ZLG7290使用I2C總線。鍵盤接口電路如圖所示。圖10 鍵盤電路 6.2中央空調
29、網絡集中控制器的軟件設計 中央空調網絡集中控制器的軟件由三部分組成:實時操作系統(tǒng),硬件驅動程序和運行在操作系統(tǒng)之上的應用程序。實時操作系統(tǒng)采用源碼公開的µ C/OS- II操作系統(tǒng)硬件驅動程序主要為LCD控制器的驅動程序和RTL8019AS網卡芯片的驅動程序。6.2.1整體設計 中央空調網絡集中控制器的應用程序中共劃分了7個任務,其中任務Main_ Task的任務優(yōu)先級為4,它的主要功能為初試化系統(tǒng)和創(chuàng)建其他的任務。任務UDP一ain_ Task的任務優(yōu)先級為5,它的主要功能為初始化LWIP協(xié)議,并創(chuàng)建另外兩個線程UDP_ Sen之Thread(任務優(yōu)先級8)和UDP_ Rev一hr
30、ead(任務優(yōu)先級9)來發(fā)送和接收UDP數據報。任務LCD Task任務優(yōu)先級10)的主要功能為創(chuàng)建中央空調網絡集中控制器的人機交互界面,并根據用戶的輸入信息在屏幕上輸出相應畫面。任務UART_ Task(任務優(yōu)先級6)的主要功能是收發(fā)9路RS485串口數據。任務Key_Task(任務優(yōu)先級7)的主要功能是監(jiān)控鍵盤的輸入,并通過信號量機制通知其他的任務作出相應響應。程序開發(fā)所用的語言為C語言,但與標準C有所不同是在嵌入式系統(tǒng)中的C編程,程序的主要框架為: 圖11中央空調網絡集中控制器程序框架 程序的代碼結構為void Main (void)rBWSCON二Ox1110d1d2;/設置各BANK
31、數據總線寬度RL16C554Init();/初始化芯片16C554OSTaskCreate(Mainjask, (void*)0, (OS一TK*)&Main一ask一tackTASK-STACK_ SIZE-1, Mainjask_ PRIG);刀創(chuàng)建系統(tǒng)主任務OSStart 0;/啟動µ C/OS- IIvoid Mainjask( void *Id) ARMTargetStart 0 ;/啟動中央空調網絡控制器 ARMStartTimer 0 ;/啟動計時器 OSStatInit();OSTaskCreate(UDP Main一ask, (voi d*) 0, (OS_
32、 STK*) &Task UDP TASK一TACK SIZE-1, Task_ UDP_ PRIG);/創(chuàng)建任務UDP一ainjaskOSTaskCreate(LCD_Task,(void*)0,(OS_ STK*)&Task-LCDTASK_ STACK SIZE-1, Task_ LCD少RIO);/創(chuàng)建任務LCD一askOSTaskCreate(UART一ask, (void*)0,(OS STK*)&Taskwe DARTTASKes STACK_ SIZE一1, Task DART少RIO);/創(chuàng)建任務DART一askOSTaskCreate(KEY_Tas
33、k,(void*)0, (OS一TK *)&Task KEYTASK STACK SIZE一1, Task_ KEY_ PRIO);/創(chuàng)建任務KEY_ Task6.2.2 LCD控制器驅動程序 在點亮LCD之前,首先要對LCD控制器相關的寄存器進行初始化,從而使LCD控制器的配置與外接LCD模塊特性能夠匹配;同時在內存中劃出一塊顯示緩沖區(qū),與顯示像素點一一對應。Unsigned int Lcd一 Dispwe Buf240320/8;/*16級灰度屏顯示緩沖區(qū)*/void Lcd Init()/*LCD初始化程序*/*配置LCD控制器的相關寄存器*/ 在初始化完LCD控制器后,LCD的
34、驅動程序還需要提供在LCD屏幕上畫點,畫線等功能函數,在系統(tǒng)中應用程序將調用這些函數來創(chuàng)建中央空調網絡集中控制器的用戶界面Zz0Void Draw Point (unsigned int x, unsigned int y, unsigned int gray)/*畫點函數*/void Draw_Line(unsigned int unsigned int unsigned intd一 x,gray)unsigned int s_y,unsigned int d_y, /*畫線函數*/ 其他的與GUI有關的功能函數在此就不一一介紹。6.2.3µC/OS- II操作系統(tǒng)簡介 µ
35、; C/OS- II 1291是一個免費的,源代碼公開的實時嵌入式內核,提供了實時系統(tǒng)所需的任務調度、任務管理、時間管理、內存竹理和任務間的通信與同步等基本功育旨。 µC/OS- II最多可以管理64個任務(用戶可擁有的任務為56個),為簡化系統(tǒng)的設計,它規(guī)定每個任務的優(yōu)先級必須不同。也就是說,即使兩個任務有相同的重要性其優(yōu)先級也必須不同。這也就意味著高優(yōu)先級的任務在處理完后必須進入等待或掛起狀態(tài),否則低優(yōu)先級的任務永遠也無法執(zhí)行。系統(tǒng)通過兩種方法進行任務調度:一種是時鐘節(jié)拍或其他硬件中斷到來后,系統(tǒng)會調用函數OS工ntCtxSw()實現任務切換功能;二是任務主動進入掛起或等待狀態(tài)。
36、 µ C/OS- II要求用戶提供一個稱為時鐘節(jié)拍的定時中斷,該中斷每秒發(fā)生10至100次,時鐘節(jié)拍的實際頻率由用戶控制,任務申請延時或超時控制標準以及任務調度的時間基準就是該時鐘節(jié)拍。 為了實現任務間的同步與通信,µC/OS- II提供了四種同步對象,分別是信號量、郵箱和消息隊列以及事件。通過郵箱和消息隊列還可以實現任務間的通信。 µC/OS-1I把連續(xù)的大塊內存按分區(qū)來管理,這樣便消除了多次分配與釋放內存所引起的內存碎片。每個分區(qū)中都包含了整數個數大小相同的內存塊,但不同分區(qū)之間內存塊的大小可以不同。用戶需動態(tài)分配內存時可選擇一個適當的分區(qū),按塊來進行分配。釋
37、放內存時,將該塊放回它以前所屬的分區(qū)。7 仿真調試分析 7.1UDP通信實驗 實驗ADS1. 2項目有4個目錄,arm目錄為uC/OS-II移植文件目錄source目錄為uC/OS-II內核源碼,TCP/IP目錄為TCP/IP驅動軟件包目錄。 實驗結果:現場控制單元的IP地址己預設為192. 168. 1. 101,在上位機端檢驗能否ping通控制單元,從截圖可以看到PING成功的信息。 同時,利用UDPtest軟件,將控制單元IP地址輸入遠程主機地址欄,遠程端口號輸入1025,本地端口號輸入1026,進行數據發(fā)送測試。在輸入消息欄中輸入“ARM Controller",結果發(fā)送數據
38、被完整地返回到接收數據欄中,表明上位機與現場控制單元可以進行正常的UDP通信。7.2串口通信 實驗ADS1. 2項目有4個目錄,arm目錄為uC/OS-II移植文件目錄,source目錄為uC/OS-II內核源碼,Arm_ Pc下存放pc. c文件,是移植于uCOS-II的PC服務代碼。UartO為項目工程目錄。項目工程窗口如圖5-8所示。相關串口驅動在文件uart0. c中,實驗中要使用數據隊列,故將數據隊列文件queue. c加入到工程中。 實驗結果:使用串口線將上位計算機的COM1與控制器的串口相連,上位機上運行EasyARM軟件(設置串口為COM1,波特率為115200),打開發(fā)送數據窗口。同時全速運行串口測試程序。 7.3鍵盤接口實驗 實驗ADS1. 2項目有4個目錄,arm目錄為uC/OS-II移植文件目錄,source目錄為uC/OS-II內核源碼,Arm_ Pc下存放pc. c文件,是移植于uCOS-II的PC服務代碼。Z1g7290key為工程目錄。項目工程窗口如圖5-10所示。相關串口驅動在文件uart0.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 擺地攤教學合同協(xié)議書
- 競業(yè)合同協(xié)議書模板
- 家政代理合同協(xié)議書模板
- 運營和老板合作合同協(xié)議書
- 2025年中國納米水滑石項目創(chuàng)業(yè)計劃書
- 中國3,3-二甲基-1-丁酸項目創(chuàng)業(yè)計劃書
- 中國境外油田服務項目創(chuàng)業(yè)計劃書
- 直播游戲運營方案
- 常熟POCT試劑項目商業(yè)計劃書
- 病人陪護合同協(xié)議書范本
- 煙花爆竹勞務合同范本
- 濟南出入境檢驗檢疫局國際旅行衛(wèi)生保健中心
- (全冊完整16份)北師大版五年級下冊100道口算題大全
- 維修電工求職簡歷
- 人教版歷史八年級上冊知識點
- 麻醉藥品和精神藥品培訓試題
- GB/T 799-2020地腳螺栓
- 非小細胞肺癌寡轉移灶中立體定向放療的運用,放射醫(yī)學論文
- 遠足拉練動員大會課件
- 出租房屋安全檢查記錄
- 夏季養(yǎng)胃知識課件
評論
0/150
提交評論