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. IntelliJ IDEA自动补全变量名称和属性名称的快捷键

    自动补全变量名称 : Ctrl + Alt + v 自动补全属性名称 : Ctrl + Alt + f

  2. Intellij IDEA 代码提示忽略大小写

    1.0 File >>Settings 2.0 Editor >> General >> Code Completion 如下图 选择 None

  3. 阅读Configuration源码

    一.阅读类注释 ①.Configuration的实例允许应用程序使用指定的属性映射文件来创建一个SessionFactory. ②.通常在一个应用程序中创建一个单一的Configuration对象,· ...

  4. 对于view的深入理解,续篇(一)重写ViewGroup的onDraw

    在上一篇文章中,不仅熟悉了动态设定布局的方法,而且也对view的绘制流程有所了解.于是我继续做了下面几个实验,发现了一个问题.如果对view的绘制流程不是很明白,可以看看我的上一篇文章的介绍,点击下面 ...

  5. async--ajax异步传输

    如图:轨迹点组编号依赖所属路口的设置. 所以ajax是异步执行,获取到所属路口还没执行完,就已经执行到根据所述路口获取轨迹点组编号,所以获取不到轨迹点组编号. async:false改成同步执行.就没 ...

  6. python-常用模块之os、sys

    一.os os模块包含普遍的操作系统功能: os.pardir #获取当前目录的父目录字符串名:('..') os.makedirs('dirname1/dirname2') #可生成多层递归目录 o ...

  7. 创建Cookie抛出异常:java.lang.IllegalArgumentException: Control character in cookie value

    调用Cookie对象的构造函数可以创建Cookie.Cookie对象的构造函数有两个字符串参数:Cookie名字和Cookie值.   名字和值都不能包含空白字符以及下列字符:[ ] ( ) < ...

  8. ABI是什么? Swift ABI稳定有什么好处?

    ABI是什么? 在软件开发中, 应用程序机器二元码界面(Application Binary Interface 简称ABI)指两个程序模块间的接口; 通常其中一个车还给你徐模块会是库或者操作系统提供 ...

  9. c#随便聊聊数据库操作

    最近在学习web后台以及Python,到了程序员的转折年纪了,哎.估计很久不会写博文了.言归正传. 在原理的数据库连接池HiKari项目上.我扩展了独立的3个库,说是3个库,其实原本该是一个库.先聊聊 ...

  10. 07.安装及使用gitlub

    博客为日常工作学习积累总结: 1.安装gitlub sudo yum install -y curl policycoreutils-python openssh-server openssh-cli ...