TI中文支持网
TI专业的中文技术问题搜集分享网站

C6748 SYS/BIOS 初始化uart2接收中断

请问,ti技术专家帮忙看看代码哪有问题。或者有参考例程吗。

初始化uart2中断代码如下,没起作用,无法进入中断函数UART2Isr()。

void UART2Isr(UArg arg)
{
//UARTPuts("\r\n ============Test Start===========.\r\n", -1);
System_printf("Running\n");
System_flush();
}
/*
* ======== main ========
*/
Int main()
{ /* Enabling the PSC for UART2.*/
PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_UART2, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);

/* Setup PINMUX */
UARTPinMuxSetup(2, FALSE);

/* Enabling the transmitter and receiver*/
UARTEnable(SOC_UART_2_REGS);

/* Configuring the UART parameters*/
UARTConfigSetExpClk(SOC_UART_2_REGS, SOC_UART_2_MODULE_FREQ, BAUD_115200, UART_WORDL_8BITS, UART_OVER_SAMP_RATE_16);

/* Enabling the FIFO and flushing the Tx and Rx FIFOs.*/
UARTFIFOEnable(SOC_UART_2_REGS);

/* Setting the UART Receiver Trigger Level*/
UARTFIFOLevelSet(SOC_UART_2_REGS, UART_RX_TRIG_LEVEL_1);

// 动态创建硬件中断
Hwi_Handle hwi;
Hwi_Params hwiParams;
Error_Block eb;

Error_init(&eb);

// 使用默认值初始化参数
Hwi_Params_init(&hwiParams);
// 中断事件
hwiParams.eventId = 69;
// 传递到中断服务函数的参数
hwiParams.arg = 1;
// 不允许该中断自身嵌套
// hwiParams.maskSetting = Hwi_MaskingOption_SELF;
// 使能中断
hwiParams.enableInt = 1;
// 可屏蔽中断
// 中断服务函数 hwiMain
hwi = Hwi_create(4, &UART2Isr, &hwiParams, &eb);

if (hwi == NULL)
System_abort("I2C hwi create failed");

Hwi_enable();
Hwi_enableInterrupt(4);

BIOS_start(); /* does not return */
return(0);
}

Denny%20Yang99373:

可以把这个问题分成两部分。

1,UART接受部分,看看非中断情况下能不能收到数据。

2,中断部分,在1没问题的情况下,看看是不是中断什么地方没有配置好。

赞(0)
未经允许不得转载:TI中文支持网 » C6748 SYS/BIOS 初始化uart2接收中断
分享到: 更多 (0)