zoukankan      html  css  js  c++  java
  • 在BSP的.dat文件下设置全局变量

    用于多個產品共用一個BSP的時候,在BSP的.bat文件中設置全局變量,去掉不需要加載的驅動和不同點是很好的方法。

    一,舉例:BSP中.bat的一段code:

    set BSP_SMDK2443=1 

    set BSP_SMDK2450=2

    set BSP_TYPE=%BSP_SMDK2450%

    這個就類似c中:

    #define BSP_SMDK2443  1
    #define BSP_SMDK2450  2
    #define BSP_TYPE  BSP_SMDK2450

    二,操作

    1.我們先在.bat文件中聲明自己需要的定義上面類似的

    set BSP_SMDK2443=1 

    2.如果需要在BSP中C,C++等files里面能直接引用。必須要在BSP的根目錄下面sources.cmn文件中進行轉換一下,成為C可以調用的格式。以下兩行。每使用一個變量,都需要定義兩行。

    ADEFINES=$(ADEFINES) -pd "BSP_SMDK2443 SETA $(BSP_SMDK2443)"
    CDEFINES=$(CDEFINES) -DBSP_SMDK2443=$(BSP_SMDK2443)

    ADEFINES=$(ADEFINES) -pd "BSP_SMDK2450 SETA $(BSP_SMDK2450)"
    CDEFINES=$(CDEFINES) -DBSP_SMDK2450=$(BSP_SMDK2450)

    ADEFINES=$(ADEFINES) -pd "BSP_TYPE SETA $(BSP_TYPE)"
    CDEFINES=$(CDEFINES) -DBSP_TYPE=$(BSP_TYPE)

    3.在c中引用。比如在OAL\Init.c中\OEMInit()中調用,就像#define一樣使用。

    #if (BSP_TYPE==BSP_SMDK2443)

    //--add

    #elif (BSP_TYPE==BSP_SMDK2450)

    //--add

    #endif

    4. build, make img即可。

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/skynet000/archive/2010/01/05/5136688.aspx

  • 相关阅读:
    QPS 与 TPS 简介
    程序员需要学多门语言吗
    Docker 常用命令
    Dockerfile
    Docker-安装与部署
    Docker 容器相关技术
    java多线程 线程八锁
    java多线程 生产者消费者案例-虚假唤醒
    ConcurrentHashMap
    原子变量与CAS算法
  • 原文地址:https://www.cnblogs.com/xfdarm/p/1735308.html
Copyright © 2011-2022 走看看