www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 電源 > 功率器件
[導(dǎo)讀]MSP430的不同型號,其串行通訊工作模式是一樣的。以MSP430G2553為例進(jìn)行說明。MSP430G2553是20個引腳的16位單片機。具有內(nèi)置的16位定時器、16k的FLASH和512B的RAM,以及一個

MSP430的不同型號,其串行通訊工作模式是一樣的。以MSP430G2553為例進(jìn)行說明。MSP430G2553是20個引腳的16位單片機。具有內(nèi)置的16位定時器、16k的FLASH和512B的RAM,以及一個通用型模擬比較器以及采用通用串行通信接口的內(nèi)置通信能力。此外還具有一個10位的模數(shù)(A/D)轉(zhuǎn)換器。這里我們詳細(xì)說明MSP430G2553串口通信。其引腳排布如圖1.1所示。其功能表如表1.1所示。

串行通訊模塊主要由三個部分組成:波特率生成部分、發(fā)送控制器以及接收控制器。如圖1.2所示。

 

 

 

 

 

 

一、UART模式

在異步模式下,接收器自身實現(xiàn)幀的同步,外部的通訊設(shè)備并不使用這一時鐘。波特率的產(chǎn)生是在本地完成的。異步幀格式由1個起始位、7或8個數(shù)據(jù)位、校驗位(奇/偶/無)、1個地址位、和1或2個停止位。一般最小幀為9個位,最大為13位。

(一)UART的初始化

單片機工作的時鐘源來自內(nèi)部三個時鐘或者外部輸入時鐘,由SSEL1、SSEL0,以決定最終進(jìn)入模塊的時鐘信號BRCLK的頻率。所以配置串行通訊的第一步就是選擇時鐘。

通過選擇時鐘源和波特率寄存器的數(shù)據(jù)來確定位周期。所以波特率的配置是串行通訊中最重要的一部分。波特率設(shè)置用三個寄存器實現(xiàn):UxBR0(選擇控制器0):波特率發(fā)生器分頻系數(shù)低8位。UxBR1(選擇控制器1):波特率發(fā)生器分頻系數(shù)高8位。UxMCTL

數(shù)據(jù)傳輸?shù)母袷?,以及?shù)據(jù)傳輸?shù)哪J绞峭ㄟ^配置控制寄存器UCTL來進(jìn)行設(shè)置。

接收控制部分和發(fā)送控制部分。首先需要串行口進(jìn)行配置、使能以及開啟中斷。串口接收數(shù)據(jù)一般采用中斷方式,發(fā)送數(shù)據(jù)采用主動發(fā)送。當(dāng)接收到一個完整的數(shù)據(jù),產(chǎn)生一個信號:URXIFG0=1(類似于51單片機的接收中斷標(biāo)志位),表示接收完整的數(shù)據(jù)。當(dāng)數(shù)據(jù)正在發(fā)送中,UTXIFG0=1,此時不能再發(fā)送數(shù)據(jù),必須等當(dāng)前數(shù)據(jù)發(fā)送完畢(UTXIFG0=0)才能進(jìn)行發(fā)送。

二、SPI模式

USTAR下的SPI模式有如下特點:

1、SPI模式支持3線和4線模式;

2、支持主機與從機模式;

3、接受和發(fā)送有各自獨立的發(fā)送移位寄存器和緩沖器;

4、接受和發(fā)送都有獨立的中斷能力;

5、移位時鐘的極性和相位可編程;

6、字符長度可以是7位或者8位。

SPI工作在全雙工下,即主機發(fā)送的同時也接收數(shù)據(jù),傳輸?shù)乃俾视删幊虥Q定。4線SPI模式用附加數(shù)據(jù)線,允許從機數(shù)據(jù)的發(fā)送和接收。其信號如下: SIMO:從進(jìn)主出,主機模式下,數(shù)據(jù)輸出;從機模式下,數(shù)據(jù)輸入。SOMI:從出主進(jìn),主機模式下,數(shù)據(jù)輸入,從機模式下,數(shù)據(jù)輸出。UCLK:USART SPI模式時鐘,信號有主機輸出,從機輸入。CLK時鐘只能由主機提供。STE:從機模式發(fā)送接收允許控制腳,用于4線模式。

(一)SPI初始化

SPI當(dāng)中不需要波特率調(diào)整,所以UxMCTL=0x0000,SPI的初始化及其復(fù)位和UART公用一套寄存器。

在初始化或者重新配置USART的SPI時,必須按照以下順序進(jìn)行:

1、UxCTL寄存器的第0位SWRST置位;

2、在SWRST置位的條件下,初始化所有的SPI寄存器,包括UxCTL寄存器;

3、通過置位模塊使能寄存器MEx的URXEx和UTXEx位使能SPI的接受和發(fā)送使能模塊;

4、通過軟件復(fù)位UxCTL寄存器的第0位SWRST;

5、通過中斷使能寄存器IEx的URXIEx和UTXIEx來使能發(fā)送和接受中斷。

三、寄存器及其功能

 

 

(1)控制寄存器UxCTL

控制寄存器內(nèi)的信息決定了USART的基本操作。如:選擇通信協(xié)議、通信模式和校驗位。在SWRST復(fù)位使USART復(fù)位操作禁止前,各位應(yīng)根據(jù)選擇的模式進(jìn)行編程。

 

 

(2)發(fā)送控制寄存器UxTCTL(未作說明的位未用)

寄存器UxTCTL控制與發(fā)送操作相關(guān)的USART硬件。

 

 

(3)接收控制寄存器URCTL

URCTL 控制與接收操作相關(guān)的USART硬件并保存由最新寫入URXBUF的字符引起的出錯狀況和喚醒條件。若FE、PE、OE、BRK、RXERR 或 RXWake 中的任何一位置位,通過接收下一個字符不能使其復(fù)位。它們的復(fù)位要通過訪問接收緩存URXBUF、USART的軟件復(fù)位SWRST、系統(tǒng)復(fù)位PUC或用指令修改。[!--empirenews.page--]

 

 

 

 

(4)波特率選擇寄存器和調(diào)制控制寄存器

波特率產(chǎn)生器利用波特率選擇寄存器UxBR1和UxBR0,以及調(diào)整控制寄存器UxMCTL,來產(chǎn)生串行數(shù)據(jù)流的位定時。UxBR0、UxBR1這兩個寄存器是用于存放波特率分頻因子的整數(shù)部分,若波特率發(fā)生器的輸入頻率BRCLK不是所需波特率的整數(shù)倍,帶有小數(shù),則整數(shù)部分寫入UxBR寄存器,小數(shù)部分則由調(diào)整寄存器UxMCT的內(nèi)容反映。波特率由以下公式計算:

波特率=BRCLK/(UBR+(M7+M6+ …M0)/8)

 

 

接收緩存存放移位寄存器最后接收的字符,可由用戶訪問,讀接收緩存可以復(fù)位接收時產(chǎn)生的各種錯誤標(biāo)志、RXWAKE位和URXIFGx位。如果傳輸7位數(shù)據(jù),接收緩存內(nèi)容右對齊,最高位為0。當(dāng)收接和控制條件為真時,接收緩存裝入當(dāng)前接收到的字符。

 

 

發(fā)送緩存含有當(dāng)前要由發(fā)送器發(fā)送的數(shù)據(jù)。UTXIFG 標(biāo)志表示UTXBUF已準(zhǔn)備好接收下一個要發(fā)送的字符。將數(shù)據(jù)寫入UTXBUF初始化發(fā)送功能。如果發(fā)送移位寄存器為空或即將為空,數(shù)據(jù)的發(fā)送立即開始。只有當(dāng)UTXBUF為空時,數(shù)據(jù)才能寫入緩存,否則可能發(fā)送不可預(yù)料的字符。

例子:

#include“msp430G2553.h”

#include “in430.h”

void UartPutchar(unsigned char c);

unsigned char UartGetchar();

unsigned char temp=0;

unsigned char number[2]={0};

void main( void )

{

WDTCTL = WDTPW + WDTHOLD; // Stop WDT

BCSCTL1 = CALBC1_1MHZ; // Set DCO

DCOCTL = CALDCO_1MHZ;

P1DIR|=BIT6;

P1OUT&=~BIT6;

P1SEL = BIT1 + BIT2; // P1.1為 RXD, P1.2為TXD

P1SEL2 = BIT1 + BIT2; // P1.1為 RXD, P1.2為TXD

UCA0CTL1 |= UCSSEL_2; // 選擇時鐘BRCLK

UCA0BR0 = 106; // 1MHz 9600

UCA0BR1 = 0; // 1MHz 9600

UCA0MCTL = UCBRS2 + UCBRS0; // 波特率=BRCLK/(UBR+(M7+.。.0)/8)

UCA0CTL1 &= ~UCSWRST;

// 初始化順序:SWRST=1設(shè)置串口,然后設(shè)置SWRST=0,最后設(shè)置相應(yīng)中斷

IE2 |= UCA0RXIE; // 使能接收中斷

while(1)

{

//UartPutchar(9);

// display_int(temp,0);

__delay_cycles(10000);

}

}

/**********************************UART接收中斷*************************/

#pragma vector=USCIAB0RX_VECTOR

__interrupt void USCI0RX_ISR(void)

{

//while (!(IFG2&UCA0TXIFG)); // 等待發(fā)送完成

//UCA0TXBUF = UCA0RXBUF; // TX -》 RXed character

temp=UCA0RXBUF;

}

/******************************UART發(fā)送字節(jié)函數(shù)*************************/

void UartPutchar(unsigned char c)

{

while(!(IFG2 & UCA0TXIFG)); //待發(fā)送為空

UCA0TXBUF=c;

IFG2 &=~UCA0RXIFG;

}

/*********************************UART接收字節(jié)數(shù)據(jù)******************/

unsigned char UartGetchar()

{

unsigned char c;

while(!(IFG2 & UCA0RXIFG)); //等待接收完成

c=UCA0RXBUF;

IFG2 &=~UCA0TXIFG;

return c;

}

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉