5208|1

16

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

转帖]我的DSP之路—2月份学习记录 [复制链接]

转载请注明出自DSP交流网 DSP学习第一论坛 DSP技术应用与推广平台 DSP开发服务平台 http://www.hellodsp.com/bbs/,本贴地址:http://www.hellodsp.com/bbs/viewthread.php?tid=2954

2008-2-15
1.程序存储空间 数据存储空间 I/O地址空间
与Flash DARAM SARAM 的区别。
不同的存储空间用不同的总线读写。
Flash DARAM SARAM是物理上的存储器,而映射是把这些存储器做为某个存储空间的实际的存储单元。
空间是概念上的,存储器是物理上的。
LF240X有544字的DARAM B0、B1、B2,映射为数据存储空间,当CNF=1时,B0为程序存储空间。2K字的SARAM可以通过软件配置为数据存储空间或程序存储空间。FLASH则为永久的程序存储模块。
程序存储空间是〔B0、〕FLASH、外部存储器(LF2406没有)。
数据存储空间是〔B0、〕B1、B2、SARAM、外设寄存器。
2.什么是I/O地址空间?I/O地址空间的外部扩展空间与程序或数据存储空间的外部存储器又有什么区别?
I/O空间用IN OUT指令访问。I/O空间访问有程序存储器和数据存储器访问两种。可以由IS信号高低来区分。访问外部并行I/O端口与访问程序、数据存储器复用相同的地址、数据总线。
2008-2-26
上电时DP值不定,所以所有的程序都要初始化DP。

2008-2-26
外部符号:在一个模块中定义,而在另一个模块中引用的符号。
.def 在当前模块中定义,并可在别的模块中引用的符号。相当于C中的定义全局变量。
.ref 在当前模块中引用,但在别的模块中定义的符号。相当于C中的声明外部变量。
.global 可以是以上的随便一种。即如果符号未被定义,则定义符号,并可以别的模块中引
用。如果符号已经定义,则在当前模块中引用。

2008-2-26
常用的汇编伪指令
.end 汇编程序结束
.include 包括一个已编了的汇编程序,一般为.H的头文件
.copy 包括一个已编了的汇编程序,一般为.ASM的汇编文件
.title 打印一个文件标题,一般紧跟其后为用双引号引起来的源程序名
.int 用来设置一个或多个16位无符号整型常数 .int value[,…,valuen]
.word value[,…,valuen]
.set 赋给符号一个常数。DATA .set 0001b
.def
.ref
.global
.bss
.data
.sect
.usect
.text
.asect
条件汇编:
.if
.elseif
.else
.endif
.loop表达式表示要按照表达式所指定的次数进行重复汇编的代码块。
.break表达式为假继续重复汇编,为真时,直接跳到.endloop后面的代码。
.endloop表示可重复代码块的结束。
这三条条件汇编伪指令有什么用处?

2008-2-27
在.gel文件里有GEL_WatchAdd("*0x70A8,x","RESULT0");
还是否要建个头文件,RESULT0 .set 70A8H来定义寄存器地址?
.gel文件起什么作用?
2008-2-27
编译项目时,出再没有源文件,删除工程里的源文件再添加,还是出现同样的错误。
打开Build Options->Compiler->Files 里的Obj Directory有文件路径,删除后,错误消失。
2008-2-27
关于.end是要在每个汇编文件的结尾?如果没有写的话也不会出错,为什么?
2008-2-27
宏定义
Macname .macro[parameter1][,parameter2][…]
Model statements
[.mexit]
.endm
相当于C的:#define Macname ( parameter1, parameter2,…) Model statements
Macname :宏名,前32位有效。
.macro:宏定义伪指令
Parameter:宏定义的参数
Model statements:宏程序语句
.mexit:跳到.endm伪指令语句
.endm:终止宏定义
例如:
SBIT0 .macro DMA, MASK ;Clear bit Macro
LACC DMA
AND #(0FFFFh-MASK)
SACL DMA
.endm
宏调用:
SBIT0 X,Y
2008-2-27
编译连接都通过,为什么生成的.out文件无法下载,提示0x0地址数据确认错误。
查看Disassembly,8000h前面的数据全为FF,8000h~87ffh即SARAM区里有程序PRG_inti,8800H后的数据全和87FFH里的数据相同。
(是否因为没有外部存储器,所以一往下拉,87FFH后面的数据就和87FFH里的数据一样。但从最后面向上翻,数据又都成了0FFFFH)
.map文件又正确。
8000h~87ffh里的程序是否是用来清除、擦除、烧写FLASH用的?其只要打开CSS就存在。
刚打开,8800H后面不存在地址,这是LF2406A芯片。

最新回复

对新手的学习还是有用处的,多谢  详情 回复 发表于 2008-6-26 10:49
点赞 关注
 

回复
举报

25

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
对新手的学习还是有用处的,多谢
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
立即报名 | 2025 瑞萨电子工业以太网技术日即将开启!
3月-4月 深圳、广州、北京、苏州、西安、上海 走进全国6城
2025瑞萨电子工业以太网技术巡回沙龙聚焦工业4.0核心需求,为工程师与企业决策者提供实时通信技术最佳解决方案。
预报从速,好礼等您拿~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表