J
JaneZhong
Guest
嗨大家!
我发现一个问题
, 中断处理函数是不是在我的IP virtex4设计实施。我会表达我的工作,如果你发现有什么错误,请告诉我。谢谢!
1。添加自定义的IP,实例名称是“测试”,以中断功能。如果写入1 slv_reg0,柜台内将启动。然后
, 因为它会增加所需的值,中断就会发生。中断逻辑'1'使用时,'0'时不使用。
此外,中断处理wite '1'slv_reg1,以改变中断逻辑从'1'到'0'。
2。要修改的MSS和MHS文件。
在讯息处理系统:
开始ppc405_virtex4
港口EICC405EXTINPUTIRQ = test_0_IP2INTC_Irpt
开始测试
港口IP2INTC_Irpt = test_0_IP2INTC_Irpt
在重置:
驱动程序测试
参数int_handler = test_handler,int_port = IP2INTC_Irpt
在EDK8.2 3.Then,修改软件平台设置,“中断处理程序”test_0,
添加test_handler,而不是默认处理程序。
4。中断处理程序如下:
无效test_handler(无效* baseaddr_p)(
Xuint32 *地址;
地址= XPAR_TEST_0_BASEADDR;
printf(“ -进入测试处理器- \ṛ\ N”的);
*(地址1)= 1;
printf(“ -走出测试处理器- \ṛ\ N”的);
)
5。
主要()
(
打印(“ -走进InterruptTest() - \ṛ\ N”的);
/ *初始化例外处理* /
XExc_Init();
打印(“ - XExc_Init() - \ṛ\ N”的);
/ *注册外部中断处理程序* /
XExc_RegisterHandler(XEXC_ID_NON_CRITICAL_INT,(XExceptionHandler)test_handler,(无效*)XPAR_TEST_0_BASEADDR);
打印(“ - XExc_RegisterHandler() - \ṛ\ N”的);
/ *启用每次点击付费的非临界中断* /
XExc_mEnableExceptions(XEXC_NON_CRITICAL);
打印(“ - XExc_mEnableExceptions() - \ṛ\ N”的);
/ *使测试中断* /
*((Xuint32 *)XPAR_TEST_0_BASEADDR)= 0x1;
而(1);
)
6,结果从UART的响应低于
-进入InterruptTest() -
- XExc_Init() -
- XExc_RegisterHandler() -
- XExc_mEnableExceptions() -
但不打印
-进入测试DMA处理器-
-走出测试DMA处理器-
这all.Thank你!
我的电邮是:jane.zhhj(上)gmail.com
欢迎与我联系讨论这个问题
我发现一个问题
, 中断处理函数是不是在我的IP virtex4设计实施。我会表达我的工作,如果你发现有什么错误,请告诉我。谢谢!
1。添加自定义的IP,实例名称是“测试”,以中断功能。如果写入1 slv_reg0,柜台内将启动。然后
, 因为它会增加所需的值,中断就会发生。中断逻辑'1'使用时,'0'时不使用。
此外,中断处理wite '1'slv_reg1,以改变中断逻辑从'1'到'0'。
2。要修改的MSS和MHS文件。
在讯息处理系统:
开始ppc405_virtex4
港口EICC405EXTINPUTIRQ = test_0_IP2INTC_Irpt
开始测试
港口IP2INTC_Irpt = test_0_IP2INTC_Irpt
在重置:
驱动程序测试
参数int_handler = test_handler,int_port = IP2INTC_Irpt
在EDK8.2 3.Then,修改软件平台设置,“中断处理程序”test_0,
添加test_handler,而不是默认处理程序。
4。中断处理程序如下:
无效test_handler(无效* baseaddr_p)(
Xuint32 *地址;
地址= XPAR_TEST_0_BASEADDR;
printf(“ -进入测试处理器- \ṛ\ N”的);
*(地址1)= 1;
printf(“ -走出测试处理器- \ṛ\ N”的);
)
5。
主要()
(
打印(“ -走进InterruptTest() - \ṛ\ N”的);
/ *初始化例外处理* /
XExc_Init();
打印(“ - XExc_Init() - \ṛ\ N”的);
/ *注册外部中断处理程序* /
XExc_RegisterHandler(XEXC_ID_NON_CRITICAL_INT,(XExceptionHandler)test_handler,(无效*)XPAR_TEST_0_BASEADDR);
打印(“ - XExc_RegisterHandler() - \ṛ\ N”的);
/ *启用每次点击付费的非临界中断* /
XExc_mEnableExceptions(XEXC_NON_CRITICAL);
打印(“ - XExc_mEnableExceptions() - \ṛ\ N”的);
/ *使测试中断* /
*((Xuint32 *)XPAR_TEST_0_BASEADDR)= 0x1;
而(1);
)
6,结果从UART的响应低于
-进入InterruptTest() -
- XExc_Init() -
- XExc_RegisterHandler() -
- XExc_mEnableExceptions() -
但不打印
-进入测试DMA处理器-
-走出测试DMA处理器-
这all.Thank你!
我的电邮是:jane.zhhj(上)gmail.com
欢迎与我联系讨论这个问题