搜索關(guān)鍵詞:熱電偶,熱電阻,雙金屬溫度計(jì),壓力表,壓力變送器,磁翻板液位計(jì)
智能儀器的系統(tǒng)軟件不僅要處理來自鍵盤、通信接口的命令,實(shí)現(xiàn)人機(jī)對話、機(jī)機(jī)對話, 更重要的是它具有實(shí)時(shí)處理能力,即根據(jù)被控過程(對象),實(shí)時(shí)申請中斷,完成各種測量、 控制功能。儀器的功能主要由中斷服務(wù)程序來實(shí)現(xiàn)。
智能儀器系統(tǒng)軟件由主監(jiān)控模塊、測量與控制模塊、數(shù)據(jù)處理模塊、中斷處理模塊、通信 模塊、鍵盤顯示器管理模塊、各種功能模塊(子程序塊,子程序庫)和數(shù)據(jù)表模塊構(gòu)成。
1.監(jiān)控主程序設(shè)計(jì)
監(jiān)控程序是智能儀器軟件中的主線,實(shí)現(xiàn)對儀器的全部管理功能。各功能模塊均由監(jiān)控程 序調(diào)用并構(gòu)成有機(jī)的整體。監(jiān)控程序的主要功能如下。
(1) 管理鍵盤和顯示器,按儀器的鍵入命令轉(zhuǎn)入相應(yīng)的功能服務(wù)程序。
(2) 接收輸入/輸出接口、內(nèi)部電路等發(fā)出的中斷請求信號,按中斷優(yōu)先級的順序轉(zhuǎn)入相 應(yīng)的中斷服務(wù)程序,進(jìn)行實(shí)時(shí)測量、控制或數(shù)據(jù)處理。
(3) 系統(tǒng)的定時(shí)器管理。
(4) 儀器自身的檢測和故障診斷處理。
(5) 儀器初始化、手動/自動切換控制、電源監(jiān)測、掉電保護(hù)等。
監(jiān)控程序是整個(gè)儀器軟件系統(tǒng)的核心部分,其主要任務(wù)是接受命令、解釋命令并執(zhí)行命令。 監(jiān)控程序可分為監(jiān)控主程序和命令處理子程序兩大部分。監(jiān)控主程序負(fù)責(zé)識別按鍵、解釋命令 并獲得命令處理子程序的入口地址;命令處理子程序的任務(wù)則是具體執(zhí)行命令,完成命令所規(guī) 定的各項(xiàng)處理任務(wù)。命令處理子程序因智能儀器的不同而異,而監(jiān)控主程序的結(jié)構(gòu)卻具有共性。
智能儀器上電復(fù)位后,儀器首*入監(jiān)控主程序。主監(jiān)控程序一般都被放在0號單元開始 的內(nèi)存中,它的任務(wù)是識別命令、解釋命令,并獲得完成該命令的相應(yīng)模塊的入口。如果把整 個(gè)軟件比作一棵樹,則監(jiān)控主程序就是樹干,其余是樹枝和樹葉。監(jiān)控主程序起著引導(dǎo)儀器進(jìn) 入正常工作狀態(tài),并協(xié)調(diào)各部分軟硬件有條不紊工作的重要作用。
監(jiān)控主程序通常包括對系統(tǒng)中可編程器件輸入/輸出口參數(shù)的初始化、自檢、調(diào)用鍵盤顯 示管理模塊及實(shí)時(shí)中斷管理和處理模塊等功能。除初始化和自檢外,監(jiān)控主程序一般總是把其 余部分連接起來構(gòu)成一個(gè)無限循環(huán),儀器所有功能都在這一循環(huán)中周而復(fù)始地有選擇地執(zhí)行。 除非掉電或按復(fù)位(RESET)鍵。圖8-12為監(jiān)控主程序流程圖。
上述監(jiān)控主程序是一種示例,不同的硬件、不同的系統(tǒng)釆取的主監(jiān)控方法也不相同。在這 種監(jiān)控系統(tǒng)中,首*入初始化,然后再進(jìn)行自檢,自檢后即等待鍵盤/外設(shè)中斷,若有中斷, 首先區(qū)分是鍵盤中斷還是外設(shè)。如果是鍵盤中斷,設(shè)立鍵盤服務(wù)標(biāo)志;如果是外設(shè)中斷,需判 明是手動還是自動,根據(jù)相應(yīng)的狀態(tài)轉(zhuǎn)入相應(yīng)的中斷服務(wù)子程序中。無論是什么中斷,執(zhí)行完 之后都必須返回主監(jiān)控程序中繼續(xù)執(zhí)行主監(jiān)控程序。編制程序時(shí)要注意程序可能產(chǎn)生的各種結(jié) 果,防止出現(xiàn)死循環(huán)。
2.鍵盤管理模塊設(shè)計(jì)
智能儀器的鍵盤可以采用編碼式鍵盤,也可采用軟件掃描方式(非編碼鍵盤)。不論采用 哪一種方法,在獲得當(dāng)前按鍵值后,都要轉(zhuǎn)入相應(yīng)的鍵盤服務(wù)程序入口,以便完成相應(yīng)的功能。 各鍵所能完成的具體功能由設(shè)計(jì)者根據(jù)儀器總體要求,兼顧軟件、硬件,從合理、方便、經(jīng)濟(jì) 等因素出發(fā)來確定。目前常用的兩種方法為一鍵一義和一鍵多義。
(1) 一鍵一義鍵盤管理程序設(shè)計(jì)方法(直接分析法)
直接分析法即一個(gè)按鍵代表一個(gè)確切的命令或一個(gè)數(shù)字。編程時(shí),只要根據(jù)當(dāng)前按鍵的編 碼,把程序直接分支到相應(yīng)處理模塊的入口,而無須知道在此以前的情況。其軟件框圖如圖8-13 所示。
微處理器平時(shí)周而復(fù)始地掃描鍵盤,當(dāng)發(fā)現(xiàn)按鍵時(shí),首先判別是命令鍵還是數(shù)字鍵。若是 數(shù)字鍵,則把按鍵讀數(shù)存入存儲器,通常不進(jìn)行顯示;若是命令鍵,則根據(jù)按鍵查閱轉(zhuǎn)移表以 獲得處理程序的入口。處理程序執(zhí)行完后繼續(xù)掃描鍵盤。直接分析法的核心是一鍵一義的轉(zhuǎn)移 表。表內(nèi)順序登記各個(gè)處理子程序的入口。
(2) 一鍵多義鍵盤管理程序設(shè)計(jì)方法
在一鍵多義的情況下,一個(gè)命令不是用一次按鍵而是由一個(gè)按鍵序組成的。換句話講’對 一個(gè)按鍵含義的解釋除了取決于本次按鍵之外,還取決于以前按了些什么鍵。因此對一鍵多義的監(jiān)控程序首先要判斷一個(gè)按鍵序列是否已構(gòu)成命令。若已構(gòu)成命令則執(zhí)行命令,否則等待重 新輸入新的值。
一鍵多義的監(jiān)控程序可采用轉(zhuǎn)移表法進(jìn)行設(shè)計(jì),不過這時(shí)要用多張轉(zhuǎn)移表,組成一個(gè)命令 的前幾個(gè)按鍵起著引導(dǎo)作用,把控制引向某張合適的轉(zhuǎn)移表,根據(jù)zui后一個(gè)按鍵查閱該轉(zhuǎn)移表 就可以找到要求的子程序入口。按鍵的管理可以用查詢式,也可以用中斷方式,由于有些按鍵 功能往往需執(zhí)行一段時(shí)間,這時(shí)若用查詢式處理鍵盤會影響整個(gè)儀器實(shí)時(shí)處理功能。另外,智 能儀器監(jiān)控程序具有實(shí)時(shí)性,一般鍵盤中斷不應(yīng)中斷正進(jìn)行的測量控制運(yùn)算。因此通常把鍵盤 服務(wù)程序設(shè)計(jì)成比過程中斷低一級的中斷源。
掃一掃 微信咨詢
©2024 上自儀表有限公司(www.wangzhuankm.cn)版權(quán)所有 備案號:滬ICP備15055501號-9 技術(shù)支持:化工儀器網(wǎng) sitemap.xml 總訪問量:281888 管理登陸