每天为您提供私服传奇,传奇私服变态,传奇私服1.80战神版,刚开的金币复古传奇!
广告联系
最新传奇合击
  • sf合击传奇有英雄
  • 英雄合击SF
  • 1.85内挂
  • 传奇私服外挂
  • 传奇1.76 《Android开发从零开始》??1.Android开发环境的搭建 - 若水 - 博客频道 - CSDN.NET修正STM32F10
    文章作者:超变态传奇外传私服 文章来源:http://WWW.900Wsf.COM/ 更新时间:2012-02-23 06:03:45  

    <ExecRegion Name="ER_STACK_BOTTOM" Base="%Stack_Bottom%" Options="ABSOLUTE" Size="UNINIT">
    <FileMapping Name="*" Options="(SectionForStackBottom)" />
    </ExecRegion>

    <ExecRegion Name="ER_STACK_TOP" Base="%Stack_Top%" Options="ABSOLUTE" Size="UNINIT">
    <FileMapping Name="*" Options="(SectionForStackTop)" />
    </ExecRegion>

    完整的散列文件scatterfile_tools_mdk.xml内容如下:

    对于原来的散列文件内容,有一点不太喜欢的是,居然将向量表和代码分开了,如:

    <LoadRegion Name="LR_%TARGETLOCATION%" Base="%Code_BaseAddress%" Options="ABSOLUTE" Size="%Code_Size%">

    <ExecRegion Name="ER_%TARGETLOCATION%" Base="%Code_BaseAddress%" Options="FIXED" Size="">
    <FileMapping Name="VectorsTrampolines.obj" Options="(+RO, +FIRST)" /> <!-- for vector handlers to be far from the vectors -->
    <FileMapping Name="FirstEntry.obj" Options="(+RO)" /> <!-- the entry pointer section goes into this region -->
    <FileMapping Name="ramtest.obj" Options="(+RO)" /> <!-- this must live somewhere other than RAM, for all but RAM builds -->
    <FileMapping Name="*" Options="(SectionForBootstrapOperations)" />
    <FileMapping Name="*" Options="(+RO-CODE)" />
    <FileMapping Name="*" Options="(+RO-DATA)" />

    </If>

    <FileMapping Name="*" Options="(SectionForConfig)" />

    <ExecRegion Name="ER_HEAP_BEGIN" Base="%Heap_Begin%" Options="ABSOLUTE" Size="UNINIT">
    <FileMapping Name="*" Options="(SectionForHeapBegin)" />
    </ExecRegion>

    </ExecRegion>

    <IfDefined Name="Config_BaseAddress">

    <ExecRegion Name="ER_RAM_RW" Base="+0" Options="ABSOLUTE" Size="">

    <?xml version="1.0"?>
    <ScatterFile xmlns="
    ">

    </LoadRegion>

    3.如何配置环境变量

    <If Name="Valid" Value="false">
    <Error Message="Configuration not recognized"/>
    </If>

    如果你需要编译NativeSample工程,那么不可避免地就需要接触到散列文件。对于MDK来说,所用到的则是scatterfile_tools_mdk.xml文件。只不过,如果你是采用默认生成的数值,那么结果会让你很郁闷。那么,为了能有一个快乐的移植之旅,我们现在就来看看这些数值应该如何更改。

    //=====================================================================
    //TITLE:
    // 修正STM32F103ZE的散列文件
    //AUTHOR:
    // norains
    //DATE:
    // Tuesday 20-October-2010
    //Environment:
    // KEIL MDK 4.0
    // .NET Micro Framework Porting 4.1
    // RedCow Board
    //=====================================================================

    <!-- everything between heapbegin and heapend will be allocated for a heap -->

    <If Name="TARGETLOCATION" Value="FLASH">
    <Set Name="Config_BaseAddress" Value="0x08070000"/>
    <Set Name="Config_Size" Value="0x00010000"/>
    <Set Name="Code_BaseAddress" Value="0x08000000"/>
    <Set Name="Code_Size" Value="0x00060000"/>
    <Set Name="Valid" Value="true"/>

    <IfDefined Name="ALTERNATEFLASHLOCATION">
    <!-- Set Name="Code_BaseAddress" Value="%Code_BaseAddress + Code_Size%"/ -->
    </IfDefined>

    4.介绍Android SDK下每个传奇sf的意义

    本节课的主要内容有:

    FUNC void InitNVIC(void)
    {
    _WDWORD(0xE000ED08,0x20004000);
    }

    InitNVIC();
    PC = EntryPoint;


    <ExecRegion Name="ER_RAM_RO" Base="%ER_RAM_BaseAddress%" Options="ABSOLUTE" Size="">

    <FileMapping Name="*" Options="(SectionForFlashOperations)" />

    </ExecRegion>

    课程下载地址:

    <If Name="TARGETLOCATION" Value="RAM">
    <Set Name="Heap_Begin" Value="0x20002BFC"/>
    <Set Name="Heap_End" Value="0x20002DFC"/>
    <Set Name="Stack_Bottom" Value="+0"/>
    <Set Name="Stack_Top" Value="0x20002FFC"/>
    <Set Name="ER_RAM_BaseAddress"Value="0x20003000"/>
    </If>

    <If Name="TARGETLOCATION" Value="RAM">
    <Set Name="Code_BaseAddress" Value="0x20004000"/>
    <Set Name="Code_Size" Value="0x0000C000"/>
    <Set Name="Valid" Value="true"/>
    </If>


    <If Name="TARGETLOCATION" Value="FLASH">
    <Set Name="Heap_Begin" Value="0x2000EBFC"/>
    <Set Name="Heap_End" Value="0x2000EDFC"/>
    <Set Name="Stack_Bottom" Value="+0"/>
    <Set Name="Stack_Top" Value="0x2000EFFC"/>
    <Set Name="ER_RAM_BaseAddress"Value="0x2000F000"/>
    </If>

    看得比较仔细的朋友,可能会发现这句已经被注释掉了:
    <!-- Set Name="Code_BaseAddress" Value="%Code_BaseAddress + Code_Size%"/ -->

    如果不注释掉的话,那么代码是从高位向低位生长,而这却和STM32F103ZE的实际情况相反。所以这里就必须将其注释掉,以让代码从低位往高位生长。

    在开始之前,我们先来了解一下向量表。对于CORTEX-M3来说,向量表应该位于0x00000000位置。为什么是这个位置呢?因为复位之后,PC指针指向0x00000000。所以,我们先有这么个概念,在开始调试之后,PC应该指向向量表的地址。


    <,网通传奇私服发布网!-- this must go last here to provide a low water mark on the stack -->

    如果以RAM方式编译,内存印射如下:

    <!-- ################################################################################ -->

    课件及源码下载地址:

    </IfDefined>

    <FileMapping Name="*" Options="(+RW-DATA, +ZI)" />


    <,SF999!-- ################################################################################ -->

    </ScatterFile>

    <ExecRegion Name="ER_CONFIG" Base="%Config_BaseAddress%" Options="FIXED" Size="%Config_Size%">

    </ExecRegion>

    当我们以FLASH方式编译时,内存印射如下:

    <Set Name="Valid" Value="false"/>



    </LoadRegion>

    <LoadRegion Name="LR_CONFIG" Base="%Config_BaseAddress%" Options="ABSOLUTE" Size="%Config_Size%">


    <ExecRegion Name="ER_HEAP_END" Base="%Heap_End%" Options="ABSOLUTE" Size="UNINIT">
    <FileMapping Name="*" Options="(SectionForHeapEnd)" />
    </ExecRegion>

    2.如何在Eclipse中安装Android的开发插件——ADT

    </ExecRegion>

    两者分开之后,如果数值设置不好的话,会有很严重的后果,比如向量表会被一些印射的代码所覆盖,或是向量表没有圆整到2的次幂,等等。所以,这里我是将这两者合而为一,如:

    Android SDK源码下载地址:

    需要注意的是,这个脚本文件只能配合RAM方式,如果是FLASH,传奇1.76,因为ARM_Vectors的位置和向量表寄存器的数值不符,则会导致程序异常。


    如果编译的是FLASH方式,可以直接通过MDK下载NativeSample.axf文件到开发板中,就能够正常运行。但如果是RAM方式,还需要配合脚本文件。因为编译的是RAM方式的话,如果PC指针默认指向ARM_Vectors,新开传奇1.76,则执行会出现异常,但原因我还暂时还不清楚。不过,这个有个变通的方式,弥撒战歌,开始调试时,通过脚本文件将PC指针指向EntryPoint函数即可。和RAM配合的完整的脚本文件内容如下:

    Android SDK及ADT下载地址:

    1.如何下载Android的SDK

    浏览次数:
    最新文章
    ·传奇1.76 《Android开发从零开始》??1.
    ·“1.76金币版传奇私服供应商-白俄罗斯”
    ·gukangcom39健康博客子宫肌瘤能吃什么?
    ·[转]雪 女人 男人 灰色酒吧(海的原创)
    ·传世私服 美国放宽签证 盼更多劲舞团sf
    ·股海上的灯塔:辞旧迎新 龙年大吉! 中
    ·好医生点评39健康网最完善的医生大全独
    ·9月21日私募基金内幕传闻及内参 - 私募
    ·焦点访谈揭露黑庄家“中恒信” - 媒体扫
    ·破天一剑私服 你每天分析数据流量吗 -
    热门文章
    · 传奇1.76 《Android开发从零开始》??1.
    · gukangcom39健康博客子宫肌瘤能吃什么?
    · “1.76金币版传奇私服供应商-白俄罗斯”
    · [转]雪 女人 男人 灰色酒吧(海的原创)
    · 好医生点评39健康网最完善的医生大全独
    · 传世私服 美国放宽签证 盼更多劲舞团sf
    · 股海上的灯塔:辞旧迎新 龙年大吉! 中
    · 9月21日私募基金内幕传闻及内参 - 私募
    · 焦点访谈揭露黑庄家“中恒信” - 媒体扫
    · lengfengye39健康博客前有华卫假冒卫生
    Copyright © 2009 http://WWW.900Wsf.COM/ All rights reserved.
    最新传奇合击 提供传奇私服论坛网,传奇私服登录器下载,最新仿盛大传奇私服,传奇1.76私服,热血传奇1.76客户端 版权所有
    请使用1024*768分辨率浏览本站以达到最佳视觉效果