欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

前端开发者的智能硬件之路

程序员文章站 2024-01-04 12:23:53
...

前一段时间,收到了一个面试邀请的邮件。面试找工作,我是没这个打算的,但是,从这封邮件中,我一眼就看到了一个让我非常感兴趣的字眼,让我对这家公司的产品有了想进一步了解的冲动。

啥字眼?

“JavaScript开发智能硬件”

对我这个JavaScript*者来说,我的感觉就是像小孩发现了一个非常喜欢的新玩具一样的兴奋。

我不是一个偏执的某语言支持者,我用过很多语言开发过各种项目和工具,也不排斥学习和使用最新的语言。但是JavaScript对我来说,是让我感觉最有意思的语言,我喜欢用它写东西,并希望尽可能的用它来完成我的工作,不管是在前端还是后端,桌面电脑还是移动设备。JavaScript的其他爱好者也一定是这么想的,要不然JavaScript也不会像现在这样,在各种平台,各种设备上满地开花了。

用JavaScript来开发硬件这回事,以前也想过,因为之前我也稍稍玩了一下VxWorks的嵌入式开发,使用的是C语言,真的是门槛比较高,很多硬件的概念都赤裸裸的摆在那儿,对初学者来说,真的是一种难以理解,望而生畏的体验。那个时候就在想,要是能像做Web开发一样用JS来进行硬件编程,该是多爽的事情啊。

估计也有人跟我一样,就这么干干的想了好多年。直到这个智能硬件时代的来临,终于有人路见不平一声吼,该出手时就出手,憋出了这一个大招。

好了,鬼扯了这么多,这个东西到底是个啥?

它的名字叫Ruff

打开邮件中的链接,进入他们的网站ruff.io,就能看到一行大大的slogan:软件定义硬件

Ruff

看了下首页简介,概括为:

  • JavaScript 编程
    采用开发者众多的唯一全栈语言作为编程语言

  • 硬件抽象
    调用程序库即可操作硬件,降低开发入门门槛

  • 跨平台
    忽略板卡差异,同一份应用代码可以运行在不同板卡上

  • 高效便捷开发
    告别交叉编译、烧写板卡,PC 上完成测试,一键部署

看起来不错!

但是我的风格就是二话不说,就想先看看你这代码是什么样子的。直接进文档,找到示例代码:

'use strict';

$.ready(function (error) {
    if (error) {
        console.log(error);
        return;
    }

    $('#led-r').turnOn();
});

$.end(function () {
    $('#led-r').turnOff();
});

好吧,我相信了,还是满满的jQuery风格呢。

文档还没看几页,我就马上找到购买链接,下单了,迫不及待啊。

没过2天,东西就到啦。装上透明的有机玻璃护套,颜值很高啊。

Ruff主板

随主板附送的还有很多功能模块,主要有以下这些模块以及一些连接模块和主板用的杜邦线:

  • 红外线发送模块
  • 红外线接受模块
  • 温湿度传感器
  • 光照传感器
  • 声音传感器
  • 继电器模块
  • 大按钮模块
  • 蜂鸣器
  • LED模块
  • LCD模块
随主板赠送的模块

拿到板子后,从Ruff官网下载和安装了它的开发用SDK,我都基本没怎么看文档,就建立起了第一个简单的工程代码,对于熟悉使用nodejs和npm开发的JavaScript开发者来说,Ruff的开发环境入门简直就是无门槛进家门了。

我写的第一个测试代码,还没用到额外的模块,只是利用了主板上的三个红绿蓝LED灯做了一个交替点亮和熄灭的功能。代码不会超过10行。

演示

是不是很好玩?我也写了一些稍微复杂的小程序,使用到了上面提到的一些硬件模块,整个开发体验就是可以用简洁,直观,容易理解来形容。总之,你之前学到的JavaScript知识,都会在这里继续发挥到作用。

有兴趣的朋友不妨也来一起玩一下吧。

上一篇:

下一篇: