新聞中心

        MSP430單片機(jī)uart

        作者: 時(shí)間:2016-11-25 來源:網(wǎng)絡(luò) 收藏
        USART模塊分別由波特率部分:波特率發(fā)生器,串行通訊接收/發(fā)送控制寄存器。接收部分,發(fā)送部分,端口IO部分。

        利用串口調(diào)試軟件,向串口發(fā)送一個(gè)字符,MSP430單片機(jī)接收到后從低功耗中喚醒.并將收接緩沖區(qū)的字符再發(fā)送到軟件中.單片機(jī)發(fā)送完后又進(jìn)入低功耗狀態(tài).

        本文引用地址:http://www.104case.com/article/201611/321290.htm

        #include
        void main(void)
        {
        WDTCTL = WDTPW + WDTHOLD; // 停止WDT
        UCTL0 = CHAR; // 設(shè)串口控制寄存器,設(shè)為8位字符格式
        UTCTL0 = SSEL0; // 設(shè)串口控制寄存器所使用的時(shí)鐘,選擇UCLK = ACLK
        UBR00 = 0x0D; // 波特率設(shè)置32k/2400 - 13.65
        UBR10 = 0x00;
        UMCTL0 = 0x6D; // 波特率調(diào)整器設(shè)置
        ME1 |= UTXE0 + URXE0; // 模塊允許寄存器設(shè)置,使能USART0 TXD/RXD
        IE1 |= URXIE0; // 中斷允許寄存器設(shè)置,接收中斷允許
        P3SEL |= 0x30; // 將P3.4,5使用外圍模塊= USART0 TXD/RXD
        P3DIR |= 0x10; // 將P3.4設(shè)為輸出(發(fā)),P3.5默認(rèn)為輸入(收)
        _EINT(); // 全局中斷使能

        for (;;)
        {
        LPM3; // 進(jìn)入LPM3模式,等待字符接收.
        while ((IFG1 & UTXIFG0) == 0); // USART0發(fā)送UTXIFG0=1,表示UTXBUF準(zhǔn)備好發(fā)送一下字符
        TXBUF0 = RXBUF0; // 將收到緩沖區(qū)字符送發(fā)送區(qū)
        }
        }

        //串口接收中斷,退出LPM3模式.
        #pragma vector=USART0RX_VECTOR
        __interrupt void usart0_rx (void)
        {
        LPM3_EXIT;
        }



        關(guān)鍵詞: MSP430單片機(jī)uar

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 南充市| 乐业县| 商都县| 玉树县| 渭源县| 巨野县| 海淀区| 东辽县| 惠水县| 福泉市| 噶尔县| 射洪县| 新昌县| 青川县| 前郭尔| 荥经县| 岳池县| 临朐县| 房产| 蒲城县| 兴安县| 胶州市| 荆州市| 抚宁县| 汨罗市| 佳木斯市| 盘山县| 浠水县| 阿合奇县| 甘德县| 吕梁市| 蒲江县| 健康| 建宁县| 旬阳县| 疏勒县| 和龙市| 临清市| 衡山县| 普宁市| 田东县|