Library for PCF8575 I2C Expander

Library for PCF8575 I2C Expander

PCF8575 is 16-bit I/O expander for the two-line bidirectional bus (I2C). It features 16-bit quasi-bidirectional I/O port, P07-P00 and P17-P10. It can easily be switched from output to input; write I/O with “1” to be used as an input. Quasi-bidirectional means that outputs can be used both as an input and output without the need to reconfigure the port. There are 8 address combinations (A2 A1 A0) so it is possible to have eight I2C expanders on same I2C bus. Connection PCF8575 – STM32 is plain simple. There is no need for external pull-up resistors…

Library for BMP085 Digital Pressure Sensor

Library for BMP085 Digital Pressure Sensor

Bosch’s BMP085 is a digital pressure sensor. It is designed to be connected directly to a microcontroller via the I2C bus. I2C is a synchronous two-wire interface. The first wire, SDA, is used for data transmission, while second wire, SCL, transmits a clock, which is used to keep track of the data. It features pressure measuring range of 300-1100 hPa (Pascal Unit) and temperature measurement from 0 to 65 °C. BMP085 – STM32F4 connection is pretty straight forward. The only thing which needs attention is how you power the sensor. Its maximum supply voltage is 3.6V so…

Initialization of ILI9341 LCD and STMPE811 TS for STM32F4

Initialization of ILI9341 LCD and STMPE811 TS for STM32F4

STM32F429I-DISCO comes with the Thin-film-transistor liquid-crystal display (TFT LCD) which is 2.41″ display of 262 K colours with 240×320 resolution. It includes the ILI9341 LCD controller which supports full colour, 8-color display mode for precise power control and a STMPE811 is a 4-wire resistive touch screen controller with a GPIO port expander. In this tutorial it will be explained how to create project from scratch using STM32CubeMX with LCD and touch screen. For this tutorial STM32CubeF4 libraries are mandatory which are obtainable from ST official page. However if you don’t want to download 310Mb you can use the link below to…

Intro in STM32F4CubeMX

Intro in STM32F4CubeMX

STM32CubeMX is a graphical tool for 32-bit ARM® Cortex® STM32 microcontrollers. It is part of STM32Cube initiative which provides two main components: STM32F4CubeMX: A graphical software configuration tool that generates the initialization code for STM32 peripherals. STM32F4Cube HAL: A software abstraction layer for STM32 peripherals.   In this tutorial it will be explained how to create basic project for STM32F429DISCOVERY development kit in STM32CubeMX development tool. If you don’t have Keil MDK-ARM µVision5 installed go back and check out last post. Download CubeMX from ST official page. Once downloaded navigate to Help->Install New Libraries->STM32CubeF4 Releases->Select latest version.    After…

Keil MDK-ARM uVision Installation

Keil MDK-ARM uVision Installation

Keil MDK-ARM µVision5 will be used as development environment in all projects that will be made on this site. Keil can be obtained for free on https://www.keil.com/download/product/ where we will select MDK-ARM (Development environment for Cortex and ARM devices). Version that will be downloaded is free one. Although it has some limits it won’t affect you in creating/running examples which will be provided.     Installing Device Family Pack(DFP) through Pack Installer On the first start-up after the installation of Keil MDK-ARM µVision, the Pack Installer will automatically be executed. The…