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