如何使用外部加速度计检测其值并显示其模拟值本身,以便在stm32f429发现板上通过uart显示?
我尝试使用3个引脚作为我的gpio输入。在那之后被困住了。
int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_USART1_UART_Init();
GPIO_InitTypeDef GPIO_InitStruct;
__HAL_RCC_GPIOG_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_13 | GPIO_PIN_14;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);
__HAL_RCC_GPIOA_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_2 | GPIO_PIN_4 | GPIO_PIN_6;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
while (1)
{
}
}
答案 0 :(得分:0)
我将从咨询adxl345 datasheet开始。值得注意的是,adxl345是可通过I2C或SPI进行通信的设备。在代码中,您将需要启用正确的外围设备并以这种方式与设备通信。您发布的代码没有执行任何操作,而是仅启用了几个GPIO引脚。为了执行您要的操作,您将需要执行以下操作的代码:
对于第1步和第4步,有很多示例可以通过此板的UART初始化和写入数据。