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
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
Try Free
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