嵌入式开发者社区

标题: 二次boot [打印本页]

作者: 潜力变实力    时间: 2016-6-2 15:33
标题: 二次boot
1、 tms320c6748 默认情况下,从外部nor flash 启动,bootloader是从nor flash 里面拷贝多K的代码? 2、现在想做二次boot ,不知道怎么写跳转到DDR2中的程序,看了startware,不明白这2句的意思,这个是不是跳准到Aplication?谢谢

   appEntry = (void (*)(void)) entryPoint;

    (*appEntry)();



作者: 希望缄默    时间: 2016-6-3 09:27
1、Nor Flash 根据连接方式以及启动模式不同有多种情况
2、对 就是跳转到函数入口地址
作者: 潜力变实力    时间: 2016-6-3 09:53
希望缄默 发表于 2016-6-3 09:27
1、Nor Flash 根据连接方式以及启动模式不同有多种情况
2、对 就是跳转到函数入口地址 ...

请问一下,这个跳转到哪个函数的入口地址???
作者: 希望缄默    时间: 2016-6-3 15:10
潜力变实力 发表于 2016-6-3 09:53
请问一下,这个跳转到哪个函数的入口地址???

哪个都行 例程里面是 _c_int00_
作者: 潜力变实力    时间: 2016-6-7 12:55
希望缄默 发表于 2016-6-3 15:10
哪个都行 例程里面是 _c_int00_

如果像我这种,想跳转到DDR2中,然后执行程序,该怎么做呢?非常感谢回答
作者: 希望缄默    时间: 2016-6-7 15:38
潜力变实力 发表于 2016-6-7 12:55
如果像我这种,想跳转到DDR2中,然后执行程序,该怎么做呢?非常感谢回答 ...
  1. // 声明
  2. unsigned int EntryPoint = 0xC0000000;
  3. void (*AppEntry)();

  4. // 使用
  5. AppEntry = (void (*)(void))EntryPoint;
  6. (*AppEntry)();
复制代码
0xC0000000 就是 DDR 地址
作者: 潜力变实力    时间: 2016-6-7 16:25
这个是我应用程序的cmd文件,需要做改变吗?
作者: 潜力变实力    时间: 2016-6-7 17:07
创龙的bootloader程序没有找到,可以发我一份参考学习一下吗?谢谢
作者: 希望缄默    时间: 2016-6-7 17:55
潜力变实力 发表于 2016-6-7 16:25
这个是我应用程序的cmd文件,需要做改变吗?

固定 _c_int00 地址就行了
作者: 电子微创意    时间: 2016-6-8 10:27
还是得认真掌握以下CMD文件的作用才能正确进行开发,另NOR Flash的优势是什么为什么不用NAND Flash
作者: 潜力变实力    时间: 2016-6-8 16:37
希望缄默 发表于 2016-6-7 17:55
固定 _c_int00 地址就行了


我在bootloader程序的.cmd文件里面改为:
.text   : _c_int00 >ONCHIP_RAM   load=0xC0000000       
但是编译不过:
DEFAULT memory range overlaps existing memory range ONCHIP_RAM
作者: 希望缄默    时间: 2016-6-9 10:21
潜力变实力 发表于 2016-6-8 16:37
我在bootloader程序的.cmd文件里面改为:
.text   : _c_int00 >ONCHIP_RAM   load=0xC0000000       
但是编 ...

写错了 》 跟 load 功能重叠
作者: 潜力变实力    时间: 2016-6-12 11:15
希望缄默 发表于 2016-6-9 10:21
写错了 》 跟 load 功能重叠

非常感谢,怎么样测试跳转到应用程序了呢??
作者: 希望缄默    时间: 2016-6-12 13:41
潜力变实力 发表于 2016-6-12 11:15
非常感谢,怎么样测试跳转到应用程序了呢??

你的应用程序执行成功 比如 LED 程序
作者: 潜力变实力    时间: 2016-6-12 14:02
希望缄默 发表于 2016-6-12 13:41
你的应用程序执行成功 比如 LED 程序

我把应用程序通过 AISgen  for D800K008 程序.ais文件,烧录到flash,然后再bootloader里面拷贝到DDR2,我查看了DDR2的入口0xC0000000里面的数据和我应用程序的.ais数据一样?但是boot不成功?应该怎么检查呢?

作者: 潜力变实力    时间: 2016-6-12 14:02
希望缄默 发表于 2016-6-12 13:41
你的应用程序执行成功 比如 LED 程序

boot table 是用来干什么的?
作者: 希望缄默    时间: 2016-6-12 14:57
潜力变实力 发表于 2016-6-12 14:02
我把应用程序通过 AISgen  for D800K008 程序.ais文件,烧录到flash,然后再bootloader里面拷贝到DDR2, ...

看下 PC 指针
作者: 希望缄默    时间: 2016-6-12 14:57
潜力变实力 发表于 2016-6-12 14:02
boot table 是用来干什么的?

TI 处理器可启动镜像格式
作者: 潜力变实力    时间: 2016-6-12 19:29
希望缄默 发表于 2016-6-12 14:57
看下 PC 指针

PC指针,指到了0xC0000000,还有我拷贝应用程序.ais文件的时候,是不是要全部拷贝过来?还是需要解析,拷贝有用的过来?
作者: 潜力变实力    时间: 2016-6-12 19:29
希望缄默 发表于 2016-6-12 14:57
TI 处理器可启动镜像格式

在二次boot的时候需要用到吗?
作者: 希望缄默    时间: 2016-6-13 09:10
潜力变实力 发表于 2016-6-12 19:29
PC指针,指到了0xC0000000,还有我拷贝应用程序.ais文件的时候,是不是要全部拷贝过来?还是需要解析,拷 ...

那就对了 说明你复制的有问题
具体跟你实现形式有关 比如应用程序镜像有关
作者: 希望缄默    时间: 2016-6-13 09:10
潜力变实力 发表于 2016-6-12 19:29
在二次boot的时候需要用到吗?

看你自己 可用可不用
作者: 潜力变实力    时间: 2016-6-13 11:50
希望缄默 发表于 2016-6-13 09:10
看你自己 可用可不用
终于调试好了,非常感谢!辛苦了




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4