zoukankan      html  css  js  c++  java
  • 蜂鸟E203系列——Linux下运行hello world例程

    欲观原文,请君移步

    创建程序

    1. 在 ~/hbird-e-sdk-master/software 路径下创建一个“helloworld”中文件夹

    1. 在 ~/hbird-e-sdk-master/software/helloworld 路径下创建文件“helloworld.c”

    内容如下:

    #include<stdio.h>
    
    int main(void)
    {
        printf("hello world!");
        printf("
    ");
        printf("hello anytao 0!");
        printf("
    ");
        printf("hello anytao 1!");
        printf("
    ");
        printf("hello anytao 2!");
        printf("
    ");
        printf("hello anytao 3!");
        printf("
    ");
        printf("hello anytao 4!");
        printf("
    ");
        printf("hello anytao 5!");
        printf("
    ");
        printf("hello anytao 6!");
        printf("
    ");
        printf("hello anytao 7!");
        printf("
    ");
        printf("hello anytao 8!");
        printf("
    ");
        printf("hello anytao 9!");
        printf("
    ");
        printf("hello anytao 10!");
        printf("
    ");
        printf("hello anytao 11!");
        printf("
    ");
        return 0;
    }
    
    
    1. 在 ~/hbird-e-sdk-master/software/helloworld 路径下创建文件“Makefile”
    TARGET = helloworld
    GFLAGS += -O2
    BSP_BASE = ../../bsp
    C_SRCS += helloworld.c
    
    
    include $(BSP_BASE)/$(BOARD)/env/common.mk
    
    

    编译运行

    1 编译程序使得程序从Flash直接运行

    make dasm PROGRAM=helloworld BOARD=hbird-e200 CORE=e203 DOWNLOAD=flashxip USE_NANO=1 NANO_PFLOA=0
    


    • dasm :表示对程序进行编译

    • PROGRAM : 表示需要编译的程序

    • BOARD : 开发板所对应的BSP名称

    • CORE : 内核处理器型号

    • USE_NANO : 指明使用newlib-nano作为c运行库

    • NANO_PFLOAT : 是否需要输出浮点


    运行

    make upload PROGRAM=helloworld BOARD=hbird-e200 CORE=e203
    

    字符串在串口显示终端如下图所示,通过打印可以看到运行速度比较慢,这是因为程序直接从 flash 中运行需要从 flash 中取指令,取指时间较长,影响了程序的执行速度。

    但是由于程序被烧写进了 flash 中,因此程序不会因为掉电而丢失。

    2 编译程序使得程序从ITCM直接运行

    make dasm PROGRAM=helloworld BOARD=hbird-e200 CORE=e203 DOWNLOAD=itcm USE_NANO=1 NANO_PFLOA=0
    

    运行

    make upload PROGRAM=helloworld BOARD=hbird-e200 CORE=e203
    

    采用这种方法编译,通过打印可以看到运行速度非常快,这是因为程序直接从 ITCM 运行时,每次都是从 ITCM 中取指令,所以执行速度非常快。

    3 编译程序使得程序从Flash上载至ITCM中运行

    make dasm PROGRAM=helloworld BOARD=hbird-e200 CORE=e203 DOWNLOAD=flash USE_NANO=1 NANO_PFLOA=0
    

    运行

    make upload PROGRAM=helloworld BOARD=hbird-e200 CORE=e203
    

    采用这种方法编译,通过打印可以看到运行速度非常快,这是因为程序直接从 ITCM 运行时,每次都是从 ITCM 中取指令,所以执行速度非常快。

    但是由于程序被烧写进了 flash 中,因此程序不会因为掉电而丢失。

  • 相关阅读:
    关于DotNETStruts
    SQL语句导入导出大全
    一个打印Dataset的.net的打印类
    遍历指定文件夹下所有的文件
    SQL Server SQL导入导出语句
    查看OCX的属性和方法的脚本
    关于写文本文件的问题
    新钶信息系统面试
    【POJ1208】The Blocks Problem
    【POJ1363】Rails
  • 原文地址:https://www.cnblogs.com/xiguazai/p/13282527.html
Copyright © 2011-2022 走看看