当前位置: 首页 > news >正文

模拟建设官方网站阿里巴巴免费建网站

模拟建设官方网站,阿里巴巴免费建网站,广州17网,wordpress文章进不去版本号:Serialport5.0.0-beta3本文链接想象一个世界#xff0c;你可以在那写javascript来控制搅拌机#xff0c;灯#xff0c;安全系统或者甚至是机器人。是的#xff0c;我说的是机器人。那个世界就是这儿#xff0c;现在使用node serialport。它提供一个非常简单的接口所…版本号:Serialport5.0.0-beta3本文链接想象一个世界你可以在那写javascript来控制搅拌机灯安全系统或者甚至是机器人。是的我说的是机器人。那个世界就是这儿现在使用node serialport。它提供一个非常简单的接口所需要的串口程序代码Arduino 单片机, X10 无线通信模块, 或者甚至是上升到 Z-Wave 和Zigbee . 在这个物理世界你可以随心所欲(The physical world is your oyster with this goodie.)。想完全了解为什么我们做这个请阅读NodeBots - The Rise of JS Robotics.为了入门node-serialport我们建议你从下列文章开始Johnny-Five - Johnny-Five 机器人技术和物联网平台的六行“helloworld”(太棒了).NodeBots - The Rise of JS Robotics - 一篇调查文章关于为什么一个世界需要在js里编写机器人程序以及如何开始。平台支持serialport支持NodeJS v4 以及更高版本。0.10和0.12版本使用serialport4。serialport支持的平台体系架构和nodejs版本可以查看下列表格信息。平台/架构Node v4.xNode v6.xNode v7.xLinux / ia32Linux / x64Linux / ARM v6¹Linux / ARM v7¹Linux / ARM v8¹Linux / MIPSel¹Linux / PPC64¹Windows² / x86Windows² / x64OSX³ / x64¹ ARM, MIPSel and PPC64¹ 平台已知可以运行但是不属于我们的测试范围或者构建矩阵。 #846 ARM v4 and v5 在 Node v0.10版本之后从Nodejs中取消.² Windows 7, 8, 10, and 10 IoT 是支持的但是只有Windows Server 2012 R2 是由我们测试的.³ OSX 10.4 Tiger 以及更高版本是支持的 但是只有 10.9.5 Mavericks 和 Xcode 6.1 是由我们测试的.安装说明对于大多数“标准”使用案例(在maclinuxwindows x86或者x64上node V4.x)node-serialport将会很好以及很容易的安装。npm install serialport安装的平台环境我们使用node-pre-gyp来编译以及公布大多数常见使用平台(linuxmacwindows在标准的处理器平台)的二进制库。如果你是特别的平台node-serialport将会工作但是当你安装的时候它将会编译二进制文件。这假定你有必要让你可以在自己系统中编译一些nodejs模块。这个或许并非如此可是请确认下列对于你系统是正确的在你提出关于“无法安装”的issue之前。对于所有操作系统请确认你有安装了Python 2.x 以及不是3.0node-gyp(你用来编译的工具)需要Python 2.x。Alpine LinuxAlpine 是一个(非常)小的linux开发版系统, 但是它使用组织标准库来代替函数库 (大多数开发版linux系统使用的), 所以他需要编译。 它通常使用Docker.我们已经编译了可以工作的 apline-node.# 如果你没有安装node/npn先添加它们sudo apk add --no-cache nodejs# 添加必要的构建库和运行依赖sudo apk add --no-cache make gcc g python linux-headers udev# 然后我们就能安装 serialport, 强制它编译npm install serialport --build-from-source# 如果你使用root来安装你需要使用ElectronElectron是一个框架用来创建跨平台桌面程序。Electron自带他自己的Node.js运行版本如果你需要serialport作为一个Electron项目的依赖你需要为你用在项目里的Electron项目编译它。当你第一次安装serialport,它会编译针对你机器的Node.js版本的serialport而不是针对Electron捆绑的Node.js运行版本。再次为Electron编译serialport(或者一个本地模块)你可以使用electron-rebuild.1.npm install --save-dev electron-rebuild2.将electron-rebuild加入到你项目中的package.json的安装钩子。3.运行npm install更多关于electron-rebuild的信息访问README.非法指令假定一个完全有能力的芯片预编译的二进制文件。例如Galileo2缺乏一些ia32指令集架构。一些其他平台有相似的问题。所以当你试图运行serialport时如果你得到非法指令你将需要重新构建serialport二进制文件通过告知npm去重新构建它。#告知npm构建serialport在安装的时间内npm install serialport --build-from-source#如果你有一个依赖serialport的包你可以告知npm去特别重新构建它。npm rebuild serialport --build-from-source#或者除去包名重新构建所有npm rebuild --build-from-sourceMac OS X确定你有是在最低的xCode命令行工具里安装适用你系统的配置。如果你最近更新了系统可能会移除你安装的命令行工具请在提交问题前仔细查证。你需要使用g v4.8或者更高版本来编译Node.js 4.x的node-serialport。Raspberry Pi Linux下列是关于使用Johnny-Five和Raspi IO设置树莓派的说明。这些项目使用Node Serialport。RevisionCPUArm VersionA, A, B, B32-bit ARM1176JZF-SARMv6Compute Module32-bit ARM1176JZF-SARMv6Zero32-bit ARM1176JZF-SARMv6B232-bit ARM Cortex-A7ARMv7B332-bit ARM Cortex-A53ARMv8sudo / root如果你准备使用sudo或者root权限去安装node Serialportnpm需要你使用不安全的参数标志。这个需求一般很少需要。sudo npm install serialport --unsafe-perm --build-form-source使用标志失败导致类似的错误如下rootrpi3:~# npm install -g serialport/usr/bin/serialport-list - /usr/lib/node_modules/serialport/bin/serialport-list.js/usr/bin/serialport-term - /usr/lib/node_modules/serialport/bin/serialport-terminal.js serialport4.0.3 install /usr/lib/node_modules/serialport node-pre-gyp install --fallback-to-buildgyp WARN EACCES user root does not have permission to access the dev dir /root/.node-gyp/6.9.1gyp WARN EACCES attempting to reinstall using temporary dev dir /usr/lib/node_modules/serialport/.node-gypmake: Entering directory /usr/lib/node_modules/serialport/buildmake: *** No rule to make target ../.node-gyp/6.9.1/include/node/common.gypi, needed by Makefile. Stop.make: Leaving directory /usr/lib/node_modules/serialport/buildgyp ERR! build errorgyp ERR! stack Error: make failed with exit code: 2Ubuntu/Debian Linux最好的方式来安装任何版本的NodeJS是使用NodeSource Node.js Binary Distributions.旧版本的Ubuntu安装错误的nodejs版本和二进制名称。如果你node二进制文件是nodejs不是node或者如果你的nodejs版本是v0.10.29 那么你应该根据以下这个说明来操作。build-essential包是编译serialport必要的包。如果那儿有一个你不需要的你平台的二进制文件请继续#Using Ubuntu and node 6curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -sudo apt-get install -y nodejs#Using Debian and node 6,使用root权限curl -sL https://deb.nodesource.com/setup_7.x | bash -apt-get install -y nodejsWindowsWindows 7,Windows 8.1,Windows 10和Windows 10 IoT是支持的。预编译二进制文件是可用的但是如果你想要从源码构建它的话你需要查看node-gyp 的安装的说明。一旦这些都完成了并且可以工作了你将能从源码来安装serialport。npm install serialport --build-from-source这不是node-gyp说明的一部分但是有些时候它会帮助你如果你在visual studio创建了一个c项目它将会安装那些在两个小时安装visual studio过程中不能安装的必要的组件而你只能坐在那儿。这个将解决一些Failed to locate:CL.exe的实例。协议SerialPort 使用的是MIT协议以及它所有的依赖关系都是遵循MIT或者BSD协议。使用打开一个串口var SerialPort require(serialport);var port new SerialPort(/dev/tty-usbserial1,{baudRate: 57600});当打开一个串口你可以指定(按这个顺序)1.串口的路径 - 需要2.选项 - 可选的下面会描述打开一个串口构造一个SerialPort项目将会立即打开一个串口。当你可以在任何时候能读出和写入(它会在打开的串口中排列)大多数串口函数要求一个开启的串口。当串口是打开的时候你可以使用以下三个方式调用代码。open事件经常会触发当串口打开的时候。 当autoOpen选项没有失效的时候构造函数的 openCallback被传递给.open()。如果你已经将它关闭callback回调会被忽视。.open()函数需要一个在串口打开后的回调。如果你关闭了autoOpen选项或者已经关闭了串口这个就可以被使用。var SerialPort require(serialport);var port new SerialPort(/dev/tty-usbserial1);port.on(open,function(){port.write(main screen turn on ,function(err){if(err){return console.log(Error on write: ,err.message);}console.log(message written);});});//打开错误将会发出一个错误事件port.on(error,function(err){console.log(Error: ,err.message);});这个可以被移动到构造函数的回调var SerialPort require(serialport);var port new SerialPort(/dev/tty-usbserial1,function(err){if(err){return console.log(Error:,err.message);}port.write(main screen turn on,function(err){if(err){return console.log(Error on write: ,err.message);}console.log(message written);});});当关闭autoOpen选项你将要自己打开串口。var SerialPort require(serialport);var port new SerialPort(/dev/tty-usbserial1,{autoOpen:false});port.open(function(err){if(err){return console.log(Error opening port: ,err.message);}//写入失败将会被串口发出由于没有写回调。port.write(main screen turn on);});//开启事件总是会被发出port.on(open,function(){//打开的逻辑});你可以从下列串口更新新的数据port.on(data,function(data){console.log(Data: data);});你可以通过发送一个字符串或者缓冲给写入方法来向串口写入数据。像下列一样port.write(Hi Mon!);port.write(new Buffer(Hi Mom!));享受以及使用这些代码做一些酷的事情吧调试我们使用debug 包以及记录下serialport的命名空间。我们的日志serialport:main对于所有高等级的主要日志serialport:binding 对于所有低级的日志你可以通过环境变量来应用日志。检查debug文档给更多的信息。DEBUGserialport:main node myapp.jsDEBUGserialport:* node myapp.jsDEBUG* node myapp.js错误处理所有函数在SerialPort的两个约定。参数错误抛出一个TypeError对象。当这些函数被叫做无效参数时你将会看见这些。如果没有回调被提供运行时错误提供Error对象给函数回调或者发出一个error event。你将会看到这些当一个运行错误发生比如试图开启一个错误的串口或者设置一个不支持的波特率。如果你调用正确参数的函数它应该不需要在一个try/catch结构中包括一个SerialPort对象SerialPort ⏏Kind: 输出类Kind: Exported classEmits: open, data, close, error, disconnectPropertiesNameTypeDescriptionbaudRatenumber串口的波特率使用.update来改变它。只读bindingobject支持串口的绑定对象只读.isOpenboolean如果串口打开时为true 其他情况是 false.只读. (since 5.0.0)pathstring串口的系统路径或者名称. 只读.new SerialPort(path,[options],[openCallback])为path创建一个新的串口对象.用无效的参数或者无效的选项构造一个新的串口时会抛出错误。串口将默认自动打开其次这相当于调用port.open(openCallback)。这个可以被关闭通过设置autoOpen选项为false。Throws:TypeError 当提供无效参数时 将会抛出TypeError。参数类型描述pathstring串口打开的系统路径.例如, 在Mac/Linux上/dev/tty.XXX 或者 Windows上的 COM1 .[options]openOptions串口配置选项[openCallback]errorCallback当连接已经打开. 如果它没有提供以及由错误发生它将会发出串口error事件。如果在openOptions中autoOpen被设置为false回调将不会调用serialPort.open([callback])打开一个连接到串口Kind实例方法 SerialPortEmits:open参数类型描述[callback]errorCallback当连接已经被打开. 如果它没有被提供以及有一个错误发生, 它将在串口上被发出error事件.serialPort.update([options],[callback])改变打开的串口的波特率。抛出异常如果你提供了一个错误的参数。当波特率不支持事会抛出错误或者产生回调。Kind: instance method of SerialPort参数类型描述[options]object目前只有波特率是支持的[options.baudRate]number设置波特率的串口是打开的。这应该匹配常见的波特率之一, 比如 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. 当然不能担保, 串口连接的设备将支持请求的波特率,只要串口自己支持那个波特率.[callback]errorCallback当波特率被改变的时候. 如果 .update 被调用而没有回调以及有一个错误,错误事件将会被触发。serialPort.write(data,[encoding],[callback])⇒ boolean向给定的串口写入数据。如果端口没有打开会缓存写入数据。写入操作是无阻塞的。当它返回时数据或许还没有被写入串口。看drain()一些设备比如当你打开一个连接到Arduino时它会重启。在这种情况下如果你立刻向设备写入它们将不能接收到数据。这经常在Arduino发送“ready”字节后工作你的node程序会在写入前等待。你也可以侥幸认为等待大概400ms.尽管串口是一个流但当写入它可以接受的字节数组除了字符串和缓存时这个格外的功能非常有用。Kind: 实例方法 SerialPortReturns: boolean - 如果流渴望在继续写入其他数据之前调用代码等待被触发的drain事件就是false; 其他情况是 true.Since: 5.0.0参数类型描述datastringarraybuffer接收一个 Buffer 对象, 或者一个接受buffer构造函数的类型 (除了字节数组或者一个字符串).[encoding]string编码, 如果数据块是一个字符串. 默认的是 utf8. 也接受 ascii, base64, binary, hex 查看 Buffers and Character Encodings了解所有可用的选项.[callback]function第一次写入操作结束.数据可能还没有刷新到底层端口,没有参数.serialPort.read([size]) ⇒ string | Buffer | null从串口请求一个字节数.read()方法从内存缓冲区拉取一些数据然后返回它。如果没有可用数据被读取会返回null。默认的数据将会被返回成一个缓存对象除非一个编码已经指明使用了.setEncoding()方法。Kind: 实例方法 SerialPortReturns: string | Buffer | null - 内存缓冲区数据Since: 5.0.0参数类型描述[size]number指明了会返回多少字节的数据如果是可用的话。serialPort.close(callback)关闭开启的连接Kind: 实例方法 SerialPortEmits: close参数类型描述callbackerrorCallback当连接被关闭.serialPort.set([options], [callback])在打开的串口上设置控制标志. Uses SetCommMask for windows and ioctl for mac and linux.Kind:实例方法 SerialPortSince: 5.0.0参数类型默认值描述[options]object所有选项是操作系统默认的当串口被打开. 每个标志被设置为相同的调用提供或者是默认数据.如果选项没有提供将要使用的默认选项.[options.brk]Booleanfalse[options.cts]Booleanfalse[options.dsr]Booleanfalse[options.dtr]Booleantrue[options.rts]Booleantrue[callback]errorCallback当串口标志被设置.serialPort.get([callback])返回控制标志 (CTS, DSR, DCD)在开启的串口上.使用GetCommModemStatus for windows and ioctl for mac and linux.Kind: 实例方法 SerialPort参数类型描述[callback]Called once the modem bits have been retrieved(当比特被恢复)serialPort.flush([callback])刷新收到的丢弃的数据但是不读出和写入也不传输。. 更多的详细技术请看 tcflush(fd, TCIFLUSH) for Mac/Linux and FlushFileBuffers for Windows.Kind: 实例方法 SerialPort参数类型描述[callback]errorCallback当刷新操作完成.serialPort.drain([callback])等待直到所有发出的数据被传输到串口。 查看 tcdrain() or FlushFileBuffers() 了解更多信息。Kind: 实例方法 SerialPort参数类型描述[callback]errorCallback当耗尽操作返回Example写入 data 以及等待直到在调用回调之前结束对目标串口的传输。function writeAndDrain (data, callback) {sp.write(data, function () {sp.drain(callback);});}serialPort.pause() ⇒pause()方法会导致一个流的流动模式停止触发data事件切换的流动模式. 任何可用的数据将仍然存放在内存缓存区。Kind: 实例方法SerialPortReturns: thisSee: module:serialport#resumeSince: 5.0.0serialPort.resume() ⇒resume()会导致一个明确的暂停可读的流来恢复触发的‘data事件切换流到流模式Kind: 实例方法 SerialPortReturns: thisSee: module:serialport#pauseSince: 5.0.0Event: error无论何时这有一个错误就会回调error 事件。Kind: 事件由此触发 SerialPortEvent: open当串口打开以及准备进行写入时open 事件将会无参回调。 如果碰巧如果你有构造函数立即打开或者如果你通过open()手动打开串口。查看 Useage/Opening a Port 了解更多信息.Kind: 事件由此触发 SerialPortEvent: datadata 事件输出字符串到串口在流动模式中. 一旦被接受到数据就会被发出。 数据将会是一个缓存对象很多不同的数据量在其中.readLine解析器将数据转换成字符串.查看 parsers部分了解关于解析器的更多信息以及 NodeJS stream documentation 了解更多关于数据事件的信息.Kind: 事件由此触发 SerialPortEvent: disconnectdisconnect 事件回调会调用一个错误对象. 这个经常发生在 close 事件之前如果断开连接被发现。Kind: 事件由此触发SerialPortEvent: closeclose事件是无参回调当串口被关闭时. 当一个错误发生错误事件将被触发。Kind: 事件由此触发 SerialPortSerialPort.Binding : BaseBindingBinding是node Serialport底层的系统. 默认的我们自动检测 windows, Linux 和 OSX系统 以及为你系统加载合适的模块. 你可以指定 SerialPort.Binding 去绑定任何你喜欢的后台. 你可以搜索更多信息从 npm.你也可以禁止自动后台加载通过一下代码实现var SerialPort require(serialport/lib/serialport);SerialPort.Binding MyBindingClass;Kind: 静态性能SerialPortSince: 5.0.0SerialPort.parsers : object默认的分析程序是Transform streams 可以用各种各样的方式来解析数据可以被使用来处理传入的数据。使用各种解析程序你都需要创建他们然后输送SerialPort到解析程序。千万别编写解析程序而是编写SerialPort对象。Kind: 静态特性SerialPortSince: 5.0.0Properties名称状态描述ByteLengthClass发出数据的转换流作为缓存在收到一个特定的字节数后DelimiterClass发出数据的转换流每次接受一个字节序列ReadlineClass发出数据的转换流在收到一个换行符之后例子var SerialPort require(serialport);var Readline SerialPort.parsers.Readline;var port new SerialPort(/dev/tty-usbserial1);var parser new Readline();port.pipe(parser);parser.on(data, console.log);port.write(ROBOT PLEASE RESPOND\n);// 可以缩短创建的解析程序和传输管道var parser port.pipe(new Readline());使用字节长度解析器你必须提供字节数的长度:var SerialPort require(serialport);var ByteLength SerialPort.parsers.ByteLengthvar port new SerialPort(/dev/tty-usbserial1);var parser port.pipe(new ByteLength({length: 8}));parser.on(data, console.log);使用分隔符解析器你必须指明分隔符你必须在一个字符串、缓存或者一个字节数组中提供一个分隔符:var SerialPort require(serialport);var Delimiter SerialPort.parsers.Delimiter;var port new SerialPort(/dev/tty-usbserial1);var parser port.pipe(new Delimiter({delimiter: new Buffer(EOL)}));parser.on(data, console.log);使用换行符解析器,你必须提供一个分隔符 (默认是 \n)var SerialPort require(serialport);var Readline SerialPort.parsers.Readline;var port new SerialPort(/dev/tty-usbserial1);var parser port.pipe(Readline({delimiter: \r\n}));parser.on(data, console.log);SerialPort.list(callback) : function从元数据中找回可用的串口列表. 只有“串口名”是可用的所有其他的字段如果它们不可用将会无意义。 串口名 也是一个路径或者一个标识符(例如 COM1)用来打开串口.Kind: 静态方法 SerialPort参数类型callbacklistCallback例子// 示例的串口信息{comName: /dev/cu.usbmodem1421,manufacturer: Arduino (www.arduino.cc),serialNumber: 757533138333964011C1,pnpId: undefined,locationId: 0x14200000,vendorId: 0x2341,productId: 0x0043}var SerialPort require(serialport);SerialPort.list(function (err, ports) {ports.forEach(function(port) {console.log(port.comName);console.log(port.pnpId);console.log(port.manufacturer);});});SerialPort~BaseBinding你永远不能直接使用Binding对象因为它们通过SerialPort来接触底层硬件. 这个文档是针对绑定不同平台的用户.这个类能被继承来为每个方法进行类型检查.Kind: 内部类 SerialPortSince: 5.0.0Properties名称类型描述isOpenboolean必须的属性. 串口打开就是true , 其他的是false.只读.~BaseBindinginstance.close() ⇒ Promise.read(data, length) ⇒ Promise.write(data) ⇒ Promise.update([options]) ⇒ Promise.set([options]) ⇒ Promise.get() ⇒ Promise.flush() ⇒ Promise.drain() ⇒ Promisestatic.list() ⇒ Promisenew BaseBinding(options)Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.参数类型描述optionsobjectoptions.disconnectfunction当binding被检测到一个没连接的串口方法将会被调用. 这个方法应该在所有操作期间调用而不是在操作正常回调后调用。SerialPort 将试图调用 close在断开连接后以及会忽视所有错误.baseBinding.open(path, openOptions) ⇒ Promise通过路径打开一个引用的串口连接Kind: 实例方法BaseBindingReturns: Promise - 在串口打开和配置好后返回解决.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.参数类型pathstringopenOptionsopenOptionsbaseBinding.close() ⇒ Promise关闭一个串口连接Kind: 实例方法 BaseBindingReturns: Promise - 一旦串口被关闭返回解决.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.baseBinding.read(data, length) ⇒ Promise从SerialPort请求一个字节数。这个方法和node的 fs.read相似.Kind: 实例方法 BaseBindingReturns: Promise -在阅读操作结束之后返回读取的字节数.Throws:TypeError当给定一个无效的参数将会抛出TypeError错误.Params: integer 偏移 - 在缓存区偏移处开始写入.参数类型描述databufferlengthinteger读取指定的最大字节数baseBinding.write(data) ⇒ Promise向SerialPort写入一个字节数这将只能在没有等待写入的操作时被调用.Kind: 实例方法 BaseBindingReturns: Promise - 在数据传递给操作系统编写后返回.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.参数类型描述databufferbaseBinding.update([options]) ⇒ Promise改变开启的串口的连接设置。当前只能设置波特率。Kind: 实例方法 BaseBindingReturns: Promise - 当串口波特率被改变后返回.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.参数类型描述[options]object目前只有波特率支持[options.baudRate]number如果通过bingdings提供一个不支持的波特率它将回调一个错误。baseBinding.set([options]) ⇒ Promise设置一个打开的串口的控制标志。Kind: 实例方法BaseBindingReturns: Promise - 在串口的标识被设置后返回.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.参数类型默认描述[options]object当串口被打开时所有设置都是操作系统的默认设置. 每个标识都被设置成每次调用时提供的或者默认的数值。所有设置通常都是被提供的.[options.brk]Booleanfalse[options.cts]Booleanfalse[options.dsr]Booleanfalse[options.dtr]Booleantrue[options.rts]BooleantruebaseBinding.get() ⇒ Promise从打开的串口中获得控制标识(CTS, DSR, DCD).Kind: 实例 BaseBindingReturns: Promise - 当标识被获取后返回.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.baseBinding.flush() ⇒ Promise接收到的冲洗 (丢弃)的数据不会被读写也不会传输.Kind: 实例方法 BaseBindingReturns: Promise - 当冲洗操作结束后返回.Throws:TypeError 当给定一个无效的参数将会抛出TypeError错误.baseBinding.drain() ⇒ Promise耗尽等待所有输出数据被传输到串口后.Kind: instance method of BaseBindingReturns: Promise - 耗尽操作结束后调用.Throws:TypeError当给定一个无效的参数将会抛出TypeError错误.BaseBinding.list() ⇒ Promise从元数据中找回可用的串口列表. 只有“串口名”是可用的所有其他的字段如果它们不可用将会无意义。 串口名 也是一个路径或者一个标识符(例如 COM1)用来打开串口.Kind: 实例方法 BaseBindingReturns: Promise - 串口列表数组info objects.SerialPort~errorCallback : function错误或者null的回调Kind: 内部类型定义 SerialPort参数类型errorerrorSerialPort~modemBitsCallback : function控制标识(cts, dsr, dcd)一个错误或者对象产生回调.Kind: 内部类型定义 SerialPort参数类型默认errorerrorstatusobject[status.cts]booleanfalse[status.dsr]booleanfalse[status.dcd]booleanfalseSerialPort~openOptions : ObjectKind: 内部类型定义 SerialPortProperties名称类型默认描述Bindingmodule:serialport~Binding硬件访问绑定, 绑定是node SreialPort如何和底层系统通信.默认的我们自动判断Windows (WindowsBinding), Linux (LinuxBinding) 和 OSX (DarwinBinding)系统以及加载合适我们系统的模块.autoOpenbooleantrue在 nextTick自动打开串口lockbooleantrue防止其他进程打开串口. 目前不支持Windows系统.baudRatenumber9600已经打开的串口的波特率. 这个应该匹配一个常用的波特率比如 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. 这些是不确定的, 设备连接到串口上将支持请求的波特率即使串口自己支持那个波特率。dataBitsnumber8必须是其中之一: 8, 7, 6, or 5.stopBitsnumber1必须是其中之一: 1 or 2.highWaterMarknumber16384读写缓存区大小默认是 16kparitystringnone必须是其中之一: none, even, mark, odd, spacertsctsbooleanfalse流控制设置xonbooleanfalse流控制设置xoffbooleanfalse流控制设置xanybooleanfalse流控制设置bindingOptionsobject设置特定的绑定选项bindingOptions.vminnumber1查看man termios LinuxBinding和 DarwinBindingbindingOptions.vtimenumber0查看man termios LinuxBinding 和 DarwinBindingSerialPort~listCallback : function这个回调类型叫做 requestCallback作为一个全局标识展示。Kind: 内部类型定义 SerialPort参数类型描述errorerrorportsarray串口信息的对象数组命令行工具如果你全局安装了 serialport. (例如 npm install -g serialport) 你会获得两个命令行工具.串口列表serialport-list 将会通过不同的格式列出所有可用的串口.$ serialport-list -hUsage: serialport-list [options]List available serial portsOptions:-h, --help 输出帮助信息-V, --version 输出版本号-f, --format 输出的格式 text, json, or jsonline. 默认的是: text$ serialport-list/dev/cu.Bluetooth-Incoming-Port/dev/cu.usbmodem1421 Arduino (www.arduino.cc)$ serialport-list -f json[{comName:/dev/cu.Bluetooth-Incoming-Port},{comName:/dev/cu.usbmodem1421,manufacturer:Arduino (www.arduino.cc),serialNumber:752303138333518011C1,locationId:0x14200000,vendorId:0x2341,productId:0x0043}]$ serialport-list -f jsonline{comName:/dev/cu.Bluetooth-Incoming-Port}{comName:/dev/cu.usbmodem1421,manufacturer:Arduino (www.arduino.cc),serialNumber:752303138333518011C1,locationId:0x14200000,vendorId:0x2341,productId:0x0043}串口终端serialport-term 提供基础的命令的接口给一个串口通信使用。 通过ctrlc退出.$ serialport-term -hUsage: serialport-term -p [options]A basic terminal interface for communicating over a serial port. Pressing ctrlc exits.Options:-h, --help 输出帮助信息-V, --version 输出版本号-l --list 列出可用串口然后退出-p, --port, --portname 串口的路径或者名称-b, --baud 波特率默认是: 9600--databits 数据字节 默认是: 8--parity 奇偶性默认是: none--stopbits 停止位默认是: 1--echo --localecho 打印类型你输入它们时.$ serialport-term -l/dev/cu.Bluetooth-Incoming-Port/dev/cu.usbmodem1421 Arduino (www.arduino.cc)
http://www.pierceye.com/news/886558/

相关文章:

  • 单位网站服务的建设及维护oa软件定制开发
  • 银川公司网站建设zepto网站开发
  • 看谁做的好舞蹈视频网站电话营销
  • 开封建网站到哪里学平面设计
  • 电子商务与网站建设实践论文化工行业网站建设
  • 如何搭建一个网站平台卖16斤肉赚200元
  • 手机主页网站推荐江宁城乡建设局网站
  • 甜品网站设计论文张家界seo
  • 单位网站及政务新媒体建设管理wordpress刷留言
  • 用花瓣网站上的图片做游戏行吗西安霸屏推广
  • 单片机和做网站医疗网站建设渠道
  • 上海做家纺的公司网站新闻发布稿
  • 广告网站大全扁平化网站psd
  • wordpress开启多站点那个网站可以做宣传
  • 专门建站的公司本网站正在建设升级中
  • 花市小说网站那里进建网站的公司哪里有
  • 自建网站服务器备案免费做易拉宝网站
  • 经典手机网站家政公司网站模板
  • 外贸做的亚马逊网站是哪个好产品怎样推广有效
  • 网站后台数据库备份怎么做怎样在阿里做网站
  • 后台网站手机版视频怎么做安阳百姓网
  • 设计公司网站公司详情域名解析网站登录
  • 优秀学校网站设计可以免费下源码的网站
  • 榆林高端网站建设xampp使用教程 wordpress
  • 站长工具搜一搜找做网站的
  • 建一个域名网站要多少钱南京哪里有做网站的
  • 网站群的建设网站建设自助建站制作
  • 怎么做网站程序标书制作教程全过程
  • 学网站建设前景印度做杂质的网站
  • 网站的建设意义盐城网站建设找哪家好