|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請(qǐng)教這個(gè)MSP430串口程序,為何給計(jì)算機(jī)發(fā)送數(shù)據(jù) |
| 作者:bluefancy 欄目:單片機(jī) |
可以,但是接收到數(shù)據(jù)就是錯(cuò)誤的(可以接收到!) #include <msp430x16x.h> void Init(void); void main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT Init(); _EINT(); // Enable interrupts // TXBUF1=0x38; for (;;) { // _BIS_SR(CPUOFF); // Enter LPM0 // _NOP(); // Required ONLY for C-spy } } #pragma vector=UART1RX_VECTOR __interrupt void usart1_rx (void) { unsigned CHAR.html">CHAR cc; while ((IFG2 & UTXIFG1) == 0); // USART0 TX buffer ready? cc=RXBUF1; TXBUF1 = cc; // RXBUF0 to TXBUF0 } void Init(void) { UMCTL1=0x4A; UBR01 =0x03; UBR11 =0x00; P3SEL|=0xc0; //P3DIR|=0x50; //ME1 &=~UTXE1; ME2 |=(URXE1+UTXE1); //ME1 |= URXE1; UCTL1 =CHAR; // 8 N 1 UTCTL1=0x10; //ACLK as the UART clock //URCTL1 |=(URXEIE+URXWIE); // IE2 |=(UTXIE1+URXIE1); UTCTL1=SSEL0+TXEPT; //ACLK as the UART clock URCTL1=0; //無(wú)奇偶, IE2 |=URXIE1; } ///////////////////////////////////////////////////// PC發(fā)送 -> MSP430接收 0 FE 1 CC (大部分時(shí)候發(fā)送0 和1 收到 FE 和CC,有時(shí)候也不是) 2 E6 3 E6 基本上都能接收到,但是沒(méi)發(fā)現(xiàn)什么規(guī)律 請(qǐng)大蝦給指點(diǎn)指點(diǎn),謝謝!(順便說(shuō)一下MSP430發(fā)送,PC接收都是正確的) |
| 2樓: | >>參與討論 |
| 作者: rivflood 于 2005/9/27 9:24:00 發(fā)布:
不知樓主用的是什么開發(fā)環(huán)境? 如果是IAR的或者是ti的CCE,可以到ti的網(wǎng)上下載例程,里面有詳細(xì)的串口發(fā)送的程序,可以看看是不是程序的問(wèn)題 |
|
| 3樓: | >>參與討論 |
| 作者: bluefancy 于 2005/9/27 12:17:00 發(fā)布:
是IAR的!謝謝! |
|
| 4樓: | >>參與討論 |
| 作者: bluefancy 于 2005/9/28 8:13:00 發(fā)布:
頂一下! |
|
| 5樓: | >>參與討論 |
| 作者: leebai_001 于 2005/9/28 8:24:00 發(fā)布:
檢查串口硬件連接 串口RX,TX,GND 。 對(duì)于單片機(jī)而言,RX,GND 是一組,TX,GND是一組,你說(shuō)的現(xiàn)象是一組正常,另一組不正常,檢查一下,應(yīng)該就可以解決了。 |
|
| 6樓: | >>參與討論 |
| 作者: sharks 于 2005/9/28 15:59:00 發(fā)布:
波特率不對(duì)吧? 我用ACLK最多做到4800,9600就經(jīng)常出問(wèn)題了。 |
|
| 7樓: | >>參與討論 |
| 作者: bluefancy 于 2005/9/30 11:05:00 發(fā)布:
這是為什么,應(yīng)該支持的波特率遠(yuǎn)比9600高吧? |
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |