HT46ru232單片機簡(jiǎn)介
一、總體介紹:
HT46RU232 是 8 位高性能精簡(jiǎn)指令集單片機,專(zhuān)門(mén)為需要 A/D 轉換產(chǎn)品而設計,例如傳感器信號輸入。
低功耗、I/O 使用靈活、可編程分頻器、計數器、振蕩類(lèi)型選擇、多通道 A/D 轉換、脈寬調制功能、IIC 接口、UART 總線(xiàn),暫停和喚醒功能,使這款單片機可以廣泛應用于傳感器的 A/D 轉換、馬達控制、工業(yè)控制、消費類(lèi)產(chǎn)品,子系統控制器等。 HT46ru232單片機有兩種封裝形式,一為下圖所示,28腳的DIP封裝,另外一種為48腳的SOP封裝。
二、系統時(shí)鐘:
HT系列單片機的指令周期為Fsys/4,其系統時(shí)鐘可以選用石英晶振4MHz或者8MHz。也可以選擇RC振蕩電路來(lái)實(shí)現。兩種形式如下圖:
如果選用外部 RC 振蕩方式,在 OSC1 與 VSS 之間需要接一個(gè)外部電阻,其阻值為 30k?~750k?;而 OSC2 上會(huì )輸出帶上拉的系統頻率的 4 分頻信號,可用于同步外部邏輯。RC 振蕩方式是一種低成本的方案,但是,RC振蕩頻率會(huì )隨著(zhù)VDD、溫度和芯片自身參數的漂移而產(chǎn)生誤差。因此,在需要精確振蕩
頻率作為計時(shí)操作的場(chǎng)合,并不適合使用 RC 振蕩方式。
如果選用晶體振蕩方式,在 OSC1和OSC2之間需要連接一個(gè)晶體,用來(lái)提供晶體振蕩器所需的反饋和相移,除此之外,不再需要其它外部元件。另外,在OSC1和 OSC2之間也可使用諧振器來(lái)取代晶體振蕩器,但是在OSC1和OSC2 需要多連接兩個(gè)電容(如果振蕩頻率小于1MHz)。 WDT 振蕩器是一個(gè)內部RC 振蕩器,并不需要連接任何外部元件。當系統進(jìn)入暫停模式時(shí),系統時(shí)鐘會(huì )停止,但 WDT 振蕩器會(huì )繼續工作,其振蕩周期大約為 65µs/5V。如果要降低功耗,可在掩膜選項中關(guān)閉WDT 振蕩器。
三、復位電路:
HT系列單片機提供了三種方法來(lái)產(chǎn)生系統復位。
·正常運行時(shí)由RES引腳發(fā)生復位
·暫停模式下由RES引腳發(fā)生復位
·正常情況下由看門(mén)狗溢出發(fā)生復位
暫停模式中的看門(mén)狗定時(shí)器溢出與其它系統復位狀況不同,因為看門(mén)狗定時(shí)器溢出會(huì )執行“熱復位”,只有程序計數器PC 和堆棧指針SP 被復位,而系統其它部分都保持原有狀態(tài)。在其它復位狀態(tài)下,某些寄存器不會(huì )改變。在初始復位時(shí),大部分寄存器會(huì )復位成初始的狀態(tài)。通過(guò)檢測PDF和TO 標志,即可判斷出各種不同的復位原因。
為了保證系統振蕩器起振并穩定運行,系統復位或由暫停狀態(tài)喚醒時(shí),系統啟動(dòng)定時(shí)器(SST)提供了一個(gè)額外的延遲時(shí)間,共 1024個(gè)系統時(shí)鐘周期。 系統由暫停模式喚醒或上電復位時(shí),SST 會(huì )被加在復位延時(shí)中。上電復位時(shí)會(huì )加入額外的SST 延遲,而由暫停模式喚醒僅有 SST 延遲。系統復位時(shí)各功能單元的狀態(tài)如下所示:
四、定時(shí)器/計數器
HT46RU232 有兩個(gè)定時(shí)/計數器(TMR0,TMR1)。定時(shí)/計數器 0 是一個(gè) 16 位向上計數器,其時(shí)鐘來(lái)源可以是外部信號輸入或內部時(shí)鐘,內部時(shí)鐘為 fSYS。定時(shí)/計數器 1 是一個(gè) 16 位向上計數器,其時(shí)鐘來(lái)源可以是外部信號輸入或內部時(shí)鐘,內部時(shí)鐘為 fSYS/4。外部信號輸入可以用來(lái)計數外部事件、測量時(shí)間間隔、測量脈沖寬度或產(chǎn)生一個(gè)精確的時(shí)基信號。有六個(gè)與定時(shí)/計數器0/1有關(guān)的寄存器, TMR0H(0CH)、 TMR0L(0DH)、 TMR0C(0EH)、 TMR1H(0FH)、
TMR1L(10H)、TMR1C(11H)。寫(xiě)入 TMR0L(TMR1L)只能將數據寫(xiě)到低字節緩沖器(8 位),而寫(xiě)入TMR0H(TMR1H)會(huì )把指定數據和低字節緩沖器的數據分別寫(xiě)到 TMR0H(TMR1H)和 TMR0L(TMR1L)預置寄存器中,定時(shí)/計數器 0/1 預置寄存器的內容只有在寫(xiě)入 TMR0H(TMR1H)時(shí)才會(huì )被改變。讀取TMR0H(TMR1H)會(huì )把TMR0H(TMR1)的內容送至目標單元,而TMR0L(TMR1L)的值被送至低字節緩沖器中。讀 TMR0L(TMR1L)將讀取低字節緩沖器的值。TMR0C(TMR1C)是定時(shí)/計數器 0/1 控制寄存器,用來(lái)定義定時(shí)/計數器一些選項。
TMR0C寄存器的位定義:
位7、6為定義定時(shí)器工作模式:T0M1,T0M0
00--------未用
01--------事件計數模式(對外部時(shí)鐘計數)
10--------定時(shí)器模式(內部模式)
11--------脈沖寬度測量模式
位5----未用,一般使用定義為0
位4----T0ON,打開(kāi)關(guān)閉定時(shí)器(0關(guān)閉,1打開(kāi))
位3----T0E,定時(shí)器/計數器觸發(fā)模式
位2、1、0定義定時(shí)器時(shí)鐘預分頻級數,以T0PSC2-0,8進(jìn)制數為指數n,Fint=Fsys/(2的n次方).
TMR1C寄存器的位定義:
類(lèi)似TMR0C,但TMR1C沒(méi)有對低三位定義。
TMR2C寄存器的位定義:
同TMR0C寄存器。
五、UART---異步串行口
串行口主要由3個(gè)UART寄存器來(lái)控制和檢測(UART、UART1、UART2)
UART(只讀) bit0-7的定義為:
·
TXIF 是發(fā)送數據寄存器為空標志。若 TXIF=0,數據還沒(méi)有從緩沖器加載到移位寄存器中;若TXIF=1,數據已從TXR寄存器中加載到移位寄存器。讀取 USR寄存器再寫(xiě)TXR寄存器將清除TXIF。當TXEN被置位,即使發(fā)送緩沖器未滿(mǎn),TXIF也會(huì )被置位。
評論