基于8098單片機(jī)的脈沖測量儀的軟硬件介紹
給出基于8098單片機(jī)的脈沖測量儀的硬件、 軟件及 抗干擾措施。實(shí)際使用證明該測量儀穩(wěn)定、可靠、精度高、測量速度快。
關(guān)鍵詞:脈沖測量;8098單片機(jī);高速輸入/輸出通道(HSI/HSO )
Keywords: impulse measure; single?chip computer 8098; high?sp eed input/high?speed output channel(HSI/HSO)
8098單片機(jī)具有性能十分優(yōu)良的高速輸入輸出通道,HSO0~HSO5為高速輸出通道,能產(chǎn) 生輸出寬度與周期均可調(diào)的脈沖波(PWM)。HSI0~HSI3為高速輸入通道,CPU通過它們可 以同時接受來自外部的4個脈沖信號,并且隨時記錄脈沖信號中的高、低電平出現(xiàn)的時間, 非常適用于對脈沖參數(shù)的檢測。
以高速輸入通道HSI為例,HSI部件有自己的中斷功能,當(dāng)控制寄存器IOC1,7=1時,F(xiàn) IFO存儲區(qū)裝滿事件后發(fā)出中斷請求,如果IOC1,7=0,則保持寄存器在裝入事件后發(fā) 出中斷請求,兩種原因引起的中斷請求可通過查詢狀態(tài)寄存器IOS1而鑒別:如果FIFO 存儲區(qū)滿時,IOS1,6=1,反之,IOS1,6=0;如果保持寄存器內(nèi)有值時,IOS 1,7=1,反之,IOS1,7=0。同時,HSI0也有自己的中斷,只要HSI0引腳 上有事件發(fā)生,便可以提出中斷請求。HSI有方式寄存器HSIMODE、狀態(tài)寄存器HSI STATUS和時間寄存器HSITIME。HSI的方式寄存器HSIMODE可以 規(guī)定每個通道的四種工作方式如下:
?、俜绞?:每8次正跳變后即觸發(fā); ②方式1:每次正跳變時即觸發(fā); ③方式2:每次負(fù)跳變時即觸發(fā); ④方式3:每次跳變(正或負(fù))時即觸發(fā)。
跳變檢測器按HSIMODE寄存器規(guī)定的工作方式對HSI0~HSI3共4個通道的輸入 信號進(jìn)行監(jiān)視與檢測,并將有關(guān)引腳電平狀態(tài)的檢測結(jié)果送狀態(tài)寄存器HSISTATUS ,同時還將有關(guān)事件是否發(fā)生的信息送入FIFO單元。時間寄存器HSITIME的內(nèi)容為 事件發(fā)生時記錄下來的定時器T1的當(dāng)前值。
1.1硬件電路
圖1是由8098單片機(jī)組成的脈沖測量儀的電路原理圖。脈沖測量的結(jié)果由8個數(shù)碼管顯示,左 邊4個用于脈沖寬度(μs)的顯示,右邊4個用于脈沖周期(μs)的顯示。
1.2軟件設(shè)計(jì)
整個軟件由兩大部分組成:主程序和HSI位0中斷服務(wù)程序。主程序如下:
?
HSI位0中斷服務(wù)程序的框圖如圖2所示。