新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > HT46ru232單片機簡介

        HT46ru232單片機簡介

        作者: 時間:2016-11-25 來源:網絡 收藏

        一、總體介紹:

        HT46RU232 是 8 位高性能精簡指令集單片機,專門為需要 A/D 轉換產品而設計,例如傳感器信號輸入。
        低功耗、I/O 使用靈活、可編程分頻器、計數器、振蕩類型選擇、多通道 A/D 轉換、脈寬調制功能、IIC 接口、UART 總線,暫停和喚醒功能,使這款單片機可以廣泛應用于傳感器的 A/D 轉換、馬達控制、工業控制、消費類產品,子系統控制器等。 機有兩種封裝形式,一為下圖所示,28腳的DIP封裝,另外一種為48腳的SOP封裝。

        本文引用地址:http://www.104case.com/article/201611/321149.htm

        二、系統時鐘:

        HT系列單片機的指令周期為Fsys/4,其系統時鐘可以選用石英晶振4MHz或者8MHz。也可以選擇RC振蕩電路來實現。兩種形式如下圖:


        如果選用外部 RC 振蕩方式,在 OSC1 與 VSS 之間需要接一個外部電阻,其阻值為 30k?~750k?;而 OSC2 上會輸出帶上拉的系統頻率的 4 分頻信號,可用于同步外部邏輯。RC 振蕩方式是一種低成本的方案,但是,RC振蕩頻率會隨著VDD、溫度和芯片自身參數的漂移而產生誤差。因此,在需要精確振蕩
        頻率作為計時操作的場合,并不適合使用 RC 振蕩方式。
        如果選用晶體振蕩方式,在 OSC1和OSC2之間需要連接一個晶體,用來提供晶體振蕩器所需的反饋和相移,除此之外,不再需要其它外部元件。另外,在OSC1和 OSC2之間也可使用諧振器來取代晶體振蕩器,但是在OSC1和OSC2 需要多連接兩個電容(如果振蕩頻率小于1MHz)。 WDT 振蕩器是一個內部RC 振蕩器,并不需要連接任何外部元件。當系統進入暫停模式時,系統時鐘會停止,但 WDT 振蕩器會繼續工作,其振蕩周期大約為 65µs/5V。如果要降低功耗,可在掩膜選項中關閉WDT 振蕩器。

        三、復位電路:

        HT系列單片機提供了三種方法來產生系統復位。

        ·正常運行時由RES引腳發生復位

        ·暫停模式下由RES引腳發生復位

        ·正常情況下由看門狗溢出發生復位

        暫停模式中的看門狗定時器溢出與其它系統復位狀況不同,因為看門狗定時器溢出會執行“熱復位”,只有程序計數器PC 和堆棧指針SP 被復位,而系統其它部分都保持原有狀態。在其它復位狀態下,某些寄存器不會改變。在初始復位時,大部分寄存器會復位成初始的狀態。通過檢測PDF和TO 標志,即可判斷出各種不同的復位原因。




        為了保證系統振蕩器起振并穩定運行,系統復位或由暫停狀態喚醒時,系統啟動定時器(SST)提供了一個額外的延遲時間,共 1024個系統時鐘周期。 系統由暫停模式喚醒或上電復位時,SST 會被加在復位延時中。上電復位時會加入額外的SST 延遲,而由暫停模式喚醒僅有 SST 延遲。系統復位時各功能單元的狀態如下所示:



        四、定時器/計數器

        HT46RU232 有兩個定時/計數器(TMR0,TMR1)。定時/計數器 0 是一個 16 位向上計數器,其時鐘來源可以是外部信號輸入或內部時鐘,內部時鐘為 fSYS。定時/計數器 1 是一個 16 位向上計數器,其時鐘來源可以是外部信號輸入或內部時鐘,內部時鐘為 fSYS/4。外部信號輸入可以用來計數外部事件、測量時間間隔、測量脈沖寬度或產生一個精確的時基信號。有六個與定時/計數器0/1有關的寄存器, TMR0H(0CH)、 TMR0L(0DH)、 TMR0C(0EH)、 TMR1H(0FH)、
        TMR1L(10H)、TMR1C(11H)。寫入 TMR0L(TMR1L)只能將數據寫到低字節緩沖器(8 位),而寫入TMR0H(TMR1H)會把指定數據和低字節緩沖器的數據分別寫到 TMR0H(TMR1H)和 TMR0L(TMR1L)預置寄存器中,定時/計數器 0/1 預置寄存器的內容只有在寫入 TMR0H(TMR1H)時才會被改變。讀取TMR0H(TMR1H)會把TMR0H(TMR1)的內容送至目標單元,而TMR0L(TMR1L)的值被送至低字節緩沖器中。讀 TMR0L(TMR1L)將讀取低字節緩沖器的值。TMR0C(TMR1C)是定時/計數器 0/1 控制寄存器,用來定義定時/計數器一些選項。

        TMR0C寄存器的位定義:

        位7、6為定義定時器工作模式:T0M1,T0M0

        00--------未用

        01--------事件計數模式(對外部時鐘計數)

        10--------定時器模式(內部模式)

        11--------脈沖寬度測量模式

        位5----未用,一般使用定義為0

        位4----T0ON,打開關閉定時器(0關閉,1打開)

        位3----T0E,定時器/計數器觸發模式

        位2、1、0定義定時器時鐘預分頻級數,以T0PSC2-0,8進制數為指數n,Fint=Fsys/(2的n次方).

        TMR1C寄存器的位定義:

        類似TMR0C,但TMR1C沒有對低三位定義。

        TMR2C寄存器的位定義:

        同TMR0C寄存器。

        五、UART---異步串行口

        HT46RU232 具有一個全雙工的異步串行通信口,可以很方便的與其它具有串行口的芯片通訊。UART具有許多功能特性,發送或接收一個8 位或9位數據幀的串行數據,當數據超速或數據幀不正確時, UART可以檢測出錯誤。UART功能占用一個內部中斷向量,當接收到數據或數據發送結束,觸發 UART中斷。

        串行口主要由3個UART寄存器來控制和檢測(UART、UART1、UART2)

        UART(只讀) bit0-7的定義為:

        · TXIF
        TXIF 是發送數據寄存器為空標志。若 TXIF=0,數據還沒有從緩沖器加載到移位寄存器中;若TXIF=1,數據已從TXR寄存器中加載到移位寄存器。讀取 USR寄存器再寫TXR寄存器將清除TXIF。當TXEN被置位,即使發送緩沖器未滿,TXIF也會被置位。


        上一頁 1 2 下一頁

        關鍵詞: HT46ru232單片

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 元谋县| 山东| 德州市| 宁陕县| 鄂温| 靖西县| 华坪县| 乐业县| 平安县| 阿克苏市| 和政县| 葫芦岛市| 江北区| 昌图县| 呼和浩特市| 额济纳旗| 威海市| 万载县| 青阳县| 阿鲁科尔沁旗| 桓台县| 尉犁县| 渭南市| 东宁县| 霍城县| 剑阁县| 淮安市| 南郑县| 乌拉特中旗| 达拉特旗| 乐至县| 泰来县| 县级市| 平谷区| 利辛县| 汝州市| 红安县| 祁连县| 大港区| 江城| 华阴市|