Using GPIO from Python #piday #raspberrypi @Raspberry_Pi
Here’s a great piece showing how to access GPIO on a RasPi using Python, with some helpful thoughts for those with Arduino experience, how this differs from experiences on that platform. From Coronax’s Project Blog:
The Raspberry Pi was designed for the educational market, but one of the reasons the hacker/maker community has become so attached to it is its GPIO (General Purpose Input Output) port – a set of connections for interfacing with external electronics. The Pi’s GPIO isn’t quite as full-featured as the Arduino – there are fewer pins, and no built-in analog inputs – but it does have a lot of the basic connections like a dedicated SPI bus, I²C bus, and an external serial port.
After having fun with my Python Life game last week, I wanted to try out the Python interface to the GPIO port. I actually had something specific in mind, but I was foiled by the most important difference between the Pi and the Arduino – voltage. The Pi runs at 3.3v, while the Arduino (well, most Arduinos) uses 5 volts. A bunch of the components I’ve got can use either voltage, but some are finicky that way. As always, check your datasheets before hooking things up!
Of course, this is one of those problems with a built-in solution – buy more components! – so once I’ve got what I need I’ll get back to my original idea. In the meantime, I’ve been working through the basics of using the port from Python. This is repeating some of the basic things I’ve talked about before, just with a Raspberry Pi in place of an Arduino.
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.