【新手必看】Ruff 使用秘籍


(Bonnie) #1

终于等到你了!欢迎来到 Ruff Community!

Ruff Community 是 Ruff 开发者聚集的地方,因此你在这里可以了解到更多关于 Ruff 的相关信息。

本文将分为几个部分来介绍如何上手 Ruff 以及使用社区。

本文持续更新中


Ruff

  • Ruff

    • Ruff 是一个支持 JavaScript 开发应用的物联网操作系统,包含 Ruff OS、Ruff SDK、Ruff 软件仓库、Ruff 开发套件等,Ruff 致力于让物联网应用开发更简单。
  • Ruff OS

    • Ruff OS 是运行在硬件上的底层操作系统,主要作用是提供 JavaScript 运行时环境,同时屏蔽芯片架构与型号和板级资源的差异,为上层驱动层及应用层的软件开发者提供统一的操作接口。
      目前包含 MCU 版和 MPU 版两种
      • MCU版 硬件采用微控制器(MCU),底层系统基于实时操作系统(RTOS),具有高实时性,占用内存小等特点。
      • MPU版 硬件采用微处理器(MPU),底层系统基于Linux(非实时操作系统),可提供更大的硬件资源(如内存)。
  • Ruff SDK

    • Ruff SDK 是 Ruff 软件开发工具包,提供应用管理、固件管理、软件包管理、测试等多种功能。它包含命令行工具,Ruff JS 组件库,和Ruff JS 组件库文档,目前支持 Linux/MacOS/Windows 三种操作系统。
      • 命令行工具
        • rap 生产力工具,包含创建项目,添加外设,查看接线布局,部署应用,启动/停止应用等功能。
        • ruff 运行在开发机平台上的 JS 解释器。
      • Ruff JS库
        • 硬件接口模块 包括常见硬件接口(如 GPIOUARTI2CPWMADC 和 QEI)。
        • Ruff软件模块 包括文件操作库(fs),网络相关库(net/http/https)等软件模块。
        • Ruff框架层 包括 Ruff 驱动及测试等框架。
      • Ruff JS 库文档
        • 提供Ruff JS 库所有模块的文档。
  • Ruff Registry

    • Ruff Registry 是 Ruff 代码共享平台,可以避免重复开发浪费,提升开发效率。主要提供维护软件代码、设备描述的生态环境,内容来源于 Ruff 官方发布和社区贡献,包含以下三个类别:
      • 设备库 包含所有 Ruff 已支持的设备描述(型号/接口/功能等)。
      • 驱动库 包含所有 Ruff 已支持的设备对应的驱动库(基本与设备一一对应)。
      • 软件包 包含纯软件层的,用于提高生产效率或提供软件框架的组件。

(Bonnie) #4

(Bonnie) #5

Ruff 怎么玩



(Bonnie) #6

#Ruff 怎么玩


  • 中级 - 驱动开发
    • 起步
    • 接口知识指南
      • GPIO | API - 通用输入/输出,用以表示开关量。
      • UART | API - 通用异步收发传输器,用于处理器与外部设备间异步通信。
      • I2C | API - 集成电路总线,用以连接整体电路,实现高低速设备同步和通信。
      • PWM | API - 脉冲宽度调制,用以通过数字输出控制模拟电路设备。
      • ADC | API - 模/数转换器,用以将模拟信号转换为数字信号。
      • QEI | API - 正交编码器接口,用以检测旋转运动系统的位置和速度。
    • 编程模型 - 了解 Ruff 驱动开发的基本概念
    • 驱动测试 - 在开发机上完成驱动的逻辑测试,省去每次部署到硬件的繁琐过程
    • 发布驱动

(Bonnie) #7

#Ruff 怎么玩



(Bonnie) #8

(wanli) #9

精华帖~