CCS Simultator模拟外部中断

 CCS由于有软件仿真器功能,使得很多算法性的东西都可以在没有实际硬件的条件下进行验证,这大大缩小个人的开发成本;其实软件仿真器还可以模拟外部硬件的功能,这样使得我们在软件仿真器下能最大程序逼近实际项目,以下是软件仿真器所具有的功能:

1.在主机上执行用户开发的DSP程序

2.修改和检查寄存器

3.外设,cache,流水线的时序仿真

4.设置断点,单步执行,产生中断

5.跟踪ACC,PC,AR表达式的值等。

6.对非法操作码和无效数据提供出错信息

7.文件方式快速存储和调用仿真参数

8.反汇编

9.周期计数并显示

其中我们在软件调试中很有可能要模拟外部的一些触发信号,例如我们要模拟数据采集功能,那么数据采集结束后就需要告知CPU进行处理。这里就如果进行模拟中断的步骤进行说明:

1.使用CCS setup选择"c6455  Device Smulator "配置到系统中,运行CCS进入Simultator工作模式

2.编写引脚文件pin.txt,包含如下内容:

1000  (+1000)  rpt  EOS
上面内容的思表示分别在第 1000、2000、3000、....个CPU clock时产生中断 ,无限循环

引脚文件大概有以下几种模式:

3.在CCS中使用 Tools ---->Pin Connect 工具将该引脚文件连接到引脚 INT5,表示我们模拟外部5可屏蔽中断,如图所示

4.建立一个DSP/BIOS项目,并编写INT5中断处理函数isr_handle5

interrupt void isr_handle5()
{
   printf("handle 5 happen\n");
}

5.在DSP/BIOS配置文件中,将HWI_INT5按如下配置

6.在mian函数中加入使能中断5的函数

 C64_enableIER( 1 << 5 );

最后执行函数,会在stdout中显示如下信息,整个设置完毕

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在使用CCS (Code Composer Studio) 配置DSP28335的中断时,主要涉及到以下几个步骤: ### 步骤一:初始化中断系统 在开始处理中断之前,需要对中断系统进行初始化设置。这包括开启中断源、配置中断向量表等。通常在处理器启动并进入操作系统之前完成这一过程。 #### 初始化中断配置: 1. **定义中断向量**:在你的程序中声明一个中断向量数组,用于存储各个中断服务函数的地址。 2. **配置中断优先级**:通过中断控制寄存器(如PSCINTCON、PSMINTCON)配置中断优先级和中断屏蔽状态。 3. **配置中断源**:确定哪些外部事件应该触发中断,并将它们对应到特定的中断编号上。 ### 步骤二:编写中断服务函数 接下来,你需要为每个预期的中断情况编写对应的中断服务函数(ISR)。这些函数会自动响应处理器接收到的中断信号,并处理相应事件。 例如,在处理一个外部中断的情况下,中断服务函数可能会检查某个引脚的状态变化,并据此调整系统状态或触发其他操作。 ```c void EXTI_IRQHandler(void) { // Check the status of external interrupt flag if(__HAL_EXTI_GET_IT_SOURCE(EXTI_Line_0)) { // Perform your actions based on the event detected by the external interrupt __HAL_EXTI_CLEAR_IT(EXTI_Line_0); // Clear the interrupt flag after handling it } } ``` ### 步骤三:注册中断处理 在完成中断服务函数的编写后,需要将其注册到相应的中断向量表中。这通常由CCS的IDE自动生成,当项目构建完成后,生成的链接器脚本文件(如.ld)包含了中断向量的映射信息。 ### 步骤四:测试中断功能 最后,运行你的程序,并通过硬件触发中断,比如模拟外部输入的变化,观察是否能够成功触发并执行中断服务函数。 ### 关注点: - **中断嵌套**:注意中断之间的嵌套情况,避免中断处理过程中引发新的中断导致混乱。 - **中断优先级**:确保关键操作的中断优先级别足够高,以防低优先级中断打断重要任务的执行。 - **资源保护**:在中断服务函数内处理数据时,要确保所有必要的资源都在安全状态下访问。 ### 相关问题: 1. DSP28335 中断系统的主要组成部分是什么? 2. 怎样在CCS调试中断服务函数的错误? 3. 当中断频繁触发时,如何优化中断处理效率? 通过以上步骤和关注点,你可以有效地利用CCS配置DSP28335的中断系统,为你的实时应用提供可靠的中断支持。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值