Skip to content

Latest commit

 

History

History
35 lines (24 loc) · 3.11 KB

README.md

File metadata and controls

35 lines (24 loc) · 3.11 KB

HX710B non-blocking SPI (STM32F767ZI)

An STM32 HAL example of reading the Avia Semiconductor HX710B 24-bit ADC for pressure sensors.

Water level measuring

Preassure sensing

Data rate selection

AVIA Semiconductor 24-Bit ADC with (DVDD-AVDD) Voltage Difference Detection (HX710B): Fig.2 Data output, input and data rate selection timing and control Source: HX710B Datasheet

In the example MOSI is used as CLK to produce the required number of cycles/pulses for HX710B. It enables a straightforward use of DMA just by calling HAL_SPI_TransmitReceive_DMA().

Missing files?

Don't worry 🙂 Just hit Alt-K to generate /Drivers/CMCIS/ and /Drivers/STM32F7xx_HAL_Driver/ based on the .ioc file. After a couple of seconds your project will be ready for building.

Exemplary hardware for breadboarding

Sources and inspirations

  • MOSI as CLK for HX710B: My original idea, i.e. not copied from other sources. It doesn't mean that I'm the first one to do it this way - probably I'm not. I just didn't came across such a solution in other projects known to me.
  • LCD: kurs-stm32-e16-lcd or kurs-stm32-e17-lcd-znaki (MIT license)

Call for action

Start building your own home laboratory/workshop/garage! Get inspired by ControllersTech, DroneBot Workshop, Andreas Spiess, GreatScott!, ElectroBOOM, Phil's Lab, atomic14, That Project, Paul McWhorter, and many other professional hobbyists sharing their awesome projects and tutorials! Shout-out/kudos to all of them!

Warning

Control engineering - try this at home ❗

190+ challenges to start from: Control Engineering for Hobbyists at the Warsaw University of Technology.

Stay tuned!