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. VS编辑代码的时候,都会自动在资源浏览器里将文件所在项目展开

    如何设置VS编辑代码的时候,都会自动在资源浏览器里将文件所在项目展开 工具-选项-项目和解决方案-常规-在解决方案资源管理器中跟踪活动项(C)

  2. C#截取指定字符串函数

    本文转载:http://www.cnblogs.com/liufei88866/archive/2012/05/12/2497395.html 一.通过函数方式进行获取. public string ...

  3. zedboard--交叉编译Opencv库的生成 分类: shell ubuntu fool_tree的笔记本 ZedBoard OpenCV 2014-11-08 18:57 171人阅读 评论(0) 收藏

    Opencv的移植,xzyfeixiang和rainysky的博客. 第一步肯定是下载opencv的源码包 第二步已经做好的交叉编译环境. 第三步下载安装cmake   apt-get install ...

  4. change buffer

    https://yq.aliyun.com/articles/222 change buffer: insert buffer delete buffer purge buffer 1.innodb_ ...

  5. Qt 学习之路:深入 Qt5 信号槽新语法

    在前面的章节(信号槽和自定义信号槽)中,我们详细介绍了有关 Qt 5 的信号槽新语法.由于这次改动很大,许多以前看起来不是问题的问题接踵而来,因此,我们用单独的一章重新介绍一些 Qt 5 的信号槽新语 ...

  6. 查看pid

    可以使用ps -ef | grep httpd查看PID 然后kill –l PID

  7. [转] Bound Service的三种方式(Binder、 Messenger、 AIDL)

    首先要明白需要的情景,然后对三种方式进行选择: (一)可以接收Service的信息(获取Service中的方法),但不可以给Service发送信息 (二) 使用Messenger既可以接受Servic ...

  8. VB中右键换行

    /r/n  能在邮件中进行换行, 在VB中使用 ASCII码的 chr(10).chr(13) 就能使VB发送邮件实现换行

  9. Axiom3D学习日记 2.介绍SceneManager,SceneNode,Entity

    SceneManager(场景管理类) 所有出现在屏幕里的东西都受SceneManager管理(最好是这样),当你放置对象在场景里,SceneManager就会跟踪他们的位置,当你为场景创建一个相机, ...

  10. c-八进制 转 十进制

    概述 其实x进制转十进制的算法都差不多,不过如果是针对于字符形式,他们却有点不同.使用指针和数组的形式计算,又不同.这里演示将字符型的数组形式的八进制转成十进制: #include <stdio ...