<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > MSP430教程15:MSP430單片機串行通訊模塊

MSP430教程15:MSP430單片機串行通訊模塊

作者: 時(shí)間:2016-11-13 來(lái)源:網(wǎng)絡(luò ) 收藏
串行異步通訊模塊

MSP430系列產(chǎn)品中,每一款型號都能實(shí)現串行通訊的功能,在MSP430F1X11系列中,可以用定時(shí)器A和軟件編程結合實(shí)現串行通訊功能。而在其它系列產(chǎn)品中都帶有硬件的串行通訊模塊USART;另外,MSP430F14X系列產(chǎn)品中還帶了兩個(gè)串行通訊模塊。而在MSP430F15X,F16X系列中USART0還可以實(shí)現IIC總線(xiàn)通訊。在UART模塊中帶有UART串行異步通訊和SPI同步通訊硬件資源。

本文引用地址:http://dyxdggzs.com/article/201611/316503.htm

圖是USART模塊結構圖,從下圖可以看出USART模塊分別由波特率部分:波特率發(fā)生器,串行通訊接收/發(fā)送控制寄存器。

接收部分,發(fā)送部分,端口IO部分。

串行異步通訊的特點(diǎn):

1-異步通訊模式,包括線(xiàn)路空閑/地址位通信協(xié)議。

2-有兩個(gè)單獨的移位寄存器,輸入/輸出移位寄存器(如下圖)。

3-傳輸7位或8位數據,可采用奇偶或無(wú)校驗。

4-可編程實(shí)現波特率調整。

5-分別發(fā),收單獨中斷。

6-有效地檢測到起始位實(shí)現從低功耗喚醒。

7-狀態(tài)標志檢測錯誤或者地址位。

串行同步通訊(SPI)的特點(diǎn):

1-動(dòng)持3線(xiàn)/4線(xiàn)的SPI通訊。

2-支持主機模式與從機模式。

3-收發(fā)有單獨的緩沖器,移位寄存器。

4-收發(fā)有單獨的中斷。

5-時(shí)鐘極性和相位可編程。

6-主機模式的時(shí)鐘頻率可編程。

7-7位/8位字符長(cháng)度。

有關(guān)USART的詳細應有原理,建議初學(xué)者參考清華大學(xué)出版社的<>。

串行異步通訊應用例程

//*******************************************

//MSP430F149串口行實(shí)驗程序

//P3.4為發(fā)送,P3.5為接收

//晶體使32768HZ.

//程序描述:利用串口調試軟件;向串口發(fā)送一個(gè)字符,MSP430單片機接收到后從低功耗中喚醒.并將收接緩沖區的字符再發(fā)送到//電腦上的調試軟件中.單片機發(fā)送完后又進(jìn)入低功耗狀態(tài).

//*******************************************

#include <msp430x14x.h>

void main(void)

{

WDTCTL = WDTPW + WDTHOLD; // 停止WDT

UCTL0 = CHAR; // 設串口控制寄存器,設為8位字符格式

UTCTL0 = SSEL0; // 設串口控制寄存器所使用的時(shí)鐘,選擇UCLK = ACLK

UBR00 = 0x0D; // 波特率設置32k/2400 - 13.65

UBR10 = 0x00;

UMCTL0 = 0x6D; // 波特率調整器設置

ME1 |= UTXE0 + URXE0; // 模塊允許寄存器設置,使能USART0 TXD/RXD

IE1 |= URXIE0; // 中斷允許寄存器設置,接收中斷允許

P3SEL |= 0x30; // 將P3.4,5使用外圍模塊 = USART0 TXD/RXD

P3DIR |= 0x10; // 將P3.4設為輸出(發(fā)),P3.5默認為輸入(收)

_EINT(); // 全局中斷使能

// Mainloop

for (;;)

{

LPM3; // 進(jìn)入LPM3模式,等待字符接收.

while ((IFG1 & UTXIFG0) == 0); // USART0發(fā)送UTXIFG0=1,表示UTXBUF準備好發(fā)送一下字符

TXBUF0 = RXBUF0; // 將收到緩沖區字符送發(fā)送區

}

}

//串口接收中斷,退出LPM3模式.

#pragma vector=USART0RX_VECTOR

__interrupt void usart0_rx (void)

{

LPM3_EXIT;

}

//*****************************************

//例程結束



關(guān)鍵詞: MSP430單片機串行通

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>