社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 685|回复: 1

[求助] 请教MSP430FR5739串口发送问题

[复制链接]

2540

TA的帖子

19

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2017-2-14 20:36:15 | 显示全部楼层 |阅读模式
在Timer0中断里面进行数据发送,1S发送一次数据,代码如下:

//Timer0 Interrupt
#if defined(__TI_COMPILER_VERSION__) || defined(__iar_SYSTEMS_ICC__)
#pragma vector = TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(TIMER0_A0_VECTOR))) Timer_A (void)
#else
#error Compiler not supported!
#endif
{
INT_FLAG = 1;
LED1_BLINK;
curr_timestp ++;
timestap_count ++;
wdt_count ++;
*(time_t*)FRAM_USER_START_ADDR = curr_timestp;
if(OSW_TEST_FLAG)
{
unsigned long temp1 = (osw_times_count * 1.0 / OSW_SWITCH_TIMES) * 100000;
if(osw_process_rate != temp1)
{
PutString("\t");
PutLong(osw_times_count);
PutString("\n");
}
}
}

程序运行后每隔十几个小时就会卡死,卡死在

while (!(UCA1ifg&UCTXIFG));这里,每次都是卡死在PutString函数里面,函数代码如下:

void PutString(char *str)
{
unsigned char temp;
unsigned char i=0;
while((temp = str[i++]) != '\0')
{
while (!(UCA1IFG&UCTXIFG));
UCA1TXBUF = temp;
}
},

定时器初始化函数:

void TimerAInit()
{
TA0CCTL0 = CCIE; // TACCR0 interrupt enabled
TA0CCR0 = 32768;
TA0CTL = TASSEL_1 + MC_1; // SMclk, UP mode
}串口初始化函数,开了两个串口,目前只有UCA1串口出问题

void uartInit()
{

// Configure UART pins
P2SEL1 |= BIT0 + BIT1 + BIT5 + BIT6;
P2SEL0 &= ~(BIT0 + BIT1 + BIT5 + BIT6);
// Configure UART 0
UCA0CTL1 |= UCSWRST;
UCA0CTL1 = UCSSEL_1; // Set ACLK = 32768 as UCBRCLK
UCA0BR0 = 3; // 9600 baud
UCA0BR1 = 0;
UCA0MCTLW |= 0x5300; // 32768/9600 - INT(32768/9600)=0.41
// UCBRSx value = 0x53 (See UG)
UCA0CTL1 &= ~UCSWRST; // release from reset
UCA0IE |= UCRXIE; // Enable RX interrupt
// Configure UART 1
UCA1CTL1 |= UCSWRST;
UCA1CTL1 = UCSSEL_1; // Set ACLK = 32768 as UCBRCLK
UCA1BR0 = 3; // 9600 baud
UCA1BR1 = 0;
UCA1MCTLW |= 0x5300; // 32768/9600 - INT(32768/9600)=0.41
// UCBRSx value = 0x53 (See UG)
UCA1CTL1 &= ~UCSWRST; // release from reset
UCA1IE |= UCRXIE; // Enable RX interrupt
}

这个发送数据的程序测试了几次都是一段时间后会卡死,求大家帮助

此帖出自MSP430论坛


回复

使用道具 举报

1622

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

发表于 2017-2-18 10:39:58 | 显示全部楼层
在正常运行的十几个小时内,数据发送都是正常的吗?


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-11-20 00:01 , Processed in 0.194155 second(s), 16 queries , Redis On.

快速回复 返回顶部 返回列表