树莓派与node.js —— onoff、dht】的更多相关文章

1. 发光二极管 tm-onoff var Gpio = require('tm-onoff').Gpio, led = new Gpio(17, 'out'), button = new Gpio(18, 'in', 'both'); // 'both':按钮的上升下降沿都应该被处理,即调用如下的函数 button.watch(function(err, value) { led.writeSync(value); }); 上述代码在ctrl+c退出时,并未释放资源,也未处理错误,一份更完整的…
先上图 前段时间, 花了点时间给女儿做了个数学习题的小程序 首页 做题界面(题目每次都随机生成, 加减乘除都有) 做题记录 现在问题来了, 怎么才能随时知道作业有没有完成呢? 每次打开做题记录页面刷新太费劲了 于是做了个树莓派+小LED灯的设备, 基本功能如下: LED闪烁 - 表示正在检查作业,且当天作业未完成 LED常亮 - 表示检测到作业已完成 每天重置一次LED状态 准备物料: - 树莓派 - LED灯珠1个, 电阻一个(220欧姆或1K都可以) 接线: 第36脚(GPIO16) 经过一…
树莓派上的40个GPIO是最好玩的东西 它们可以被C,/C++, Python, Java等语言直接控制 现在就来看看怎么用Node.js做到同样的事情 在试验之前, 请先安装好Node.js, 具体可以移步到: <树莓派.安装系统+Node.js+MongoDB系列环境> 1.准备试验文件夹 mkdir /home/pi/Documents/test-gpio-demo/ 2.创建文件package.json { "name": "test-gpio-demo&…
因为树莓派是arm架构,node.js上并没有提供arm架构的二进制包下载. 试过使用apt包管理安装和直接node.js源代码编译安装(编译了四五个小时...),都没有成功,报非法指令错误,预计还是编译的处理器架构错误导致的. 只是,google上有些小伙伴成功了.我也不清楚是为什么,可能是编译的版本号问题. 这里提供一个比較简单的方法.亲測有效.事实上就是在官网的历史列表里面找到了个旧版本号v0.10.28的arm架构二进制包.官网的历史列表 http://nodejs.org/dist.…
1.先去树莓派官网下载最新的ROM https://www.raspberrypi.org/downloads/raspbian/ 这里选的是: RASPBIAN JESSIE WITH DESKTOP 日期是2017.7.5 下载后得到文件: 2017-07-05-raspbian-jessie.zip 解压后: 2017-07-05-raspbian-jessie 2.准备软件 win32 disk imager 选择刚解压好的img文件, 指定目标U盘(建议准备一张16GB的TF卡) 点击…
本文主讲如何在树莓派3B上安装node.js 环境描述1. 树莓派安装了`2016-11-25-raspbian-jessie-lite`(PS:在此版本的镜像中,默认禁用了ssh,在烧录好镜像之后,在`boot`分区中新建一个名为`ssh`的文件夹,正常开机,通过ssh即可连接到树莓派)2. 所有官方软件源软件已经更新至最新版. 目标在树莓派3B上安装node.js-6.9.4(截至本文发布时间的最新稳定版) 实战 连接树莓派之后:下载已经编译好的node.js for ARM 版本 $ wg…
1. 下载node.js wget http://nodejs.org/dist/v0.10.5/node-v0.10.5-linux-arm-pi.tar.gz tar -xzvf node-v0.10.5-linux-arm-pi.tar.gz mkdir /opt/node cp -r node-v0.10.5-linux-arm-pi/* /opt/node/ 2. 设置 /etc/profile NODE_JS_HOME="/opt/node" PATH="$PAT…
物联网(IoT)技术方兴未艾,智能手环,智能血压计,智能眼镜甚至智能鞋垫都开始进入我们的生活,各种智能设备层出不穷,世界已经到了一个"人有多大胆,地有多大产"的时代,不玩儿点物联网都不好意思和人打招呼了. 之前玩儿过开源硬件Arduino,这次再找个功能强劲的Beagle Bone Black(BBB). 大家可能知道名气更大的树莓派,BBB也是类似的单片计算机开发板,就在名片大小的一块板子上集成了计算机的大多数常见功能,在上面可以运行Linix 操作系统,通过HDMI连上显示器,插上…
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 未来10年内,物联网将会如移动互联网这样深入到我们生活的各方各面.所以微软现在对物联网进行了大量的投资,比如Windows 10就有一个单独的IoT版本.而今天推荐的文章是告诉大家如何把Node.js开发带到Windows 10 IoT中. 在月初Build大会上,微软发布了Windows 10 IoT Core Insider Preview,这个版本可以安装到树莓派2(Raspberry Pi…
在 Ubuntu 下安装 Node.js sudo apt-get install python-software-properties python g++ make sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs 在 Cubieboard 上安装 Node.js 我的 Cubieboard 2 安装的是 Linaro 12.11,使用 Ubuntu 的安…
如果你正在找Node.js的学习资料及指南,那么请继续(阅读),我们的教程将会覆盖即时聊天应用.API服务编写.投票问卷应用.人物投票APP.社交授权. Node.js on Raspberry Pi等等. 以下是Node.js入门的简单介绍,如果你对Node.js略有了解可以直接跳过此部分. 那什么是Node.js呢? Node.js是迄今运用最多的服务端JavaScript运行时环境,使用JavaScript开发跨平台的实时WEB应用. Node.js基于Google的V8 JavaScri…
前言 各种编程语言均有其优势和生态,有兴趣的朋友完全可以涉猎多门语言.在平常的工作之中,也可以尝试选择相对适合的编程语言来完成相关的工作. 在团队技术文档站搭建这块,笔者尝试了许多框架,最终还是选择了Hexo,主要是由于其丰富的主题和插件,并且灵活和高度可定制化,改起来也非常方便.我们团队文档站即使用Hexo来构建,并且基于容器配置了完整的代码流水线:docs.xin-lai.com 如果对站点配置.主题.插件存在疑问,可以加群沟通. 目录 官方镜像  编写一个简单的Web服务器  编码 编写D…
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该文件,会报错 4.运行test2.js 二.模块简单使用 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Node环境中,一个.js文件就称之为一个模块(module). 模块化的开发的好处:提高代码的可维护性,避免修…
1.net模块基本API 要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用.NET模块API分为两大类:Server和Socket类.工厂方法. Server类如下图所示: net.Server类可以用来创建一个TCP或本地服务器,继承了EventEmitter. Socket类如下: net.Socket类一般用创建一个socket客户端或者是net.Server connection事件的参数. 工厂方法如下: 以上三个图展示了API的使用,其实NET…
1.process对象 process对象就是处理与进程相关信息的全局对象,不需要require引用,且是EventEmitter的实例. 获取进程信息 process对象提供了很多的API来获取当前进程的运行信息,例如进程运行时间.内存占用.CPU占用.进程号等,具体使用如下所示: /** * 获取当前Node.js进程信息 */ function getProcessInfo(){ const memUsage = process.memoryUsage();//内存使用 const cpu…
Stream在node.js中是一个抽象的接口,基于EventEmitter,也是一种Buffer的高级封装,用来处理流数据.流模块便是提供各种API让我们可以很简单的使用Stream. 流分为四种类型,如下所示: Readable,可读流 Writable,可写流 Duplex,读写流 Transform,扩展的Duplex,可修改写入的数据 1.Readable可读流 通过stream.Readable可创建一个可读流,它有两种模式:暂停和流动. 在流动模式下,将自动从下游系统读取数据并使用…
Javascript在客户端对于unicode编码的数据操作支持非常友好,但是对二进制数据的处理就不尽人意.Node.js为了能够处理二进制数据或非unicode编码的数据,便设计了Buffer类,该类实现了Uint8Array接口,并对其进行了优化,它的实例类似于整型数组,但是它的大小在创建后便不可调整.在介绍Buffer如何使用之前,先介绍几个知识点. 1.V8引擎的内存使用限制 V8引擎最大堆内存使用在32位系统上默认为512M,在64位系统上是1GB,虽然可以使用--max-old-sp…
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. 在终端的执行命令来打开控制台, 1.1.3 加载Node.js脚本 记载node.js脚本文件非常简单,运行"node 文件名"即可,"node program.js".如果我们想快速执行一些简单的语句,可以使用-e参数,这样我们直接执行一些javascript或者no…
一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package Manager. ####(1)通俗的理解 其实从字面意思就可以理解这个产品有什么作用翻译为“Node包管理器”.对,就是Node的包的一个管理工具,目前我尝试的有 下载并安装包(npm install [pkg]) 升级安装包(npm update [pkg]) 卸载安装包(npm uninstal…
一.Node.js本质上是js的运行环境. 二.可以解析js代码(没有浏览器安全级的限制): 提供系统级的API:1.文件的读写 2.进程的管理 3.网络通信 三.可以关注的四个网站: 1.https://nodejs.org/en/(官网) 2.https://www.npmjs.com/ 3.https://github.com/ 4.http://stackoverflow.com/ 四.Node.js的版本:偶数位为稳定的版本   -0.6.x:-0.8.x 奇数位为非稳定版本   -0…
一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.js 的包管理器 npm,是全球最大的开源库生态系统. 能方便地搭建响应速度快.易于扩展的网络应用,Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用. 官网:https://nodejs.org/en/中文:https://cnode…
开始之前,安利一本正在看的书<站在两个世界的边缘>,作者程浩,上帝丢给他太多理想,却忘了给他完成理想的时间.OK,有兴趣的可以看一看. node.js如标题一样,我也是刚开始接触,大家一起学习,有不当的地方望指正.node.js是做什么的,有什么优势等问题.首先,它是什么,它是采用C++语言编写而成的,是一个JavaScript的运行环境,也就是说:可以编写系统级或者服务器端的JavaScript代码,交给node.js来解释执行.也就是说他是一个服务器端JavaScript解释器,它的目标是…
介绍 众所周知,Node.js运行在Chrome的JavaScript运行时平台上,我们把该平台优雅地称之为V8引擎.不论是V8引擎,还是之后的Node.js,都是以单线程的方式运行的,因此,在多核心处理器的系统中并不能发挥其最大的性能. Node.js的cluster模块 幸运的是,Node.js给我们提供了cluster模块,它可以生成多个工作线程来共享同一个TCP连接. 它是如何运作的呢? 首先,Cluster会创建一个master,然后根据你指定的数量复制出多个server app(也被…
系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 04 - 模块系统 Node.js 教程 05 - EventEmitter(事件监听/发射器) Node.js 教程 06 - 函数 ▁▃▅ Node.js 教程 01 - 简介.安装及配置 ▅▃▁ 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Ch…
在网上查了下,起初是下载了一个node-v0.12.7-linux-x64.tar.gz,解压在/home/node路径下,然后在/etc/profile中添加如下命令: export NODE_HOME=/home/node/node-v0.12.7-linux-x64export PATH=$PATH:$NODE_HOME/binexport NODE_PATH=$NODE_HOME/lib/node_modules 配置环境变量,然后执行 source /etc/profile 让prof…
以前一直听说有爬虫这种东西,稍微看了看资料,貌似不是太复杂. 正好了解过node.js,那就基于它来个简单的爬虫. 1.本次爬虫目标: 从拉钩招聘网站中找出“前端开发”这一类岗位的信息,并作相应页面分析,提取出特定的几个部分如岗位名称.岗位薪资.岗位所属公司.岗位发布日期等.并将抓取到的这些信息,展现出来. 初始拉钩网站上界面信息如下: 2.设计方案: 爬虫,实际上就是通过相应的技术,抓取页面上特定的信息. 这里主要抓取上图所示岗位列表部分相关的具体岗位信息. 首先,抓取,就得先有地址url:…
windows学习环境: node 版本: v0.10.35 express版本:4.10.0 mysql版本:5.6.21-log 第一部分:安装node .Express(win8系统 需要"命令行[管理员]"执行" msiexec+/package+安装包路径 "安装,否则会安装失败) 1).下载nodejs,官方下载地址:http://nodejs.org/ 2).安装过程,选择下一步直到安装完成.(node -v | npm-v //查看版本) 3).打开…
CentOS上可以通过下载*.tar.gz安装包的方式自己解压缩.编译的方式安装,同时还可以采用EPEL的方式安装: Node.js and npm are available from the Fedora Extra Packages for Enterprise Linux (EPEL) repository. If you haven't already done so, firstenable EPEL. To check if you have EPEL, run yum repol…
文章导读: 一.what's RESTful API 二.Express RESTful API 三.KOA RESTful API 四.express还是koa? 五.参考资料 一.what's RESTful API 1.1 RESTful架构 要理解什么是RESTful API我们可以先看一下什么是RESTful架构. REST是Representational State Transfer的缩写,我们可以理解为它的含义是“表现层状态转化”,wikipedia是这样说的:“an archi…
10 个最佳的 Node.js 的 MVC 框架 oschina 发布于: 2014年02月24日 (33评) 分享到:    收藏 +322 Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的, 易于扩展的网络应用· Node.js 借助事件驱动, 非阻塞 I/O 模型变得轻量和高效, 非常适合 run across distributed devices 的 data-intensive 的实时应用· 本文介绍 10 个基于 Node.…