新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于HT47系列RISC單片機的智能化儀表設計

        基于HT47系列RISC單片機的智能化儀表設計

        作者:杭州商學院Holtek單片機研究中心,茅力群,宋加仁 時間:2003-07-16 來源:電子設計應用 收藏
        摘 要: 介紹了以HT47系列單片機為核心部件的常見智能化儀表的設計過程。

        關鍵詞:

        HT47系列MCU是盛群(Holtek)半導體公司近年推出的8位精簡指令系統(RISC)單片機,它除了具有RISC類單片機特有的指令數量少、易記憶、采用流水線式指令執行方式、運行速度快等優點外,其片內的兩通道電路,動態LCD液晶驅動電路以及軟件狗定時器等硬件資源,為設計小型乃至便攜式智能化儀器儀表提供了極大的方便,全部硬件由傳感器+HT47C20+液晶片+少量阻容元件構成。

        圖1 HT47C20的兩通道電路

        圖2 R-F型A/D轉換過程

        圖3 (c)溫度θ和計算值Nt的關系曲線

        圖4 用處理θ-Nt 關系曲線

        R-F型A/D
        圖1給出了HT47C20的兩通道R-F型A/D轉換電路的結構。
        圖中,Timer A和Timer B是兩個16 位可編程計數器,其計數初值可以由程序設定。Timer A對系統時鐘(System Clock)或系統時鐘4分頻信號(System Clock/4)或實時時鐘的溢出信號(RTC Output)計數;Timer B對通道1或通道2的RC振蕩電路產生的脈沖信號計數。下面我們以利用通道1構成的溫度儀表為例,對其溫度測量原理和設計方法作一介紹。
        利用圖2可以清晰地說明R-F型A/D轉換過程:
        1.見圖2(a),Timer B對參考電阻Rs、參考電容Cs組成的振蕩電路產生的振蕩脈沖計數,Timer A對系統時鐘計數。通過置位有關特殊功能寄存器相關位可使 Timer A、Timer B同時啟動。Timer B由初值0000H-NS計數到0000H(溢出);Timer A由初值0000H計到m,兩者同時停止計數。NS的數值要保證Timer B先溢出,這段時間即為閘門時間。
        2.見圖2(b),Timer A初值改為0000H-m, Timer B初值改為0000H。Timer B對傳感器(NTC熱敏電阻)電阻Rt、參考電容Cs組成的振蕩電路產生的振蕩脈沖計數,Timer A還是對系統時鐘計數。再次同時啟動,當Timer A溢出時兩者同時停止計數且申請中斷。可以看出兩次計數的閘門時間相等,此時Timer B的計數值為Nt。
        從上述過程可以看出:NS·(1 /fs)=Nt·(1/ft)
        所以 Nt=NS·ft/fs (1)
        而 fs=1/(ks·Rs·Cs)
        ft=1/(kt·Rt·Cs)
        式中ks和kt是和電源電壓、環境溫度以及RsCs或RtCs乘積有關的常數(一般取 1.9~2.3),此處可看作近似相等,故有:
        ft/fs=Rs/Rt
        將此式代入上述Nt的表達式中,可得:
        Nt=NS·Rs/Rt (2)
        從上文可知,NS是Timer B在規定的閘門時間內對參考電阻Rs、參考電容Cs組成的振蕩電路產生的振蕩脈沖的計數值,和Rs一樣,都是事先設定的常數。式(2)表示了計數值Nt和傳感器電阻Rt近似成反比,它們之間的關系如圖3(a)所示。
        熱敏電阻本身的電阻-溫度關系曲線如圖3(b)所示,通過圖形變換可以得到被測溫度和計數值Nt之間的關系曲線如圖3(c)所示。
        對被測溫度和計數值Nt之間的關系曲線進行處理,即可從計數值Nt計算出對應的被測溫度。
        把圖4的q-Nt關系曲線分成若干段,每段曲線用一段對應的折線來代替。相對于每一段折線,可求出q-N的線性函數:
        q = a· Nt+b
        式中:a為該段折線的斜率,b為截距。
        值得指出的是,利用HT47C20片內的兩個通道R-F型A/D轉換電路作溫度測量,Timer B對外部RC振蕩電路的兩次計數,使用同一個振蕩電容Cs(即參考電容)。從式(2)可以看出:計數值Nt和電容Cs沒有直接關系,因此當電容量受環境溫度變化時不會影響測溫結果。這一點對提高儀器的系統測量精度是非常有意義的。

        圖5 主程序和中斷服務程序的軟件流程

        圖6 顯示緩沖區布局及相關引腳

        圖 7 HT47C20構成的簡單儀表電路

        R-F型A/D轉換構成溫度測量儀表的軟件流程
        圖5給出了利用HT47C20的片內R-F型A/D轉換電路構成溫度測量儀表的軟件流程。
        HT47C20片內動態液晶顯示電路包含顯示緩沖區和驅動輸出電路兩部分。顯示緩沖區占用內部RAM 40H~53H單元地址(在系統不使用液晶顯示電路時可作為普通RAM單元使用),任何用間接尋址方式寫入顯示緩沖區的字形碼都將直接(經驅動輸出電路)使液晶顯示屏顯示相應的字符。圖6表示了顯示緩沖區的布局以及各存儲單元和芯片外部相關引腳的對應關系。
        從圖6可以看出,顯示緩沖區各存儲單元僅低4位有效,整個顯示電路經芯片內部掩膜選擇可外接20*2、20*3或19*4(即1/2duty、1/3duty或1/4duty)的C型液晶顯示器。
        圖7是用HT47C20為核心部件構成的非常簡單的儀表硬件電路,圖中僅畫出一個測量通道In0,如果把另一個測量通道In1也利用起來,不需要增加外電路就可以同時測量兩路模擬量。可以看出其性價比非一般單片機電路可比。

        結語
        HT47系列除了HT47C20外,和它結構、功能相同的還有HT47C20L(掩膜/低功耗版),HT47R20(OTP版)。值得指出的是盛群半導體公司最新推出的新品HT47C10在結構上作了不少簡化,如片內程序存儲器,數據存儲器容量,液晶顯示電路的驅動筆劃數量適當減少,R-F型A/D轉換通道減少為一個,但在某些應用場合其性價比卻更高一些。

        參考文獻
        1 盛群.(Holtek)半導體公司. HT47C20產品技術資料
        2 茅力群,宋加仁. 用VB5.0實現的非線性曲線的線性化處理.計量技術,2000(2)

        作者簡介:茅力群,畢業于杭州大學計算數學專業,博士。現任杭州商學院電子與信息工程學院講師,從事電路與系統及微機應用方面的教學和科研工作。




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 佳木斯市| 区。| 沙雅县| 丰顺县| 定南县| 沿河| 尤溪县| 大英县| 东山县| 雷山县| 泗水县| 南郑县| 精河县| 桐城市| 祁门县| 禹城市| 蕉岭县| 喀什市| 思南县| 大英县| 平顶山市| 枝江市| 建德市| 新沂市| 南皮县| 仁怀市| 乐平市| 北安市| 岗巴县| 西充县| 徐州市| 陕西省| 溧阳市| 长顺县| 固安县| 樟树市| 连州市| 扶风县| 定兴县| 安泽县| 宜黄县|