> For the complete documentation index, see [llms.txt](https://royals6234.gitbook.io/madmachine-examples/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://royals6234.gitbook.io/madmachine-examples/examples/simpleio.md).

# SimpleIO

After finished last part, you must know how to use input and output pins.

Now you are ready to go. We are going to get things more exciting. 😎

Follow these examples based on what you have learned before.

* [ButtoncontrolLED](/madmachine-examples/examples/simpleio/buttoncontrolled.md) - when the button is pressed, the input value will be changed. If it is detected, turn on the led.
* [BlinkAnalogIn](/madmachine-examples/examples/simpleio/blinkanalogin.md) - change the sleep time with the raw value read from analog pin to change the blink frequency.
* [BlinkTimer](/madmachine-examples/examples/simpleio/blinktimer.md) - use the timer to set interrupt and every second the led will be toggled.
* [BrightnessAnalogIn](/madmachine-examples/examples/simpleio/brightnessanalogin.md) - set the duty cycle of the PWM output with the float number between 0.0 and 1.0 read from the analog pin.
* [Debounce](/madmachine-examples/examples/simpleio/debounce.md) - when the button is pressed, check the input signal in a certain period to ensure the exact status of the button and then turn on the onboard led.
* [LEDsBrightnessControl](/madmachine-examples/examples/simpleio/ledsbrightnesscontrol.md) - brighten and dim three LEDs alternatively by increasing and decreasing the duty cycle of the PWM output.
* [PWMSoundOutput](/madmachine-examples/examples/simpleio/pwmsoundoutput.md) - change the frequency of the PWM output to generate different notes.
* [PWMMelody](/madmachine-examples/examples/simpleio/pwmmelody.md) - list a combination of the frequencies of different pitches to generate a harmonious melody.
