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
Gen AI apps are built with MongoDB Atlas Icon
Gen AI apps are built with MongoDB Atlas

Build gen AI apps with an all-in-one modern database: MongoDB Atlas

MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
Start 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