打印

DSP 2812 疑问

[复制链接]
1642|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
DSP, pi, IO, GPIO, gp
本帖最后由 求进的心 于 2013-9-21 21:43 编辑

DSP单机上电引导顺序(微计算机模式(XMPNMC= 0)):
1、上电复位
2、执行iniboot程序
3、根据GPIOF4(SCITXDA)、GPIOF12(MDXA)、GPIOF3(SPISTEA)、GPIOF2(SPICLK)的状态选择boot模式,假设选择了flash。
GPIOF4(SCITXDA)                       GPIOF12(MDXA)                                   GPIOF3(SPISTEA)                            GPIOF2(SPICLK)                         boot模式
          1                                                     X                                                               X                                                           X                                              flash
         0                                                     0                                                                1                                                            0                                             H0 SARAM
        0                                                      0                                                                0                                                            1                                             OTP

4、运行codestart程序
5、运行_c_int00程序
6、运行main函数
疑问:
1、CPU如何判断引脚GPIOF4(SCITXDA)、GPIOF12(MDXA)、GPIOF3(SPISTEA)、GPIOF2(SPICLK)的状态?通过查看寄存器GPIOFDAT的相应的位吗?另外,如何在DSP刚上电的时候就改变这些引脚的值呢?我觉得通过软件肯定是行不通的,因为我们的程序是在选择boot模式之后才开始运行的,在这个阶段(选择boot模式阶段),寄存器GPIOFDAT的值都是默认值,只能通过外围电路强行拉低或拉高。请问是这样的吗?
2、codestart程序是只在DSP下线运行时才需要,还是在在线仿真模式时也是需要的呢?我看TI的官方例程只是在工程中添加了一个DSP281x_CodeStartBranch.asm文件,然后再F2812.cmd文件中把该段链接到一个单独的段,load到对应的地址,源程序的其他地方没就没看到codestart程序。是只要把codestart程序load到对应的地址,带DSP上电引导后,就会直接运行了是吧?还要不要再在CCS中设置什么?
3、TI官方例程中有两个cmd文件:F2812.cmd和DSP281x_Headers_nonBIOS.cmd,这个哪个是SRAM.cmd?哪个是FLASH.cmd?看名字F2812.cmd应该是SRAM.cmd,DSP281x_Headers_nonBIOS.cmd是FLASH.cmd。但是看内容又觉得DSP281x_Headers_nonBIOS.cmd是SRAM.cmd,而F2812.cmd是FLASH.cmd。一次编译只需要一个cmd文件吧?




Dsections.png (18.31 KB )

DSP281x_Headers_nonBIOS.cmd文件中SECTIONS

DSP281x_Headers_nonBIOS.cmd文件中SECTIONS

Dmemory.png (30.03 KB )

DSP281x_Headers_nonBIOS.cmd文件中MEMRORY

DSP281x_Headers_nonBIOS.cmd文件中MEMRORY

Fsections.png (20.8 KB )

F2812.cmd文件中SECTIONS

F2812.cmd文件中SECTIONS

Fmemory.png (33.43 KB )

F2812.cmd文件中MEMRORY

F2812.cmd文件中MEMRORY

相关帖子

沙发
zhangmangui| | 2013-9-21 23:33 | 只看该作者
1.这几个IO口的状态就决定了上电后boot加载的地方   这个状态就是外面电平被拉低或拉高   这个也不一定是去读取GPIOFDAT的值  而是CPU硬件决定的
2.不管在下载到flash中还是在RAM中硬件仿真  codestart都是需要的  你下载到flash中还是可以调到RAM中运行的   上电后有引导码  所以可以直接运行的
3.cmd你可以添加后打开看看  里面可以看出来是flash还是RAM下的  一次肯定只需要一个cmd的

使用特权

评论回复
板凳
zhangmangui| | 2013-9-21 23:36 | 只看该作者
可以看出F2812是flash.cmd

使用特权

评论回复
地板
求进的心|  楼主 | 2013-9-22 09:23 | 只看该作者
zhangmangui 发表于 2013-9-21 23:33
1.这几个IO口的状态就决定了上电后boot加载的地方   这个状态就是外面电平被拉低或拉高   这个也不一定是去 ...

嗯,多谢了,前辈!

使用特权

评论回复
5
zhangmangui| | 2013-9-22 11:56 | 只看该作者
求进的心 发表于 2013-9-22 09:23
嗯,多谢了,前辈!

相互学习  多多分享

使用特权

评论回复
6
airwill| | 2013-9-22 15:24 | 只看该作者
F2812.cmd 可以直接用编辑器打开来看看里面的内存分配.

SECTIONS
{

   /* Allocate program areas: */
   .cinit              : > FLASHA      PAGE = 0
   .pinit              : > FLASHA,     PAGE = 0
   .text               : > FLASHA      PAGE = 0
   codestart           : > BEGIN       PAGE = 0
......
从这里看, 是在 FLASH 里的

使用特权

评论回复
7
求进的心|  楼主 | 2013-9-22 16:03 | 只看该作者
zhangmangui 发表于 2013-9-22 11:56
相互学习  多多分享

嗯,我还想请教一个关于codestart的问题:
codestart程序是由汇编语言写的,并保存为.asm文件被添加到工程中,然后在工程中的.cmd文件中,有对codestart程序分配内存,除此之外,在工程的其他地方就没看到有对codestart的处理了(比如在.c文件中没有看到有对codestart程序的调用)。codestart程序被烧到flash中,就能直接运行吗?还要不要再在其他的地方进行一些设置什么的?谢谢!

使用特权

评论回复
8
求进的心|  楼主 | 2013-9-22 16:04 | 只看该作者
airwill 发表于 2013-9-22 15:24
F2812.cmd 可以直接用编辑器打开来看看里面的内存分配.

SECTIONS

嗯,谢谢!

使用特权

评论回复
9
zhangmangui| | 2013-9-22 16:18 | 只看该作者
求进的心 发表于 2013-9-22 16:03
嗯,我还想请教一个关于codestart的问题:
codestart程序是由汇编语言写的,并保存为.asm文件被添加到工 ...

不需要设置

使用特权

评论回复
10
求进的心|  楼主 | 2013-9-22 17:42 | 只看该作者
zhangmangui 发表于 2013-9-22 16:18
不需要设置

嗯,多谢!

使用特权

评论回复
11
chen3bing| | 2013-9-24 16:22 | 只看该作者
好长时间不搞DSP了,淡忘了。楼主的帖子让我回忆起了一些东西。

使用特权

评论回复
12
求进的心|  楼主 | 2013-9-24 17:23 | 只看该作者
chen3bing 发表于 2013-9-24 16:22
好长时间不搞DSP了,淡忘了。楼主的帖子让我回忆起了一些东西。

哦,是吗?前辈,跟我们分享分享您的一些经验呗!

使用特权

评论回复
13
zhangmangui| | 2013-9-24 17:32 | 只看该作者
chen3bing 发表于 2013-9-24 16:22
好长时间不搞DSP了,淡忘了。楼主的帖子让我回忆起了一些东西。

是啊  多多分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

30

主题

153

帖子

1

粉丝