Earthquake Click
Earthquake Click demo application is developed using the NECTO Studio, ensuring compatibility with mikroSDK's open-source libraries and tools. Designed for plug-and-play implementation and testing, the demo is fully compatible with all development, starter, and mikromedia boards featuring a mikroBUS™ socket.
Click Library
- Author : MikroE Team
- Date : Feb 2020.
- Type : I2C type
Software Support
Example Description
Intializes I2C module, LOG and GPIO structure, sets INT and PWM pins as input and sets CS pin as output.
Example Libraries
- MikroSDK.Board
- MikroSDK.Log
- Click.Earthquake
Example Key Functions
- earthquake_cfg_setup Config Object Initialization function.
void earthquake_cfg_setup(earthquake_cfg_t *cfg)
Config Object Initialization function.
Click configuration structure definition.
Definition earthquake.h:457
- earthquake_init Initialization function.
EARTHQUAKE_RETVAL earthquake_init(earthquake_t *ctx, earthquake_cfg_t *cfg)
Initialization function.
Click ctx object definition.
Definition earthquake.h:433
- earthquake_proc_notify Shutoff output function.
uint8_t earthquake_proc_notify(earthquake_t *ctx)
Shutoff output function.
- earthquake_read_status Read status function.
uint8_t earthquake_read_status(earthquake_t *ctx)
Read status function.
- earthquake_read_si Read SI function.
uint16_t earthquake_read_si(earthquake_t *ctx)
Read SI function.
Application Init
Intializes of I2C driver and makes initial log.
{
log_cfg_t log_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, "---- Application Init ----" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, "------------------------\r\n" );
log_printf( &logger, " Earthquake Click \r\n" );
log_printf( &logger, "------------------------\r\n" );
}
#define EARTHQUAKE_MAP_MIKROBUS(cfg, mikrobus)
Definition earthquake.h:66
void earthquake_clear_memory(earthquake_t *ctx)
Clear Memory function.
void application_init(void)
Definition main.c:64
void display_status(uint8_t status_data)
Definition main.c:36
Application Task
This is an example that shows most of the functions that Earthquake Click has. Results are being sent to the Usart Terminal where you can track their changes.
{
{
log_printf( &logger, " Earthquake detected! \r\n" );
log_printf( &logger, "------------------------\r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
{
log_printf( &logger, " Status : " );
log_printf( &logger,
" Max SI : %d\r\n",
read_data );
log_printf( &logger, "------------------------ \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
}
log_printf( &logger, " Afterquake processing \r\n" );
log_printf( &logger, " please wait... \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, "------------------------\r\n" );
log_printf( &logger, " Waiting for a quake... \r\n" );
log_printf( &logger, "------------------------\r\n" );
}
}
uint8_t cnt
Definition main.c:34
void application_task(void)
Definition main.c:99
uint16_t read_data
Definition main.c:33
Application Output
This Click board can be interfaced and monitored in two ways:
- Application Output - Use the "Application Output" window in Debug mode for real-time data monitoring. Set it up properly by following this tutorial.
- UART Terminal - Monitor data via the UART Terminal using a USB to UART converter. For detailed instructions, check out this tutorial.
Additional Notes and Information
The complete application code and a ready-to-use project are available through the NECTO Studio Package Manager for direct installation in the NECTO Studio. The application code can also be found on the MIKROE GitHub account.