欢迎来到天天文库
浏览记录
ID:15771032
大小:382.09 KB
页数:12页
时间:2018-08-05
《dsp学习记录(存储器与中断)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、//第一章EMIF的控制//07.09.06昨天发工资了。//sdram.prj向sdram中写数再读数,之后灯闪烁。//csl库:csl.h/csl_irq.h/csl_chip.h/csl_emifa.h1.烧写Flash改动想要学习烧写flash,于是把程序改成闪烁。while(1){for(i=0;i<0x100000;i++){for(j=0;j<40;j++){asm("Nop");}}*LED=(~(*LED))&0x03;}A)直接写到内部RAM中去通过LoadProgram就行了,不过要注意的是,在线修改程序后,一定要把正在运行着的程序停掉之后重新LoadProgra
2、m,那个ReLoadProgram好像不太好使。另外,板子上的复位键是用来复位板子的,复位之后,Ram中的程序还是以前那个,于重新下载没有任何帮助。在程序运行阶段,不要对板子突然停电,这样的话,又要重新启动CCS;也不要在板子停电之后运行程序,不然程序铁定死在那里。B)烧写到flash中去。B1)使用FlashBurn参见文档《烧写步骤》。ò经验:1.flashBurn装不上很有可能是因为以前CCS3.1没有删干净,如果那样,只好重装系统。2.最后一步programmemory如果报错,那么reset一下就可以下载了,不用downloadfbtc,也不用erasememory,不过作了
3、也没什么影响。ò在烧写过程中有三个文件需要自己编写,分别是:C641x_SDRAM.cmd,Boot.asm,load_sdram.cmd在编译源程序时,Cmd文件用来分配rom和ram空间,告诉链接程序怎样计算地址和分配空间。Cmd文件由三部分组成:1.输入/输出定义:这一部分,可以通过ccs的“BuildOption........”菜单设置-lxx.lib连接系统文件xx.lib(rtsxx.lib包括ANSIC标准库、系统启动程序cint00、允许C访问特殊指令的函数和宏)(cslxx.lib)包括使用CSL库编程时的链接。在ccs文件夹下找,大端加e。-oxx.out最终生成
4、的二进制文件命名为xx.out-mxx.map生成映射文件xx.mapCopyrightreservedyfgg-stack0xyyy系统堆栈为yyy字-c初始化romXx.obj链接目标文件2.MEMORY命令:描述系统实际的硬件资源MEMORY{PAGE0:name0[attr]:origin=constant,length=constantPAGEn:namen[attr]:origin=constant,length=constant}通常PAGE0对应rom;PAGE1对应ram。PAGE里包含的区间名字与其后面的参数反映了该区间的起始地址和长度。name:存储空间名称att
5、r:存储空间属性:只读R,只写W,可包含可执行代码X,可以被初始化I。orgin:用来定义存储空间的起始地址Lenth:用来定义存储空间的长度3.SECTION命令:描述“段”如何定位SECTIONS{.SectionName>DistributeNamePAGENumber}系统保留的段名参见相关书籍。本例在boot.asm中声明.boot_load段,在C641x_SDRAM.cmd文件中将其放到了boot区内。在C源程序中,可以利用两个伪函数,将程序中声明的变量或函数放到数据/程序空间内。#pragmaCODE_SECTION(symbol."sectionname")程序空间#
6、pragmaDATA_SECTION(symbol,"sectionname")数据空间此外,配置DSP空间时,注意寄存器PMST中MP/MC,OVLY,DROM位。在使用hex6x命令将.out文件转换成16位.hex文件时,xx.cmd文件用作格式转换命令文件。转换后的十六进制格式文件即是引导表的内容,引导表包含并行引导的标识、程序执行的入口地址、程序存放的目的地址、用户程序及用户程序块长度。具体格式参见spru186.pdf第11章注意:1.注意器件接口、存储器接口和ROM接口三者关系同目标文件数量对应。2.使用SECTION命令指定需要转换的段,需要启动时载入的段。3.imag
7、e模式产生连续的储存区域。4.建立引导表步骤:P255Bootorg指明boottable的地址。Bootsection指明bootroutine的起始地址。Boottable是数据搬移表,而bootroutine是引导程序,被用作引导dsp启动,当该程序执行完毕,程序跳转到-e指明的地址开始执行,若没有-e说明,程序跳转到Copyrightreservedyfggcoff定义的程序入口(boottable中)。如果MP/MC=1;则程序不自举
此文档下载收益归作者所有