GithubHelp home page GithubHelp logo

xiaojun777 / node-lpt Goto Github PK

View Code? Open in Web Editor NEW

This project forked from shemanaev/node-lpt

0.0 0.0 0.0 26 KB

High-level bindings to parallel port for node.js

License: MIT License

Python 2.00% C++ 98.00%

node-lpt's Introduction

node-lpt

High-level bindings to parallel port for node.js.

Important: this module works only under linux through the parport driver, so you might need to compile kernel or modules (on gentoo mostly).

Installation

$ npm install lpt

Usage

var lpt = require('lpt')
  , port = new lpt.Port(0, 'byte', false) // open /dev/parport0 with forced `byte` mode set
  // , port = new lpt.Port(0) // the same

console.log(port.data) // read data register
console.log(port.status.busy) // get /BUSY pin status

port.data = 123 // write data register
port.control.init = true // write to control register

API

Constructor receives the following parameters:

  • port number
  • parallel port mode - optional. Can be:
    • spp
    • nibble
    • byte - default
    • epp
    • ecp
  • negotiate port - optional. If true will try IEEE 1284 compliant mode negotiation.

Port class provides next fields:

Field Type Description Read/Write Pin num
data byte Data register R/W 2..9
control.init bool INIT R/W 16
control.select bool /SELECT_IN * R/W 17
control.autofd bool /AUTO_FEED * R/W 14
control.strobe bool /STROBE * R/W 1
status.ack bool ACK R 10
status.busy bool /BUSY * R 11
status.error bool ERROR R 15
status.select bool SELECT R 13
status.paperOut bool PAPEROUT R 12
- - Ground - 18..25

*Note that this pins are inverted by node-lpt itself

**You can read control pins only after you wrote something to it. Before that moment you can't rely on pin status

Useful links

License

MIT

node-lpt's People

Contributors

denisix avatar shemanaev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.