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

正文內(nèi)容

嵌入式系統(tǒng)在多點溫度控制中的應(yīng)用(參考版)

2025-07-17 16:54本頁面
  

【正文】 0Xff; //任務(wù)地址低8位 *stk++ = (INT16U)task 8; //任務(wù)地址高8位 *stk++ = 0x00; //PSW *stk++ = 0x0A; //ACC *stk++ = 0x0B; //B *stk++ = 0x00; //DPL *stk++ = 0x00; //DPH *stk++ = 0x00; //R0 *stk++ = 0x0。 /*opt沒被用到,保留此語句防止報警產(chǎn)生 */ stk = (OS_STK *)ptos; //用戶堆棧最低有效地址 *stk++ = 15。如果需要使用可以進行編程。1). 中與處理器和編譯器相關(guān)的代碼 /* 與編譯器相關(guān)數(shù)據(jù)類型 */typedef unsigned char BOOLEAN; typedef unsigned char INT8U; //無符號8位數(shù)typedef signed char INT8S; //有符號8位數(shù)typedef unsigned int INT16U; //無符號16位數(shù)typedef signed int INT16S; //有符號16位數(shù)typedef unsigned long INT32U; //無符號32位數(shù)typedef signed long INT32S; //有符號32位數(shù)typedef float FP32; //單精度浮點數(shù)typedef double FP64; //雙精度浮點數(shù)typedef unsigned char OS_STK; //棧單元寬度為8比特/ * 處理器相關(guān)代碼 (大模式) */define OS_ENTER_CRITICAL() EA=0 //關(guān)中斷define OS_EXIT_CRITICAL() EA=1 //開中斷define OS_STK_GROWTH 0 //堆棧從下往上增長 1=向下,//0=向上define OS_TASK_SW() OSCtxSw() /*因為微處理器沒有軟中斷指令,所以用程序調(diào)用代替*/2).在此文件中主要是完成任務(wù)初始化函數(shù)OSTaskStkInit ( )的編寫,每個任務(wù)在創(chuàng)建時,要初始化自己的任務(wù)堆棧,任務(wù)堆棧的結(jié)構(gòu)類似系統(tǒng)發(fā)生一次中斷后的堆棧結(jié)構(gòu),在進行任務(wù)切換時,它要用來存儲與本任務(wù)相關(guān)的所有信息。針對本論文論文中選用的SM5964微處理器和開發(fā)工具Keil C51 ,進行移植時,重點考慮函數(shù)的重入和任務(wù)棧的結(jié)構(gòu)及大小的確定。 處理器支持能夠容納一定數(shù)量數(shù)據(jù)(可能是幾千字節(jié))的硬件堆棧;178。 用C語言就可以打開和關(guān)閉中斷;178。要使其正常運行, 處理器首先需滿足以下要求:178。μC/OSII沒有提供BSP,需要用戶獨立完成此工作。每個實時嵌入式操作系統(tǒng)都支持很多種處理器,為了使其在具體的硬件平臺上工作,必須根據(jù)具體的硬件平臺完成移植工作。當溫度超限或者系統(tǒng)出現(xiàn)致命錯誤時,系統(tǒng)會發(fā)出報警指示且實現(xiàn)在LCD上顯示。電路圖如圖46所示: 圖46 顯示電路原理圖5). 輸出控制及報警指示電路輸出控制電路采用12V直流繼電器對外電路進行控制,通過控制繼電器的吸合時間來實現(xiàn)對溫度的控制,繼電器是與強電控制電路(大電流、高電壓)聯(lián)系在一起,會對應(yīng)用系統(tǒng)產(chǎn)生嚴重干擾,使系統(tǒng)不能正常工作。,三者產(chǎn)生控制LCD數(shù)據(jù)與狀態(tài)的讀寫等信號。設(shè)計中我采用了間接控制方式,這種方式的特點是電路簡單,控制時序有軟件實現(xiàn),可以實現(xiàn)高速計算機與液晶顯示模塊的接口。直接訪問方式就是將液晶顯示模塊的接口作為存儲器或者I/O設(shè)備直接掛在計算機總線上,計算機以訪問存儲器或者I/O設(shè)備的方式操作液晶顯示模塊的工作。4). LCD顯示電路對于LCD MGLS12864,內(nèi)置HD61202圖形液晶顯示模塊,廠家為其設(shè)置了7條指令來完成對它的控制,有兩條指令用于顯示狀態(tài)的設(shè)置,其余指令用于數(shù)據(jù)讀/寫操作,在此不對其進行詳細的說明。從而完成數(shù)據(jù)的雙向傳輸。按RS232通信協(xié)議規(guī)定,PC機串行口的第二引腳為數(shù)據(jù)輸入端,這樣,發(fā)出的數(shù)據(jù)就可被PC機接收到。電路圖如圖45所示: 圖45 通信電路原理圖SM5964的串行發(fā)送端口TXD和接收端口RXD經(jīng)MAX232芯片進行電平轉(zhuǎn)換后,分別與PC機的數(shù)據(jù)接收端口RXD和數(shù)據(jù)發(fā)送端口TXD相連接。這是因為RS232標準是使用最為廣泛的通信標準,幾乎每一臺PC機上都有兩個符合RS232標準的串行口,所以采用RS232標準有利于通用性。對于模數(shù)轉(zhuǎn)換器LTC2430,設(shè)計中使其工作在外部時鐘驅(qū)動模式下,工作狀態(tài)分為轉(zhuǎn)換(Conversion)、休眠(Sleep)和數(shù)據(jù)輸出(DataOutput)三個狀態(tài)。鉑電阻是一種高性能的貴金屬熱電阻,具有精度高、穩(wěn)定性好、性能可靠等優(yōu)點,鉑電阻的溫度測量范圍在200 ℃到 +850 ℃之間,在小于200℃時,%,它的電阻值R和溫度t之間的關(guān)系可以近似地表示為:A,B為常數(shù),A為熱敏系數(shù)(ΔR/℃)。、。同時為了防止按一次鍵而產(chǎn)生多次處理的情況(鍵掃描和鍵處理速度較快而此時鍵還沒釋放),在有鍵按下時,作一次鍵處理后還要檢測按下的鍵是否釋放??梢酝ㄟ^硬件雙穩(wěn)態(tài)電路或者軟件延時來實現(xiàn),設(shè)計中采用延時20ms實現(xiàn)的。設(shè)計中使用的是獨立聯(lián)接非編碼式鍵盤。1). 鍵盤輸入電路鍵盤是一組按鍵的組合,它是常用的輸入設(shè)備,可以通過鍵盤輸入數(shù)據(jù)或者命令,實現(xiàn)簡單的人機對話。主要有鍵盤輸入、數(shù)據(jù)采集、輸出控制、LCD顯示、通信及電源模塊等組成。嵌入式操作系統(tǒng)選用了源代碼公開的μC/OSII。為此引出串行通信設(shè)計利用RS232串行通信,實現(xiàn)了與PC機進行通訊功能和遠程加載功能。系統(tǒng)具有對外界兩點溫度進行采集的能力,采集的模擬信號經(jīng)A/D模塊轉(zhuǎn)換成相應(yīng)的數(shù)字量,送入微處理器進行處理。在軟件測試周期中,基于目標的測試是在比較晚的“硬件\軟件集成測試”階段開始的,如果不更早的在模擬環(huán)境中進行白盒測試,而是等到“硬件\軟件集成測試”階段進行全部的白盒測試,將耗費更多的財力和人力。在模擬或宿主環(huán)境中的測試消耗的時間通常比較少,用調(diào)試工具可以更快的完成高度和測試任務(wù)。在兩個環(huán)境中可以發(fā)現(xiàn)不同的軟件缺陷,重要的是對目標環(huán)境和宿主環(huán)境的測試內(nèi)容有所選擇。基于目標的測試消耗較多的經(jīng)費和時間,而基于宿主的測試代價較小,但必竟是在模擬的環(huán)境中進行的。在使用環(huán)境中,通常要求嵌入式軟件的失效過程要平衡,所以,黑盒測試不僅要檢查軟件工作過程,也要檢查軟件的失效過程。為了保證正確的測試,還需要檢驗軟硬件之間的接口。黑盒只能限制在需求的范圍內(nèi)進行。黑盒測試的最大優(yōu)點在于不依賴于代碼,而是從實際使用的角度進行測試,通過黑盒測試可以發(fā)現(xiàn)白盒測試發(fā)現(xiàn)不了的問題。黑盒測試在有些情況下也稱為功能測試。由于嚴格的安全性和可行性的要求,嵌入式軟件測試同非嵌入式軟件測試相比,通常要求要有更高的代碼覆蓋率。白盒測試和代碼覆蓋率密切相關(guān),可以在白盒測試的同時計算出測試的代碼覆蓋率,保證測試的充分性。白盒測試或基于代碼的測試檢查的是程序的內(nèi)部設(shè)計。目前,大量的實時嵌入式軟件是面向?qū)ο缶幊毯突诓考_發(fā)的,它們對時空和宿主機、目標機的交叉開發(fā)方式以及可能的分布運行環(huán)境等的約束限制給運用上述技術(shù)帶來了新的問題和挑戰(zhàn)。測試技術(shù)指的是軟件測試的專門途徑,以及提供的能夠更加有效的運用這些途徑的特定技術(shù)。系統(tǒng)功能描述硬件\軟件劃分(軟硬統(tǒng)一表示)軟件組合接口綜合硬件綜合系統(tǒng)集成圖35嵌入式系統(tǒng)的硬件\軟件設(shè)計方法嵌入式系統(tǒng)軟件的測試必須考慮時間和硬件影響的問題。如果評估結(jié)果不滿足要求,說明劃分方案的選擇是不合理的,需要重新劃分硬件/軟件模塊,以上過程重復直到系統(tǒng)獲得一個滿意的硬件/軟件實現(xiàn)為止。完成對硬件、軟件的功能劃分之后,需對劃分的結(jié)果進行評估。首先,應(yīng)方該用獨立于任何硬件和軟件的功能性規(guī)格方法對系統(tǒng)進行描述,采用的的方法包括有限態(tài)自動機(FSM)、統(tǒng)一化的規(guī)格語言(CSP、VHDL)或其他基于圖形的表示工具,其作用是對硬件/軟件統(tǒng)一表示,便于性能的劃分和綜合,然后,在此基礎(chǔ)上對硬件/軟件進行劃分,即對硬件/軟件的功能模塊進行分配。 為避免上述問題,一種新的開發(fā)方法應(yīng)運而生 軟硬件協(xié)同設(shè)計方法。(7) 返回3,繼續(xù)進行集成測試。(4) 集成測試(5) 若系統(tǒng)正確,則結(jié)束、否則繼續(xù)進行。傳統(tǒng)方法雖然也可以改進硬件軟件性能,但由于這種改進是各自獨立進行的,不一定使系統(tǒng)綜合性能達到最佳。(2) 硬件/軟件劃分可以選擇多種方案,直到滿足要求。需求分析總體設(shè)計嵌入式系統(tǒng)硬件開發(fā)嵌入式系統(tǒng)軟件開發(fā)嵌入式系統(tǒng)集成、測試、驗證圖34傳統(tǒng)嵌入式系統(tǒng)的設(shè)計方法應(yīng)用系統(tǒng)的多樣性和復雜性,使硬件/軟件的功能劃分與分配、系統(tǒng)優(yōu)化、系統(tǒng)綜合、模擬仿真存在許多研究解決的問題,因而使國際上這個領(lǐng)域的研究日益活躍。因為,從理論上來說,每一個應(yīng)用系統(tǒng)的,都存在一個適合于該系統(tǒng)的硬件、軟件功能的最佳結(jié)合,如何從應(yīng)用系統(tǒng)的需求出發(fā),依據(jù)一定的指導原則和分配算法對硬件/軟件功能進行分析及合理的劃分,從而使得系統(tǒng)的整體信能、運行時間、能量損耗。這種設(shè)計方法只能改善硬件/軟件各自的性能,而有限的設(shè)計空間不可能對系統(tǒng)做出較好的性能綜合優(yōu)化。 2430_ReadValue定義:INT16U 2430_ReadValue ( )功能:讀取轉(zhuǎn)換結(jié)果并返回其值。返回值為0時,正在進行轉(zhuǎn)換,否則轉(zhuǎn)換結(jié)束。根據(jù)其轉(zhuǎn)換特性,設(shè)計的函數(shù)接口如下:178。相應(yīng)位指示其是否被按下(1 表示按下,0表示斷開)。178。str: 需要顯示的內(nèi)容⑶ 鍵盤驅(qū)動程序鍵盤的相關(guān)驅(qū)動函數(shù)如下:178。參數(shù)說明:col: 顯示字符串的起始列數(shù)。 LCD_ChangeMode定義:void LCD_ChangeMode( INT8U mode);功能:改變LCD的工作模式參數(shù)說明:mode: 設(shè)定的LCD的顯示模式,0 表示文本模式, 1 表示圖形模式178。功能:在LCD的文本方式下輸出字符串。178。接口函數(shù)如下:178。在此對漢字顯示僅作演示之用。液晶模塊有兩種工作模式:圖形方式和文本方式。178。178。 baud:所設(shè)定的串行口通信波特率178。建立的接口函數(shù)如下:178。下面僅建立用到的外設(shè)驅(qū)動程序標準接口。外設(shè)驅(qū)動程序可以對系統(tǒng)提供訪問外圍設(shè)備的接口,把操作系統(tǒng)(軟件)和外圍設(shè)備(硬件)分離開來。由于μC/OSII僅是一個實時內(nèi)核,不像其它的實時操作系統(tǒng)那樣提供給用戶的只是一些API函數(shù)接口,把它移植到目標硬件平臺只是系統(tǒng)設(shè)計工作的開始,還需要針對實際的應(yīng)用需求對其進行功能擴展,包括底層的硬件驅(qū)動、文件系統(tǒng)、用戶圖形接口(GUI)、網(wǎng)絡(luò)功能等,從而建立一個實用的RTOS。其實際大小可由用戶的應(yīng)用程序來決定。主要相關(guān)函數(shù):建立內(nèi)存分區(qū)(OSMemCreate()),分配內(nèi)存塊(OSMemGet()),釋放內(nèi)存塊(OSMemPut())。用戶的應(yīng)用程序可以從不同的內(nèi)存分區(qū)中取得不同大小的內(nèi)存塊,但是特定的內(nèi)存塊在釋放時必須重新放回它以前所屬于的內(nèi)存分區(qū)。3).內(nèi)存管理采用把連續(xù)的大塊按分區(qū)來管理。用這種方法也可以實現(xiàn)數(shù)據(jù)的共享。當兩個任務(wù)或者一個任務(wù)和一個中斷服務(wù)子程序共享某些數(shù)據(jù)時,可以采用這種方法。系統(tǒng)中每個任務(wù)有掛起、就緒、運行及休眠等狀態(tài),各狀態(tài)之間的轉(zhuǎn)換關(guān)系如圖33所示。任務(wù)掛起函數(shù)為:INT8U OSTaskSuspend (INT8U prio)。格式如下:void Task1(void *ppdata){ for(;;) { /* 用戶代碼*/ /*調(diào)用μC/OSII的某種系統(tǒng)服務(wù)*/ }}任務(wù)的創(chuàng)建函數(shù)如下:INT8U OSTaskCreate(void (*task)(void *pd),void *ppdata, OS_STK *ptos, INT8U prio);其中:task是任務(wù)代碼的指針;ppdata是當任務(wù)開始執(zhí)行時傳遞給任務(wù)的參數(shù)指針;ptos是分配給任務(wù)的堆棧的棧頂指針;prio是分配給任務(wù)的優(yōu)先級。其硬件和軟件體系結(jié)構(gòu)如圖32所示 圖32 1).任務(wù)的管理它包括任務(wù)的創(chuàng)建、刪除、掛起和恢復等。這樣使系統(tǒng)的響應(yīng)時間得到最優(yōu)化,而且是可知的。 穩(wěn)定性與可靠性:μC/OSII自1992年以來已經(jīng)有很多成功的商業(yè)應(yīng)用,其穩(wěn)定性和可靠性都有很好的保證。 中斷管理:中斷可以使正在執(zhí)行的任務(wù)暫時掛起,如果優(yōu)先級更高的任務(wù)被該中斷喚醒,則高優(yōu)先級的任務(wù)在中斷嵌套全部退出后立即執(zhí)行,中斷嵌套層數(shù)可達255層。 系統(tǒng)服務(wù):μC/OSII提供很多系統(tǒng)服務(wù),例如郵箱、消息隊列、信號量、塊大小固定的內(nèi)存的申請和釋放、時間相關(guān)函數(shù)等。使用μC/OSII的棧空間校驗函數(shù),可以確定每個任務(wù)到底需要多少棧空間。178。 可確定性
點擊復制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1