1. 编译工程的时候出现一个问题,如下

 specifies large memory model, which is not compatible with small memory

2. 修改工程设置如下,编译通过,好像是大小端的设置。

3. 代码如下,代码很简单,每次按键的时候,打印一句话,测试一下,疑问,怎么把引脚和中断对应起来的?

 void INTconfig()
{
/* Temporarily disable all maskable interrupts */ IRQ_setVecs((Uint32)(&VECSTART)); /* Temporarily disable all maskable interrupts */ old_intm = IRQ_globalDisable(); /* Get Event Id associated with External INT1(8019), for use with */
eventId0 = IRQ_EVT_INT0; /* Clear any pending INT1 interrupts */ IRQ_clear(eventId0); /* Place interrupt service routine address at */ /* associated vector location */ IRQ_plug(eventId0,&int1); /* Enable INT1(8019) interrupt */ IRQ_enable(eventId0); /* Enable all maskable interrupts */ IRQ_globalEnable();
} main()
{
/*初始化CSL库*/
CSL_init(); /*EMIF为全EMIF接口*/
CHIP_RSET(XBSR,0x0a01); /*设置系统的运行速度为144MHz*/
PLL_config(&myConfig); //设置并使能5509A芯片的INT0中断(EXINT中断)
INTconfig(); while();
} //External INT0(EXINT)中断处理函数
interrupt void int1()
{
printf("EXINT ouccers\n");
}

4. 看下按键引脚,看出来DSP是有专门的中断引脚,感觉没有STM32吊,STM32的普通GPIO都可以做中断引脚的啊。

5. 实际测试,发现指针跑飞了,下载完.out文件之后,指针指向这里,原因暂时不清楚,估计要研究研究了

6. VC5509A上电之后,首先从0xffff00处执行指令 .ivec 0xff8000,程序转入这里之后,0xff8000存放的是芯片内部固化的bootloader,bootloader根据外部引脚的高低电平选择启动模式。

突然出现一个问题,点击connecet连接目标板,CCS就自动关掉了。

之后开始进入C程序中断向量表,启动_c_int00函数,这个函数是在rts库里面的。

 _VECSTART:

         .ivec _c_int00,c54x_stk

7. 看下VC5509A的内存空间,DRAM在8000-10000的空间

对比下CMD文件,下面的好像是字地址,上面的是字节地址,所以需要乘以2,也就是说程序是直接放到RAM里面运行的,掉电会丢失的

 MEMORY
{
PAGE :
PROG0(RWX) : origin = 04000h length = 08000h
P_VECT(RIX) : origin = 00200h length = 00100h
PAGE :
DATA0(RW) : origin = 0C000h length = 04000h
}

8.

DSP5509的中断学习-第4篇的更多相关文章

  1. 【转】Linux 中断学习之小试牛刀篇

    原文网址:http://www.linuxidc.com/Linux/2011-02/32129.htm 前言 在前面分析了中断的基本原理后,就可以写一个内核中断程序来体验以下,也可以借此程序继续深入 ...

  2. DSP5509的GPIO学习-第5篇

    1. 使用CCS V6.1版本,目前已经不局限于仅仅把实验搞清楚了,要深入去探究内部的原理,本章看下GPIO实验 2. 在CCS启动的时候,提示,这个问题是什么,XDAIS是什么?XDAIS (eXp ...

  3. PHP学习笔记 - 进阶篇(10)

    PHP学习笔记 - 进阶篇(10) 异常处理 抛出一个异常 从PHP5开始,PHP支持异常处理,异常处理是面向对象一个重要特性,PHP代码中的异常通过throw抛出,异常抛出之后,后面的代码将不会再被 ...

  4. 一步步学习javascript基础篇(0):开篇索引

    索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...

  5. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

  6. Python3学习(3)-高级篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 文件读写 源文件test.txt line1 line2 line3 读取文件内容 f = ope ...

  7. Python3学习(2)-中级篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 切片:取数组.元组中的部分元素 L=['Jack','Mick','Leon','Jane','A ...

  8. Python3学习(1)-基础篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 安装(MAC) 直接运行: brew install python3 输入:python3 --v ...

  9. ASP.NET MVC学习之过滤器篇(2)

    下面我们继续之前的ASP.NET MVC学习之过滤器篇(1)进行学习. 3.动作过滤器 顾名思义,这个过滤器就是在动作方法调用前与调用后响应的.我们可以在调用前更改实际调用的动作,也可以在动作调用完成 ...

随机推荐

  1. 阅读HandlerInterceptor接口源码的理解

    一.阅读接口类注释 我先理解的方法,方法都看懂了类注释自然而然明白了.所以此处略. 二.阅读preHandle()方法注释 Intercept the execution of a handler. ...

  2. Hibernate映射Map属性2

    Hibernate在映射Map属性时生成映射文件.需要注意的一些地方.下面是我的一个例子. Java类如下 public class NameAndNumber { private Integer i ...

  3. C 语言实现多态的原理:函数指针

    C语言实现多态的原理:函数指针 何为函数指针?答案:C Programming Language. 能够查阅下,从原理上来讲,就是一个内存地址.跳过去运行相应的代码段. 既然如此,在运行时决定跳到哪个 ...

  4. jQuery 实现改变图片指定区域的颜色

    javascript本身无法改变图片的颜色,不过我们可以通过一些技巧来实现一样的效果. 1.首先我们要知道图片哪些区域需要改变颜色,这里我们可以用执点地图的方法来弄 例1: <img src=& ...

  5. BZOJ4337:[BJOI2015]树的同构(树hash)

    Description 树是一种很常见的数据结构. 我们把N个点,N-1条边的连通无向图称为树. 若将某个点作为根,从根开始遍历,则其它的点都有一个前驱,这个树就成为有根树. 对于两个树T1和T2,如 ...

  6. 蓝牙BLE4.0的LL层数据和L2CAP层数据的区分与理解

    一直搞不太清楚蓝牙BLE协议,不知道LL层和L2CAP层是如何划分的,后来博士给我讲了讲就理解了,写下来,做个记录: 1. 我们知道,除了蓝牙5.1新出的CTE,所有的BLE都是如下类型的包: 对于连 ...

  7. 在.Net项目中使用Redis作为缓存服务

    转自:http://www.cnblogs.com/hohoa/p/5771255.html 最近由于项目需要,在系统缓存服务部分上了redis,终于有机会在实际开发中玩一下,之前都是自己随便看看写写 ...

  8. 使用ByPropertyName进行管道传输

    管道参数绑定的两种方式: 可通过 help command -full查看 不同:简单讲ByPropertyName可以使B的多个参数被同时使用 使用ByPropertyName进行管道传输: 建立一 ...

  9. ECMAScript6 Generator & async

    Generator Generator函数是一个状态机,执行后返回一个遍历器对象.调用遍历器对象的.next()函数获取下一个状态. Generator是一个普通的函数,函数内部使用yield关键字定 ...

  10. ARM Cortex-A53 Cache与内存的映射关系以及Cache的一致性分析

    ARM Cortex-A53 Cache与内存的映射关系以及Cache的一致性分析 题记:如果文章有理解不对的地方,欢迎大家批评指正,谢谢大家. 摘要:本文以Cortex-A53为例,首先分析Cach ...