蜂鸟开发板 linux,蜂鸟E203系列——Linux下运行hello world例程

创建程序

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

4b93dfe1-0443-4b83-b11f-1d0c6fa422ad.png

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

内容如下:

#include

int main(void)

{

printf("hello world!");

printf("\n");

printf("hello anytao 0!");

printf("\n");

printf("hello anytao 1!");

printf("\n");

printf("hello anytao 2!");

printf("\n");

printf("hello anytao 3!");

printf("\n");

printf("hello anytao 4!");

printf("\n");

printf("hello anytao 5!");

printf("\n");

printf("hello anytao 6!");

printf("\n");

printf("hello anytao 7!");

printf("\n");

printf("hello anytao 8!");

printf("\n");

printf("hello anytao 9!");

printf("\n");

printf("hello anytao 10!");

printf("\n");

printf("hello anytao 11!");

printf("\n");

return 0;

}

在 ~/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

959640a8-ca47-4fd4-878d-fa42eb1512fa.png

dasm :表示对程序进行编译

PROGRAM : 表示需要编译的程序

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

CORE : 内核处理器型号

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

NANO_PFLOAT : 是否需要输出浮点

运行

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

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

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

80de4ca9-b6b1-45b0-85eb-da5bba95504c.png

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

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

fde30c6f-fb78-4790-ab83-50812d4e27d5.png

运行

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

2e5602ba-c967-413a-803f-cca1632f8221.png

运行

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

575bacab-8e4c-445e-aa60-844afa9272e1.png

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

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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值