Other Parts Discussed in Thread: MSP430G2553, MSP-EXP430G2ET
主题中讨论的其他器件: MSP-EXP430G2、 MSP-EXP430G2ET
工具/软件:TI C/C++编译器
您好!
我看到了这个回波示例、我正在尝试使用 CCS 终端与我的 MSP430G2553处理器进行通信。 在 Launch Terminal (启动终端)窗口中、我只有3个串行端口选项、COM1、COM3和 COM6。 当我选择 COM1或 COM3时,我无法在终端窗口中执行任何操作。 当我选择 COM6 (见图)时、CCS 在我尝试发送命令时锁定。 是否存在阻止我与处理器通信的设置?
/*-版权所有-、BSD_EX *版权所有(c) 2012、德州仪器(TI)公司 *保留所有权利。 * * 只要 符合以下条件*、允许以源代码和二进制形式重新分发和使用: * *源代码的重新分发必须保留上述版权 声明*、此条件列表和以下免责声明。 * ***二进制形式的再发行必须在 *随发行提供的文档和/或其他材料中复制上述版权声明、本条件列表和以下免责声明。 * ***未经 事先书面许可、不得使用德州仪器公司的名称或*其贡献者的名称认可或推广从本软件衍生的产品*。 * *本软件由版权所有者和贡献者"按原样"提供 *、 不承担任何明示或暗示的保证、包括但不限于*适销性和特定用途适用性的暗示保证*。 在任何情况下、版权所有者或 *贡献者都不对任何直接、间接、偶然、特殊、 *模范、 或相应的损害(包括但不限于 *采购替代产品或服务;丧失使用、数据或利润; *或业务中断)、但出于任何责任理论 、*无论是在合同中、严格责任还是由于 使用本软件而以任何方式产生的侵权行为(包括疏忽或*其他) 、*即使已获悉可能会发生此类损坏。 * *** * * MSP430代码示例免责声明 * * MSP430代码示例是自包含的低级程序 ,通常*以 高度*简明的方式演示单个外设功能或器件功能。 为此、代码可能依赖于器件的加电默认 值*寄存器值和时钟配置等设置、 并且在组合多个示例中的代码时必须*小心以避免潜在的副作用 *。 另请参阅 www.ti.com/grace 了解 GUI、并参阅 www.ti.com/msp430ware *了解外设配置的 API 函数库方法。 * *--/版权--* //********* // MSP430G2xx3演示- USCI_A0、9600 UART Echo ISR、DCO SMCLK // 说明:回显接收到的字符、使用 RX ISR。 正常模式为 LPM0。 // USCI_A0 RX 中断触发 TX 回波。 //波特率分频器、1MHz = 1MHz/9600 =~104.2 // ACLK = n/a、MCLK = SMCLK = CALxxx_1MHz = 1MHz // MSP430G2xx3 // -------- // /|\| XIN|- // || | // -|RST XOUT|- // | | // | P1.2/UCA0TXD|--- >// | | 9600 - 8N1 // | P1.1/UCA0RXD|<--- // // D. Dang // Texas Instruments Inc. // 2011年2月 //使用 CCS 版本4.2.0和 IAR Embedded Workbench 版本构建:5.10 //********* #include int main (void) { WDTCTL = WDTPW + WDTHOLD; //如果 (CALBC1_1MHz=0xFF)则停止 WDT //如果校准常数被擦除 { while (1); //不加载,陷阱 CPU!! } DCOCTL = 0; //选择最低 DCOx 和 MODx 设置 BCSCTL1 = CALBC1_1MHZ; //设置 DCO DCOCTL = CALDCO_1MHz; P1SEL = BIT1 + BIT2; // P1.1 = RXD,P1.2 = TXD P1SEL2 = BIT1 + BIT2; // P1.1 = RXD、P1.2=TXD UCA0CTL1 |= UCSSEL_2; // SMCLK UCA0BR0 = 104; // 1MHz 9600 UCA0BR1 = 0; // 1MHz 9600 UCA0MCTL = UCBRS0; //调制 UCBRSx = 1 UCA0CTL1 &=~UCSWRST; //**初始化 USCI 状态机**IE2|= UCA0RXIE; //启用 USCI_A0 RX 中断 __bis_SR_register (LPM0_bits + GIE); //输入 LPM0、启用中断 } //回显 RXed 字符,确认 TX 缓冲区已准备就绪#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__) #pragma vector=USCIAB0RX_vector __interrupt void USCI0RX_ISR (supporteded)#elif_ICUSCIAR_ICRx_ (void)(void)(void = USCI0RX_error )_ vector (void)(void = USCI0RX_vector (void)(void = USCI0RX_isr)(vector)(void = USCIC #endif { while (!(IFG2&UCA0TXIFG)); // USCI_A0 TX 缓冲器就绪? UCA0TXBUF = UCA0RXBUF; // TX -> RXed 字符 }


