配置USB中断向量与固件程序-程正兴《小波分析算法与应用》实战

需积分: 32 111 下载量 9 浏览量 更新于2024-08-10 收藏 9.83MB PDF 举报
"程正兴的《小波分析算法与应用》一书中,讲解了如何配置中断向量列表,这是在Cortex-M3处理器上进行中断处理的关键步骤。书中的例子以LPC1700系列微控制器为例,该控制器广泛应用于嵌入式系统设计。在配置中断向量的过程中,主要涉及以下几个步骤: 1. 在源代码中包含固件程序的配置头文件`usbDevConfig.h`,确保头文件路径正确,避免编译错误。 2. 在`Vector_table.c`文件中声明USB中断服务程序,例如`usbDevException(void)`,这将在USB中断发生时被调用。 3. 在`Vector_cfg.h`头文件中定义中断向量列表,将USB中断处理函数指针设置为`usbDevException`,例如`#define USB_IRQ_HANDLER usbDevException`,这样当USB中断发生时,系统会自动跳转到这个服务程序执行中断处理。 4. 在`main.c`文件中,`main()`函数初始化系统并调用`usbDeviceDemo()`。在`usbDeviceDemo()`函数内,设置USB中断的优先级并启用中断,调用`zyIsrSet`函数,并通过`usbDevInit()`初始化USB控制器。 中断处理是嵌入式系统中一个重要的部分,它允许系统在执行主任务的同时响应突发事件。在Cortex-M3处理器上,中断向量列表扮演着至关重要的角色,它定义了每个中断源对应的处理程序地址。当特定中断发生时,处理器会根据中断向量表找到对应的中断服务程序并执行。 此外,书中还提到了LPC1700微控制器的其他功能部件,如系统节拍定时器、脉宽调制器(PWM)、电机控制PWM(MCPWM)、正交编码接口(QEI)以及实时时钟(RTC)。这些部件都是嵌入式系统中常见的外设,它们各自的章节详细介绍了其工作原理、特性、寄存器描述、中断设置以及使用示例,对于理解和利用这些硬件资源进行系统设计十分有帮助。 例如,系统节拍定时器用于系统时钟同步,脉宽调制器可以用于控制电机速度或信号调制,电机控制PWM专为电机控制设计,提供更高级的功能,正交编码接口常用于位置检测,而实时时钟则为系统提供了准确的时间基准和报警功能。这些章节的详细内容包括各个部件的概述、特性、结构、寄存器描述、中断设置以及实际应用中的操作方法,为读者提供了全面的参考资料。"