![]() ![]() PCF8574 GPIO Extender run on the I2C bus, extending the 'IO Pins' which can be controlled by a single host I2C bus. Both masters and slaves can transmit or receive data. ![]() Usually there is one master and one or multiple slaves on the line, however there can be multiple masters aswell. The two wires are:īoth of these lines are open-drain, and are pulled-up with resistors. For now we will just cover the basics of I2C and we will jump to our main topic. If you want to know more about the I2C technology please check out my 'Tutorial Number 09'. Inter-integrated Circuit pronounced I-squared-C (I☬) or I2C is a 'short distance', 'two wire bus technology' (well actually 4 wires because you also need the VCC and Ground) that is used for 'serial communication' between multiple processors and sensors. You just need to hook them up to the I2C bus and you are all ready to go. If you don't want to worry about the wiring and just want to keep your project really "simple", then you can buy these fully assembled breakout boards. These ICs are ridiculously cheap and can be bought easily from eBay or AliExpress. Each device will give us an additional 8-bits of GPIO enabling 64 GPIOs in total. These modules run on the I2C bus, and if daisy-chained you can connect upto 8 of these devices in a project. This "GPIO (General Purpose Input Output) pin extender" provides an additional 8 pins (P0 ~ P7) which can be used to 'output a signal' or 'read a signal as an input'. This tiny little board becomes a life saver When you run out of pins on your Arduino. It is one of the many GPIO extenders available in the market. In this tutorial, I am going to talk about the PCF8574 8-bit GPIO Port Extender. I need the pin to float.In my last tutorial, I talked about the TCA9548A MUX which can be used to add at the max of 64 I2C or I☬ sensors to your Arduino/ESP8266/ESP32. I was having some erratic behavior on inputs, so I checked it with a 'scope and it seems that although I have not enabled the internal pullup, I have +3.3v appearing on the input pin. Using the "Mighty Mini" board which uses the Atmega1284p processor, with Arduino IDE 2:1.0.5 on Raspbian, with Mighty Mini "board" files installed. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |