19e3ce5ee3
1. Add interrupt context check function (context_gcc.S) 2. Add lock (semaphore) for IIC, USART and Ethernet drivers to prevent simultaneously access 3. Add multiple channels support for scan mode of ADC driver 4. Modify miscellaneous drivers according to ADC driver changes 5. Add SWO output enable function (board.c) 6. Disable all interrupts in GPIO interrupt handler (hdl_interrupt.c) 7. Add two Ethernet utility functions (drv_ethernet.c) 8. Add accelerometer driver (analog output) 9. Add accelerometer demo (draft, application.c) git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1654 bbd45198-f89e-11dd-88c7-29a3b14d5316
41 lines
1.7 KiB
C
41 lines
1.7 KiB
C
/***************************************************************************//**
|
|
* @file dev_accel.h
|
|
* @brief Accelerometer driver of RT-Thread RTOS for EFM32
|
|
* COPYRIGHT (C) 2011, RT-Thread Development Team
|
|
* @author onelife
|
|
* @version 0.4 beta
|
|
*******************************************************************************
|
|
* @section License
|
|
* The license and distribution terms for this file may be found in the file
|
|
* LICENSE in this distribution or at http://www.rt-thread.org/license/LICENSE
|
|
*******************************************************************************
|
|
* @section Change Logs
|
|
* Date Author Notes
|
|
* 2011-07-13 onelife Initial creation for using EFM32 ADC module to
|
|
* interface the Freescale MMA7361L
|
|
******************************************************************************/
|
|
#ifndef __DEV_ACCEL_H__
|
|
#define __DEV_ACCEL_H__
|
|
|
|
/* Includes ------------------------------------------------------------------*/
|
|
/* Exported types ------------------------------------------------------------*/
|
|
struct efm32_accel_result_t
|
|
{
|
|
rt_uint32_t x;
|
|
rt_uint32_t y;
|
|
rt_uint32_t z;
|
|
};
|
|
|
|
/* Exported constants --------------------------------------------------------*/
|
|
/* Exported macro ------------------------------------------------------------*/
|
|
#define ACCEL_X_ADC_CH ADC_SCANCTRL_INPUTMASK_CH2
|
|
#define ACCEL_Y_ADC_CH ADC_SCANCTRL_INPUTMASK_CH3
|
|
#define ACCEL_Z_ADC_CH ADC_SCANCTRL_INPUTMASK_CH4
|
|
|
|
/* Exported functions ------------------------------------------------------- */
|
|
rt_err_t efm_accel_get_data(struct efm32_accel_result_t *data);
|
|
rt_err_t efm_accel_auto_zero(rt_tick_t period);
|
|
rt_err_t efm_accel_init(void);
|
|
|
|
#endif /*__DEV_ACCEL_H__ */
|