集UART與RS232于一體的MAX3110E原理及應(yīng)用
4 典型應(yīng)用
每個MAX3110E內(nèi)部均包含一個全功能的UART,以及兩個RS232驅(qū)動器/接收器。MAX3110E在9位網(wǎng)絡(luò)工作模式下支持多點通信;而在IrDA模式下則可用來與其它兼容SIR的IrDA設(shè)備進行紅外通訊,詳細(xì)的操作過程與MAX3100類似。MAX3110E使用1.8432MHz或3.6864MHz晶振,可產(chǎn)生300-230kB/s的所有通用波特率,因而可提供各種靈活的通信方式。
UART和RS232既可聯(lián)合使用,也可分開單獨使用,其典型應(yīng)用電路分別如圖5和圖6所示。
對于沒有SPI接口的微處理器,一般需要采用接口線和軟件子程序來模擬SPI接口,此時應(yīng)使用CPOL=0,CPHA=0模式。需要注意的是:每次發(fā)送與接收的數(shù)據(jù)必須是16位字節(jié),通信的波特率也必須協(xié)調(diào)一致。對于8051系列單片機,可使用下面的UTLK子程序來模擬SPI接口,其中的TXl和TX2作為發(fā)送數(shù)據(jù)寄存器,而RXl和RX2則作為接收數(shù)據(jù)寄存器,具體程序如下:
;口線定義
DOUT BIT P1.0 ;數(shù)據(jù)從UART輸出
DIN BIT P1.1 ;數(shù)據(jù)從UART輸入
SCLK BlT P1.2 ;串行時鐘
CS BlT P1.3 ;片選,低電平有效
IRQ BIT P3.2 ;中斷請求
;RAM單元分配
TXl EQU 10H ;發(fā)送數(shù)據(jù)寄存器高八位
TX2 EQU 11H ;發(fā)送數(shù)據(jù)寄存器低八位
RXl EQU 12H ;接受數(shù)據(jù)寄存器高八位
RX2 EQU 13H ;接受數(shù)據(jù)寄存器低八位
;UTLK子程序
UTLK:
CLR CS ;使MAX3110E片選端有效
MOV A,TXl ;從TX1中取高八位數(shù)據(jù)
CALL BYT8 ;發(fā)送并接收高八位
MOV RXl,A ;接收到的高八位送RX1
MOV A,TX2 ;從TX2中取低八位數(shù)據(jù)
CALL BYT8 ;發(fā)送并接收低八位
MOV RX2,A ;接收到的低八位送RX2
SETB CS ;使片選端無效
RET
;從DIN端移出8位,同時從DOUT端接收8位送到A
BYT8:MOV #8 ;8位傳送
SETB DOUT ;確保能從DOUT接收
B8LP:RLC A ;將最高位移至CY
MOV DIN,C ;發(fā)送到DIN端
SETB SCIK ;時鐘脈沖上跳
MOV C,DOUT ;讀取數(shù)據(jù)位
CLR SCLK ;時鐘脈沖下跳
MOV ACC.0,C ;接收位送至ACC.0
DJNZ R4,B8LP ;循環(huán)直到8位完成
RET
參考文獻
[1]. MAX3110E datasheet http://www.dzsc.com/datasheet/MAX3110E_1058797.html.
[2]. MAXIM datasheet http://www.dzsc.com/datasheet/MAXIM_1062568.html.
[3]. RS-232 datasheet http://www.dzsc.com/datasheet/RS-232_584855.html.
[4]. RS485 datasheet http://www.dzsc.com/datasheet/RS485_585289.html.
[5]. RS232 datasheet http://www.dzsc.com/datasheet/RS232_585128.html.
[6]. MAX3100 datasheet http://www.dzsc.com/datasheet/MAX3100_1058507.html.
[7]. MAX3110E-MAX3111E datasheet http://www.dzsc.com/datasheet/MAX3110E-MAX3111E_297133.html.
[8].MAX3110E-MAX3111E.pdf.www.maxim-ic.com
[9].MAX3100.pdf.WWW.maxim-ic.com
[10].欒成強。UART技術(shù)和MAX3100.www.maxim-iC.com.Cn
評論