集UART與RS232于一體的MAX3110E原理及應用
1 概述
MAX3110E內部集成了全功能UART和內置電泵電容以及土15kV ESD保護的RS-232收發器。其中,UART部分采用兼容SPITM/QSPITM/MICROWIRETM的串行接口,因而可節省線路板空間和微控制器的μC)I/0引腳。由于RS-232部分使用了特有的低壓差輸出級,從而使雙接收/發送接口能夠在高速通信、正常電源下提供真正的RS-232特性,而功耗僅600μA。由于UART和RS-232兩部分電路共用電源和地,所以,它們既可聯合使用也可獨立使用。
通過MAX3110E可實現/μC的同步串行數據接口到異步串行通信口(RS-232)的轉換,它可直接與PC機的串行口(COM)相連。MAX3110E具有尺寸小,價格低,功耗少,通信速率高等特點,因此有著較好的應用前景。
2 管腳排列及內部結構
2.1管腳說明
MAX3110E有28腳窄DIP和28腳寬SO兩種封裝形式,其管腳排列如圖1所示。各管腳的功能說明如下:
RlIN,RlOUT,R2IN,R20UT:RS-232接收器輸入端或輸出端。
TlIN,T10UT,T2IN,T20UT:RS-232發送器輸入端或輸出端;
Vcc,GND:電源和地;
X1,X2:晶振連接端,使用外部時鐘時,Xl為外部時鐘的輸入端,而此時X2不連;
CTS:UART清除發送輸入端,低電平有效;
RTS :UART發送請求輸出端,低電平有效,由RTS位控制。也可用來控制RS485網絡中的驅動器使能;
RX,TX:UART異步串行數據(接收器)輸入端和(發送器)輸出端;
DIN:SPI/MICROWIRE串行數據輸入端,為施密特觸發模式;
DOUT:SPI/MICROWIRE串行數據輸出端,CS=1時為高阻態;
SCLK:SPl/MICROWIRE串行時鐘輸入端;
CS:UART片選輸入端,低電平有效;
IRQ:UART中斷輸出端,低電平有效,開漏輸出至微處理器;
SHDN:硬件關閉輸入端,當SHDN=0時,關閉RS232發送器和電泵;
V+,V-:內部電泵產生的+5.5V和-5.5V電壓;
C1+,C2+:內部電泵電容的正極,一般不連接;
C1-,C2-:內部電泵電容的負極,一般不連接。
2.2內部結構及功能
MAX3110E的內部結構功能如圖2所示,它包括UART與RS-232兩個獨立的部分。其中,UART部分包括兼容于SPI的串行接口、可編程波特率發生器、發送緩沖器及發送移位寄存器、接收緩沖器及接收移位寄存器、8字節接收FIFO以及有四種可屏蔽中斷源的中斷產生器。而RS-232部分包括自帶電容的電泵,以及可由SHDN對其進行硬件關斷的。
![]() |
與MAXIM的其它產品一樣,MAX3110E同樣具有ESD保護結構,可對意想不到的靜電起強大的保護作用,其抗靜電能力達±15kV,并可適應各種ESD情況,如正常操作、關斷模式和斷電等。
3 讀寫時序及軟件編程
3.1 讀寫時序
MAX3110E具有兼容SPI/QSPI(CPOL=0,CPHA=0)以及MICROWIRE的串行接口,可方便地與μC的SPI進行接口連接,其同步串行SPI接口的時序如圖3所示。它支持μC的I/0線訪問,并可用51系列單片機的P1口模擬SPI串行接口。
![]() |
SPI串行接口是一個獨立的全雙工結構,它只接收16位數據字。因此,不論寄存器是否使用,只要從DIN接收一個16位字節,就會同時從DOUT產生一個16位的字節。其中,DIN數據字的前兩位決定了傳輸數據的類型。當CS變低時,系統等待一個新的16位數據字,DIN(MOSI)通常在時鐘信號的上升沿鎖存,而DOUT(MISO)則在時鐘信號的上升沿被讀入微處理器,DOUT的第一位(15位)由CS信號的下降沿傳送,而14-0位則在SCLK的下降沿被傳送。
3.2軟件編程
通過串行接口來讀/寫MAX3110E的內部寄存器,可完成UART的波特率設定、數據字長設置、奇偶校驗使能、中斷使能、8字節FIFO使能以及收/發數據的讀/寫等。其配置由DIN、DOUT端各自的16位寄存器中的各位來控制,各位的具體涵義及狀態如表1所列。
![]() |
![]() |
MAX3110E內有寫設置寄存器,讀設置寄存器,寫數據寄存器和讀數據寄存器等四種操作命令,表2是四種寄存器的操作格式。
寫設置寄存器模式的作用是清除FIFO、R、T、RA/FE、DOr-D7r、DOt-D7t、Pr和Pt等寄存器,但RTS與CTS不受影響。DIN中FEN,SHDNi,IR,ST,PE,L,B3-BO等位的設置將在本次發送結束后有效,而屏蔽位(TM,RM,PM,RAM)則在第16個時鐘信號的上升沿開始有效。輸出的DOUT帶有14個尾零,前兩位R和T是可選的。UART必須在晶振振蕩穩定之后,才能正確地配置寄存器。
讀設置寄存器模式可用來讀取UART的最新配置,以控制芯片進入測試模式(位TEST=1時)。所謂測試模式是指芯片在內部將TX和RX連接,以實現自發自收的操作。
寫數據寄存器模式可用來向TX緩沖器發送數據或從RX緩沖器中接收數據。如果沒有新的數據,R位將會在第16個時鐘信號的下降沿被清除。如果不傳送數據而只想改變RTS的狀態,則可將TE位置為1,以禁止數據的發送。
使用讀數據寄存器模式可接收來自8字節FI-FO的數據。但應注意:讀數據時將會清除R位及IRQ中斷位。
3.3中斷源與屏蔽
MAX3110E有4個可屏蔽中斷源,分別為R、T、RA/FE與Pr。當其中任一中斷源發出請求且未被屏蔽時,MAX3110E將提出中斷請求。如果中斷的初始化條件不存在,那么,系統將通過讀或寫數據寄存器來清除IRQ中斷。圖4所示是中斷源與屏蔽的功能框圖。
3.4關斷模式
MAX3110E的關斷包括硬件關斷與軟件關斷兩沖模式,其中,硬件關斷僅影響RS232收發器,而軟件關斷則控制UART工作,兩者相互間沒有影響。
通過軟件命令SHDNi=1可使UART進入軟件關斷模式,當系統進入關斷模式后,系統振蕩器停止,功耗降低,同時清除FIFO,R,RA/FE,DOr-D7r,Pr,Pt等寄存器以及置T=1。UART在關閉時,仍能監視接收器的活動。當SHDNoi=0退出軟件關斷模式時,振蕩器在CS的上升沿開始起振。
通過將管腳SHDN接地可對RS-232收發器進行硬件關斷,硬件斷關時,電源電流為Iccshdn,電泵關閉,V+降為Vcc,V-升為0,發送器輸出端變為高阻態。將管腳SHDN接Vcc則可退出硬件關斷模式。
評論