接上篇:stm32移植ecos #4,移植redboot(ROM启动方式)上篇

6.,设置串口波特率并保存配置

经上述步骤后,接下来我们确定下redboot的启动方式并设置debug串口的波特率。

在ecos图形配置工具configtool界面的配置项窗口(左边的主窗口)中,依次找到:

eCos HAL—>Cortex-M Architecture—>Cortex-M3/-M4 STM32 Variant—>ST STM3210E EVAL Development Board配置项,如下图所示。

image_thumb[24]   image_thumb[34]

首先确定redboot的启动类型(上右图中的Startup type配置项),根据我们导入的最小配置文件,默认情况下是ROM,所以不需要修改,这里我们需要修改下串口波特率(上右图中的Console serial port baud rate配置项),修改为115200。

至此,我们完成了redboot的配置。配置完成后,在ecos图形配置工具configtool菜单栏中点击保存按钮,选择好路径,并拟定好配置文件的名称,我取名为redboot.ecc。

保存后,会在保存路径下产生两个文件夹,其中,xxx_build用于存放编译的目标文件;xxx_install存放最终产生的目标文件和库文件等(xxx表示你保存时取得配置文件名称),如下图所示。

image_thumb[36]

7,编译

首先,确定你的编译器的位置。在ecos图形配置工具configtool界面中,如下图所示。

image_thumb[43] image_thumb[44]

设定编译器,在ecos图形配置工具configtool界面中,点击Build->Library或者直接按F7,开始编译。在configtool的底部窗口,可以看到编译进展,最后看到finish提示时,表示编译完成,如下图所示。

image_thumb[46]

这时会在redboot_install文件夹下的bin目录下有目标文件,如下图所示:

image_thumb[48]

8.,烧写redboot.bin到stm32 CPU内部flash

接好J-Link,然后给板子上电,打开J-Link的J-flash ARM软件。如下图所示。

image_thumb[50]

然后点击File->Open data file…,选择产生的redboot.bin文件,会提示你输入开始烧写地址。默认起始地址是0,由于STM32 CPU内部flash起始地址是0x08000000,因此,这里我们输入这个地址,设定后,点击OK按钮。如下图所示。

image_thumb[53]

点击Target->Connect,连接J-Link,然后点击Target->Auto或者直接按F7开始烧写redboot.bin。

9. 启动redboot

烧写好redboot.bin后,就可以启动redboot了,如下图所示。

}L3@O5KF`)(E3T(U0GD@C~1_thumb[1]

到此,初步完成了redboot的移植。别看上面步骤很多,实际上很简单,只是说起来比较繁琐些。如果你按照上述的步骤进行操作,一般不会出现问题,可以很顺利的看到redboot的启动信息。

» 文章出处: reille博客—http://velep.com , 如果没有特别声明,文章均为reille博客原创作品
» 郑重声明: 原创作品未经允许不得转载,如需转载请联系reille#qq.com(#换成@)
分享到:

  11 Responses to “stm32移植ecos #5,移植redboot(ROM启动方式)下篇”

  1. 你好 博主 十分感谢你的教程 但是在redboot烧进stm32板子以后 串口收到了redboot的返回信息 但是无法用超级终端输入任何指令 请问是什么情况

  2. 我在编译redboot时遇到如下问题,不知为何?

    /opt/ecos/gnutools/arm-eabi/libexec/gcc/arm-eabi/4.6.3/cc1.exe: error while loading shared libraries: ?: cannot open shared object file: No such file or directory
    /opt/ecos/ecos-3.0/packages/pkgconf/rules.mak:89: recipe for target ‘src/hal_misc.o.d’ failed
    /opt/ecos/gnutools/arm-eabi/libexec/gcc/arm-eabi/4.6.3/cc1.exe: error while loading shared libraries: ?: cannot open shared object file: No such file or directory
    /opt/ecos/ecos-3.0/packages/pkgconf/rules.mak:89: recipe for target ‘src/cortexm_stub.o.d’ failed
    /opt/ecos/gnutools/arm-eabi/libexec/gcc/arm-eabi/4.6.3/cc1.exe: error while loading shared libraries: ?: cannot open shared object file: No such file or directory
    /opt/ecos/ecos-3.0/packages/pkgconf/rules.mak:119: recipe for target ‘src/context.o.d’ failed
    make[1]: *** [src/hal_misc.o.d] Error 1
    make[1]: Leaving directory ‘/home/YG/ecos/stm32/redboot/readboot_build/hal/cortexm/arch/v3_0’
    make[1]: *** Waiting for unfinished jobs….
    makefile:15: recipe for target ‘build’ failed
    make[1]: *** [src/cortexm_stub.o.d] Error 1
    make: Leaving directory ‘/home/YG/ecos/stm32/redboot/readboot_build’
    make[1]: *** [src/context.o.d] Error 1
    make: *** [build] Error 2

  3. 能不能留个联系方式!很多问题想请教啊!

  4. 請問最後一個畫面是終端機的畫面嗎?我照著您的步驟將 ecos 移植到 stm32f107 (沒有外部 RAM)上,已經編譯成功,但燒錄後終端機都沒反應,不知道是哪裡有問題。

    • 能不能留个联系方式!我也在折腾这个!

      • 我暫時放棄 stm32f107 的移植,功力還不夠…

        暫時在百為 stm3210e 的板子上試,初步很順利,不過要移植 dm9000 時,問題很多

        可能會去弄一塊跟版主一樣的安富萊板子來試

        我的 qq 1502234424

        • 个人觉得没必要再花钱买板子了!
          在一块板子上弄不好,其它也差不多,而且对自己的成长也不利。
          调试就是这样,需要有耐心。
          你可以加eCos技术群:144940146

  5. redboot和ecos内核怎么调试?

Leave a Reply to reille Cancel reply

(必须)

(我会替您保密的)(必须)

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.

   
© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha

无觅相关文章插件,快速提升流量