What is Zephyr?

  Zephyr Project is a small, scalable real-time operating system for use on resource-constrained systems supporting multiple architectures.  Developers are able to tailor their optimal solution. As a true open source project, the community can evolve the Zephyr Project to support new hardware, developer tools, sensor and device drivers.  Advancements in security, device management capabilities, connectivity stacks and file systems can be easily implemented.

官方网站:https://www.zephyrproject.org/

开发环境、SDK、OS

安装要求与相关设置

Ubuntu安装所依赖的软件包

$ sudo apt-get install git make gcc g++ python3-ply ncurses-dev python3-yaml dfu-util device-tree-compiler

Zephyr SDK

运行安装SDK(先加权后执行)

$ chmod +x zephyr-sdk-0.9.1-setup.run
$ ./zephyr-sdk-0.9.1-setup.run

   Verifying archive integrity... All good.

   Uncompressing SDK for Zephyr  100%

   Enter target directory for SDK (default: /opt/zephyr-sdk/):

   Installing SDK to /opt/zephyr-sdk

   Creating directory /opt/zephyr-sdk

   Success

   [*] Installing x86 tools...

   [*] Installing arm tools...

   [*] Installing arc tools...

    [*] Installing iamcu tools...

   [*] Installing nios2 tools...

   [*] Installing xtensa tools...

   [*] Installing riscv32 tools...

   [*] Installing additional host tools...

   Success installing SDK. SDK is ready to be used.

设置SDK的环境变量,创建并将一下两条指令写入 ~/.zephyrrc 文件中

/* 此语句代表使用Zphyr GCC编译器 */
$ export ZEPHYR_GCC_VARIANT=zephyr
/* 此语句制定Zephyr SDK路径*/
$ export ZEPHYR_SDK_INSTALL_DIR=/opt/zephyr-sdk

运行Zephyr 小例程

根目录执行脚本,设置Zephyr 项目的环境变量

/zephyr-v1.8.0/$ source zephyr-env.sh

构建一个项目示例,在 $ZEPHYR_BASE/samples/hello_world 目录下执行 make

/zephyr-v1.8.0/samples/hello_world/$ make

构建一个项目示例,并自定义开发板并仿真(qemu_x86),在 $ZEPHYR_BASE/samples/hello_world/目录下执行 make BOARD=qemu_x86 qemu

/zephyr-v1.8.0/samples/hello_world/$ make BOARD=qemu_x86 qemu

构建一个项目示例,并自定义开发板并仿真(qemu_cortex_m3),在 $ZEPHYR_BASE/samples/hello_world/目录下执行 make BOARD=qemu_cortex_m3 ARCH=arm qemu

/zephyr-v1.5.0/samples/hello_world/$ make BOARD=qemu_cortex_m3 ARCH=arm qemu

注:qemu为模拟处理器(仿真),SDK 自带。

支持仿真的平台架构在/zephyr-v1.8.0/boards 目录中可以看到:文件夹命名为qemu_xxx

需要帮助请执行make help

/zephyr-v1.8.0/$ make help

---------END

物联网操作系统 - Zephyr的更多相关文章

  1. Google物联网操作系统协同框架Weave深度解析

    1.       Google Weave框架 在2015年的Google I/O大会上,负责Android业务的桑达.皮查伊(SundarPichai)宣布了Google最新的物联网战略.这包括一个 ...

  2. 物联网操作系统HelloX V1.80测试版发布

    经过HelloX开发团队近半年的努力,在HelloXV1.79版本基础上,增加许多功能特性,并对V1.79版本的一些特性进行了进一步优化之后,正式形成HelloX V1.80测试版本.经相对充分的测试 ...

  3. 物联网操作系统HelloX V1.79发布公告

    经过HelloX开发团队近半年的努力,在HelloX V1.78版本基础上,增加许多功能特性,并对V1.78版本的一些特性进行了进一步优化之后,正式形成HelloX V1.79测试版本.经相对充分的测 ...

  4. 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上

    在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...

  5. 物联网操作系统HelloX V1.78测试版正式发布

    经过HelloX开发团队近四个月的努力,在HelloX V1.77版本基础上,增加许多功能特性,并对V1.77版本的一些特性进行了进一步优化之后,正式形成HelloX V1.78测试版本,经相对充分的 ...

  6. 物联网操作系统HelloX V1.77(beta)版本发布

    物联网操作系统HelloX V1.77发布 经过近半年的努力,物联网操作系统HelloX V1.77版本正式完成,源代码已上载到github(github.com/hellox-project/Hel ...

  7. 基于物联网操作系统HelloX的智慧家庭体系架构

    基于物联网操作系统HelloX的智慧家庭体系架构 智慧家庭是物联网的一个分支应用,是一个被广泛认同的巨大IT市场空间.目前市场上已经有很多针对智慧家庭的产品或解决方案,但与移动互联网不同,智慧家庭至今 ...

  8. 让我们共同构筑物联网起飞的平台:物联网操作系统Hello China寻求应用合作伙伴

    经过几天的努力,终于把Hello China V1.76版的内核移植到基于Cortex-M3内核的STM32 chipset上.因为还希望进一步写一个USART驱动程序,因此详细的移植文档,预计一周之 ...

  9. 腾讯物联网操作系统正式开源,最小体积仅1.8 KB

    9月18日,腾讯宣布将开源自主研发的轻量级物联网实时操作系统TencentOS tiny.相比市场上其它系统,腾讯TencentOS tiny在资源占用.设备成本.功耗管理以及安全稳定等层面极具竞争力 ...

随机推荐

  1. PHP用ajia代码写三级联动下拉

    下面是我做三级联动下拉的步骤以及逻辑 第一步:先做一个省市区表格 第二步:建个PHP页面显示用我是在<body>里放<div>用来接收要显示的省市区表格信息,里面嵌入jquer ...

  2. GB2312转换成UTF-8与utf_8转换成GB2312

    本文转载:http://www.cnblogs.com/jonhson/archive/2010/08/10/1796536.html /// <summary> /// utf_8转换成 ...

  3. 未能正确加载“visual C++ package”包

    早上打开360要卸载软件,跳出说系统修复,习惯性的点击修复,结果修复后发现打开vs2012提示“未能正确加载“visual C++ package”包……..”, 重启也一样,google了下,是因为 ...

  4. [Flux] 1. Development Environment Setup

    Install packages: { "name": "reactflux", "version": "1.0.0", ...

  5. Netty源代码学习——Included transports(变速箱)

    Transport API核心: Channel介面 类图表示Channel含有Pipeline和Config接口,pipeline上一节有所介绍. Channel是线程安全的,这表示在多线环境下操作 ...

  6. linux下ntfs硬盘的加载

    问题:       # mount –t ntfs /dev/sdb1 /mnt/       mount: unknown filesystem type ‘ntfs’       这是由于Cent ...

  7. 一个Web Project引用多个Java Project在Eclipse下的配置--转载

    项目结构: 项目由一个Web Project和多个Java Project构成,Web Project需要引用其它Java Project的类和Jar包.开发时用Eclipse3.5和Tomcat调试 ...

  8. Java解析XML文档(简单实例)——dom解析xml

      一.前言 用Java解析XML文档,最常用的有两种方法:使用基于事件的XML简单API(Simple API for XML)称为SAX和基于树和节点的文档对象模型(Document Object ...

  9. java io 流基础

  10. 第四篇:python基础之dict、set及字符

    python基础之dict.set及字符   python基础之dict.set及字符串处理 本节内容 字典介绍及内置方法 集合介绍 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射 ...