stmhal: Make accel AVDD pin configurable via mpconfigboard.h.

This commit is contained in:
Damien George 2015-10-29 22:40:42 +00:00
parent 98b6d35c4f
commit 6f70283909
4 changed files with 16 additions and 5 deletions

View File

@ -31,6 +31,8 @@
#include "py/nlr.h"
#include "py/runtime.h"
#include "pin.h"
#include "genhdr/pins.h"
#include "i2c.h"
#include "accel.h"
@ -59,12 +61,12 @@ void accel_init(void) {
GPIO_InitTypeDef GPIO_InitStructure;
// PB5 is connected to AVDD; pull high to enable MMA accel device
GPIOB->BSRRH = GPIO_PIN_5; // turn off AVDD
GPIO_InitStructure.Pin = GPIO_PIN_5;
MICROPY_HW_MMA_AVDD_PIN.gpio->BSRRH = MICROPY_HW_MMA_AVDD_PIN.pin_mask; // turn off AVDD
GPIO_InitStructure.Pin = MICROPY_HW_MMA_AVDD_PIN.pin_mask;
GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStructure.Speed = GPIO_SPEED_LOW;
GPIO_InitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOB, &GPIO_InitStructure);
HAL_GPIO_Init(MICROPY_HW_MMA_AVDD_PIN.gpio, &GPIO_InitStructure);
}
STATIC void accel_start(void) {
@ -80,9 +82,9 @@ STATIC void accel_start(void) {
i2c_init(&I2CHandle1);
// turn off AVDD, wait 30ms, turn on AVDD, wait 30ms again
GPIOB->BSRRH = GPIO_PIN_5; // turn off
MICROPY_HW_MMA_AVDD_PIN.gpio->BSRRH = MICROPY_HW_MMA_AVDD_PIN.pin_mask; // turn off
HAL_Delay(30);
GPIOB->BSRRL = GPIO_PIN_5; // turn on
MICROPY_HW_MMA_AVDD_PIN.gpio->BSRRL = MICROPY_HW_MMA_AVDD_PIN.pin_mask; // turn on
HAL_Delay(30);
HAL_StatusTypeDef status;

View File

@ -86,3 +86,6 @@
// USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
// MMA accelerometer config
#define MICROPY_HW_MMA_AVDD_PIN (pin_B5)

View File

@ -71,3 +71,6 @@
// USB VBUS detect pin
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
// MMA accelerometer config
#define MICROPY_HW_MMA_AVDD_PIN (pin_B5)

View File

@ -86,3 +86,6 @@
// USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
// MMA accelerometer config
#define MICROPY_HW_MMA_AVDD_PIN (pin_B5)