下面是使用创龙的程序修改后的 不知道为什么,运行不了:
麻烦大家看看:
如下:
/****************************************************************************/
/* */
/* 延时 */
/* */
/****************************************************************************/
Void Delay(UInt n)
{
UInt i;
for(i=n; i>0; i--);
}
/****************************************************************************/
/* */
/* 空闲任务 */
/* */
/****************************************************************************/
Void LEDStatus(Void)
{
System_printf("Enter LEDStatusn");
GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_LOW);
GPIOPinWrite(SOC_GPIO_0_REGS, 110, GPIO_PIN_LOW);
Task_sleep(5000);
GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_HIGH);
GPIOPinWrite(SOC_GPIO_0_REGS, 110, GPIO_PIN_HIGH);
System_printf("Exit LEDStatusn");
System_flush();
}
/****************************************************************************/
/* */
/* 任务 2 */
/* */
/****************************************************************************/
Void led_timer3(UArg a0)
{
System_printf("Enter taskMain1()n");
flag2=1;
System_printf("exit taskMain1()n");
System_flush();
}
/****************************************************************************/
/* */
/* 任务 1 */
/* */
/****************************************************************************/
Void Timer_Isr(UArg a0)
{
System_printf("Enter taskMain()n");
flag1=1;
System_printf("exit taskMain()n");
System_flush();
}
Void led2(void)
{
while(flag2)
{
flag2=0;
GPIOPinWrite(SOC_GPIO_0_REGS, 1, 0);
GPIOPinWrite(SOC_GPIO_0_REGS, 2, 0);
Delay(0x00FFFFFF);
GPIOPinWrite(SOC_GPIO_0_REGS, 1, 1);
GPIOPinWrite(SOC_GPIO_0_REGS, 2, 1);
}
}
Void led1(void)
{
while(flag1)
{
flag1=0;
GPIOPinWrite(SOC_GPIO_0_REGS, 6, 0);
GPIOPinWrite(SOC_GPIO_0_REGS, 3, 0);
// 延时
Delay(0x00FFFFFF);
GPIOPinWrite(SOC_GPIO_0_REGS, 6, 1);
GPIOPinWrite(SOC_GPIO_0_REGS, 3, 1);
}
}
/****************************************************************************/
/* */
/* 主函数 */
/* */
/****************************************************************************/
Int main()
{
// 外设使能配置
PSCInit();
// 管脚复用配置
GPIOBankPinMuxSet();
// GPIO 管脚初始化
GPIOBankPinInit();
// 启动 SYS/BIOS 系统
BIOS_start();
led1();
led2();
return(0);
}IS
报错如下:Enter LEDStatus
Enter taskMain()
exit taskMain()
ti.sy***ios.gates.GateMutex: line 97: assertion failure: A_badContext: bad calling context. See GateMutex API doc for details.
xdc.runtime.Error.raise: terminating execution
5、XDCtools