Example program for the HMC1501 magnetic 90° angle sensor connected to a HX711 high precision 24-bit programmable analog-to-digital converter (ADC) .

Dependencies:   HMC1501 HX711

Example program for the HMC1501 magnetic 90° angle sensor. The HMC1501 analog output is connected to a HX711 high precision 24-bit analog to digital converter module.

HMC1501

100


The Honeywell HMC1501 is a miniature surface mount sensor for linear, 90° angular, or rotary displacement designed for magnetic saturating field sensing. The HMC1501 contains a single saturated-mode Wheatstone bridge sense element that creates an output voltage with respect to the direction of the magnetic flux passing over the sensor surface. It's a cost effective and space-efficient solution for high volume OEM designs. Applications for the HMC1501 sensor include Position Sensing, Rotary speed and angle detection, and non-contact precision location measurement systems. The HMC1501 sensor utilize Honeywell’s Anisotropic Magneto-Resistive (AMR) technology that provides advantages over hall-effectbased magnetic sensors. It is able to resolve better than tenths of a degree or tenths of millimeters, withstand large variations in magnet-to-sensor gaps, and exhibit insensitivity to shocks and vibrations.

Wiring of a connection with an HX711 Analog-to-Digital converter module:

https://os.mbed.com/media/uploads/hudakz/hmc1501_demo_wiring.png

Used libraries:

Import libraryHMC1501

Library for the HMC1501 magnetic 90° angle sensor.

Import libraryHX711

Library for communication with the HX711 24-Bit Analog-to-Digital converter.

README.md

Committer:
hudakz
Date:
2020-09-19
Revision:
1:668c95f5e6f9
Parent:
0:7eed1f44df4a

File content as of revision 1:668c95f5e6f9:

![](./resources/official_armmbed_example_badge.png)
# Blinky Mbed OS example

The example project is part of the [Arm Mbed OS Official Examples](https://os.mbed.com/code/) and is the [getting started example for Mbed OS](https://os.mbed.com/docs/mbed-os/v5.14/quick-start/index.html). It contains an application that repeatedly blinks an LED on supported [Mbed boards](https://os.mbed.com/platforms/).

You can build the project with all supported [Mbed OS build tools](https://os.mbed.com/docs/mbed-os/latest/tools/index.html). However, this example project specifically refers to the command-line interface tool [Arm Mbed CLI](https://github.com/ARMmbed/mbed-cli#installing-mbed-cli).
(Note: To see a rendered example you can import into the Arm Online Compiler, please see our [import quick start](https://os.mbed.com/docs/mbed-os/latest/quick-start/online-with-the-online-compiler.html#importing-the-code).)

1. [Install Mbed CLI](https://os.mbed.com/docs/mbed-os/latest/quick-start/offline-with-mbed-cli.html).

1. Clone this repository on your system, and change the current directory to where the project was cloned:

    ```bash
    $ git clone git@github.com:armmbed/mbed-os-example-blinky && cd mbed-os-example-blinky
    ```

    Alternatively, you can download the example project with Arm Mbed CLI using the `import` subcommand:

    ```bash
    $ mbed import mbed-os-example-blinky && cd mbed-os-example-blinky
    ```


## Application functionality

The `main()` function is the single thread in the application. It toggles the state of a digital output connected to an LED on the board.

## Building and running

1. Connect a USB cable between the USB port on the board and the host computer.
2. <a name="build_cmd"></a> Run the following command to build the example project and program the microcontroller flash memory:
    ```bash
    $ mbed compile -m <TARGET> -t <TOOLCHAIN> --flash
    ```
The binary is located at `./BUILD/<TARGET>/<TOOLCHAIN>/mbed-os-example-blinky.bin`.

Alternatively, you can manually copy the binary to the board, which you mount on the host computer over USB.

Depending on the target, you can build the example project with the `GCC_ARM`, `ARM` or `IAR` toolchain. After installing Arm Mbed CLI, run the command below to determine which toolchain supports your target:

```bash
$ mbed compile -S
```

## Expected output
The LED on your target turns on and off every 500 milliseconds.


## Troubleshooting
If you have problems, you can review the [documentation](https://os.mbed.com/docs/latest/tutorials/debugging.html) for suggestions on what could be wrong and how to fix it.

## Related Links

* [Mbed OS Stats API](https://os.mbed.com/docs/latest/apis/mbed-statistics.html).
* [Mbed OS Configuration](https://os.mbed.com/docs/latest/reference/configuration.html).
* [Mbed OS Serial Communication](https://os.mbed.com/docs/latest/tutorials/serial-communication.html).
* [Mbed OS bare metal](https://os.mbed.com/docs/mbed-os/latest/reference/mbed-os-bare-metal.html).
* [Mbed boards](https://os.mbed.com/platforms/).

### License and contributions

The software is provided under Apache-2.0 license. Contributions to this project are accepted under the same license. Please see contributing.md for more info.

This project contains code from other projects. The original license text is included in those source files. They must comply with our license guide.