HT46ru232單片機簡介
一、總體介紹:
HT46RU232 是 8 位高性能精簡指令集單片機,專門為需要 A/D 轉換產品而設計,例如傳感器信號輸入。
低功耗、I/O 使用靈活、可編程分頻器、計數器、振蕩類型選擇、多通道 A/D 轉換、脈寬調制功能、IIC 接口、UART 總線,暫停和喚醒功能,使這款單片機可以廣泛應用于傳感器的 A/D 轉換、馬達控制、工業控制、消費類產品,子系統控制器等。 HT46ru232單片機有兩種封裝形式,一為下圖所示,28腳的DIP封裝,另外一種為48腳的SOP封裝。
二、系統時鐘:
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---異步串行口
串行口主要由3個UART寄存器來控制和檢測(UART、UART1、UART2)
UART(只讀) bit0-7的定義為:
·
TXIF 是發送數據寄存器為空標志。若 TXIF=0,數據還沒有從緩沖器加載到移位寄存器中;若TXIF=1,數據已從TXR寄存器中加載到移位寄存器。讀取 USR寄存器再寫TXR寄存器將清除TXIF。當TXEN被置位,即使發送緩沖器未滿,TXIF也會被置位。
評論