This sketch makes the Arduino work as a GPIO interface for a computer, where input and output changes are transmitted in run-length encoding. Every time an input pin changes, the Arduino sends the new values of the input pins and the time since the last change. In a similar way, the Arduino can be programmed a sequence of output pin changes, each specified by the new values of the output pins and the time since the previous change.

Three application programs are included: the first makes two digital pins act as a TTL-levels UART; the seconds turns the value of the input pins into an image; the third reads codes from infrared remotes with a photodiode and a resistor connected to one of the input pins.

Features

  • make two digital lines a TTL-levels UART
  • with a photodiode and a resistor, read signals from remotes
  • simple logic analizer

Project Samples

Project Activity

See All Activity >

Categories

Embedded Systems

License

GNU General Public License version 3.0 (GPLv3)

Follow RunLengthGPIO

RunLengthGPIO Web Site

Other Useful Business Software
$300 Free Credits to Build on Google Cloud Icon
$300 Free Credits to Build on Google Cloud

New customers can spin up VMs, build with AI, and query data at no cost.

Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
Sign Up
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of RunLengthGPIO!

Additional Project Details

Operating Systems

Linux

Intended Audience

Developers

Programming Language

C

Related Categories

C Embedded Systems Software

Registered

2016-02-08