- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
掌握用CCSsimulator模拟中断的方法。
实验2中断模拟实验 试验目的 掌握中断的含义和中断响应过程。 掌握用CCS simulator模拟中断的方法。 掌握中断应用程序的编写方法。 摘要 复习C54x中断操作 模拟中断的方法 实验内容及步骤 试验原理 中断是一些由硬件或软件产生的信号,能使CPU暂时停止执行正在执行的程序,转而执行由DSP程序开发者编写的中断服务程序(ISR—— Interrupt Service Routine) C54x既支持软件中断也支持硬件中断 软件中断,是由指令 (INTR、TRAP、RESET) 产生的。 硬件中断: 外部中断——通过DSP外部中断引脚接收到的片外设备产生的中断(例如ADC/DAC向DSP发出的中断) 片上外设中断——DSP片上外设 (如定时器、串口、DMA等) 向CPU发出的中断 当同一CPU时钟周期内有多个硬件中断发生时,CPU会按照中断优先级对它们进行响应 ! 软件中断无优先级。 可屏蔽和非可屏蔽中断 DSP的中断可分为两大类: 可屏蔽 (Maskable) 中断:可以通过软件被禁止/使能的中断。被禁止掉的中断即使产生,CPU 也不会去响应 !被使能的中断,当它产生时 CPU 就会去响应它 ! 非可屏蔽 (Nonmaskable) 中断:不能被禁止的中断。当这些中断产生时 CPU 会无条件响应 !C54x 的非可屏蔽中断有: 所有的软件中断 ! 外部中断 NMI (DSP外部中断引脚NMI) 复位中断 RS (DSP外部中断引脚RS) CPU在响应 NMI 中断时,将不能被任何其他中断打断 !包括复位中断 ! IFR IFR (Interrupt Flag Register) 中断标志寄存器 (地址0x01) 当一个可屏蔽中断产生时,IFR中相应的中断标志位会被置1,当CPU响应该中断后,该标志位才被清除 ! 清除中断标志还可通过: 软件或硬件复位; 向标志位写1; 使用INTR #K指令响应该中断 IMR IMR (Interrupt Mask Register) 中断屏蔽寄存器 (地址0x00) 当 ST1 的 INTM 位为 0 时,IMR 可用于禁止和使能可屏蔽中断,向 IMR 中的某个屏蔽位写 1 就能使能相应的可屏蔽中断 !如果写 0,则相应的中断被禁止 ! 摘要 复习C54x中断操作 模拟中断的方法 实验内容及步骤 Simulator 下模拟中断 编写引脚文件,指示出中断产生的时间! 将引脚文件和相应的中断引脚进行“连接”! 装载并运行程序后,CCS会根据引脚文件中设置的时间来产生模拟的中断信号! 引脚文件(.txt) 引脚文件和中断引脚的“连接” Tools → Pin connect 实验内容 在C54x Device Simulator模式下,编写引脚文件模拟部中断0 (INT0) 的产生。 编写程序响应 INT0 中断。 实验步骤 使用CCS Setup添加“C5402 Device Simulator”配置到系统中;运行CCS,进入Simulator工作模式。 编写引脚文件 intsim.txt 包含: 10000 (+10000) rpt EOS 使用 Tools ?Pin Connect 工具将该引脚文件连接到引脚 INT0。 建立一个CCS项目,包含下列文件 main.c 使能并打开中断 isr.c 中断服务函数 vectors.asm 中断向量表 linker.cmd 链接器命令文件 实验环境建立 实验内容和步骤 构建可执行模块。 装载并运行后观察结果。 修改程序,使其响应INT1中断。 重新构建、装载并运行后观察结果。 实验报告要求 中断发生时程序是如何转移到ISR的? 如何编程实现对中断的响应 ? 附.c程序和.asm程序(中断向量表),并添加注释,说明一些关键语句的含义。 * * 13 12 11 10 9 8 7 DMAC5 DMAC4 BXINT1 /DMAC3 BRINT1 /DMAC2 HPINT INT3 TINT1 /DMAC1 Reserved 15-14 C5402 DSP 的 IFR 寄存器 5 4 3 2 1 0 BXINT0 BRINT0 TINT0 INT2 INT1 INT0 DMAC0 6 13 12 11 10 9 8 7 DMAC5 DMAC4 BXINT1 /DMAC3 BRINT1 /DMAC2 HPINT INT3 TINT1 /DMAC1 Reserved 15-14 C5402 DSP 的 IMR 寄存器 5 4 3 2 1 0 BXINT0 BRINT0 TINT0 INT2 INT1 INT0 DMAC0 6 中断模式位,可屏蔽中断的全局开关 ! =0 全局开 =1 全局关 11
文档评论(0)