Angle 4 click
PID: MIKROE‐3130 Weight: 24 g
Angle 4 click is an angular magnetic rotary sensor, which can be used as a rotary encoder.
With the help of the AEAT‐8800‐Q24, an integrated 10 to 16‐bit programmable angular
magnetic encoder, the Angle 4 click can sense the magnetic field rotation aligned with the
center of the sensor, over the whole range of 360°. The absolute angular position can be
read from the SPI interface. The sensor IC itself offers a versatile contactless rotation
sensing platform, with the ability to fine‐tune several important working parameters, such
as the resolution, zero position, direction, hysteresis, and more.
The AEAT-8800-Q24 IC utilizes integrated Hall sensor elements,
accompanied by very sophisticated circuits for processing analog and digital
signals, resulting in a very robust and precise rotary sensing interface. This
makes Angle 4 click an ideal solution for a wide variety of contactless angle
measurement applications, such as the acquisition of position and rotation
for various BLDC or stepper motors, mechanical potentiometer replacement,
for building various HMI platforms, in robotics, and similar applications.
How does it work?
As already mentioned, Angle 4 click uses the AEAT‐8800‐Q24, an integrated
10 to 16-bit programmable angular magnetic encoder, by Broadcom. This
sensor relies on integrated Hall elements and complex analog front end and
digital signal processing, in order to provide absolute angular position over
the industry standard SPI interface. The user has the ability to
programmatically set the zero position, direction, hysteresis, and the
resolution. This allows the Click board™ to be tailored according to needs for
a range of different applications.
The possibility to sense the rotational angle of a diametrically magnetized
object parallel with the Click board™ surface, gives an opportunity to
develop both contactless rotational and positional measurement applications,
as well as the human-machine interfaces (HMI), such as the rotary
encoders, digital potentiometers, and similar. The calibration is simple, and
the AEAT-8800-Q24 datasheet provides a detailed explanation how to
calibrate the device by using a diametrically magnetized object (i.e. a
magnetic disc), with its axis aligned to the center of the sensor. For the best
results, the magnet properties should be according to specifications in the
datasheet. Once calibrated, it can be permanently used, with no additional
recalibrations.
The AEAT-8800-Q24 uses the non-volatile one-time programming memory
during the operation. It contains registers with the calibration values, zero
offsets, resolution and so on. All the OTP locations have their shadow
locations, which allow writing, but only when the unlock command is issued
(writing 0xAB to the location 0x10). However, the values will be lost after
the power cycle and will be rewritten with the values contained in the OTP
memory.
The library provided with Angle 4 click offers several simple and useful
functions, among which is the angle4_calibration function, which will
automatically program the direction and the resolution parameters to the
OTP memory, passed as argumetns to this function. However, the OTP
memory will not be permanently written, unless appropriate programming
voltage is applied to the VDDP pin. Since the OTP memory can be programmed only
once, a thorough understanding of the OTP programming process is required. More
information about the OTP programming process can be found in the AEAT‐8800‐Q24
datasheet.
The Click board™ contains an SMD jumper, labeled as PWR SEL, which can
be used to set the operating voltage of the click board to either 3.3V or to
5V. This allows a wide range of different MCUs to be interfaced with the Click
board™, operating both at 3.3V and 5V.
Specifications
Type
Magnetic
Applications
It is an ideal solution for a wide variety of contactless angle measurement
applications, such as the acquisition of position and rotation for various BLDC
or stepper motors, mechanical potentiometer replacement, for building
various HMI platforms, in robotics, and similar applications
On-board
modules
AEAT-800-Q24, an integrated 10 to 16-bit programmable angular magnetic
encoder, by Broadcom
Key Features
Accurate sensing of the magnetic angle, providing absolute positional
readings over the SPI, good linearity and low error margin over 360,
programmable working parameters, OTP memory for permanent working
parameters storage
Interface
SPI
Input Voltage
3.3V or 5V
Click board
size
M (42.9 x 25.4 mm)
Pinout diagram
This table shows how the pinout on Angle 4 click corresponds to the pinout on
the mikroBUS™ socket (the latter shown in the two middle columns).
Notes
Pin
Pin
NC
1
AN
PWM
16
NC
NC
2
RST
INT
15
NC
CS
3
CS
RX
14
NC
SPI Clock
SCK
4
SCK
TX
13
NC
SPI Data OUT
SDO
5
MISO
SCL
12
NC
SPI Data IN
SDI
6
MOSI
SDA
11
NC
Power supply
3.3V
7
3.3V
5V
10
5V
Ground
GND
8
GND
GND
9
GND
Notes
SPI Chip Select
Power supply
Ground
Onboard settings and indicators
Label
Name
Default
LD1
PWR
-
JP1
PWR SEL
Left
Description
Power LED indicator
Power supply voltage selection: left position 3.3V,
right position 5V
Software support
We provide a library for the Angle4 Click on our LibStock page, as well as a
demo application (example), developed using MikroElektronika compilers. The
demo can run on all the main MikroElektronika development boards.
Library Description
Library initializes and defines SPI bus driver and driver functions which offer
a choice to write data in registers and to read data from registers. Library
also offers a choice to sets absolute resolution read data and sets the
direction. A user has an angle-reading function, a function for starting the
measurement, and starting the chip calibration that is necessary for
operation.
Key functions:
vuint8_t angle4_getNewAngle(uint16_t *dataOut) - Functions for read Angle
void angle4_startMesuremenet() - Functions for start measurement
void angle4_calibration(uint8_t dir, uint8_t data_resolution) - Functions for
calibration chip
Example description
The application is composed of three sections:
System Initialization - Initializes SPI module and set CS pin as OUTPUT
Application Initialization - Driver initialization, standard configurations, and start measurement
Application Task - (code snippet) - Reads Angle in degrees and logs data to USBUART every
200 ms.
void applicationTask()
{
angle4_getNewAngle(&Angle);
IntToStr(Angle, demoText);
mikrobus_logWrite(" Angle : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_TEXT );
mikrobus_logWrite(" deg", _LOG_LINE);
Delay_ms( 200 );
}
The full application code, and ready to use projects can be found on
our Libstock page.
Other MikroElektronika libraries used in the example:
SPI
Conversions
Additional notes and information
Depending on the development board you are using, you may need USB UART
click, USB UART 2 click or RS232 click to connect to your PC, for development
systems with no UART to USB interface available on the board. The terminal
available in all MikroElektronika compilers, or any other terminal application
of your choice, can be used to read the message.
mikroSDK
This click board is supported with mikroSDK - MikroElektronika Software
Development Kit. To ensure proper operation of mikroSDK compliant click
board demo applications, mikroSDK should be downloaded from
the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.
https://www.mikroe.com/angle‐4‐click 9‐19‐18