91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-12
  • 語言: 其他
  • 標(biāo)簽: 陀螺儀??BMI160??

資源簡介

自己寫的博世BMI160驅(qū)動,功能不太全,竟供參考。(基于STM32F030)。I2C通訊初始化相關(guān)不包含在內(nèi)。

資源截圖

代碼片段和文件信息

#include?“BMI160.h“
#include?“MCU_Driver.h“
#include?“stm32f0xx_i2c.h“
#include?“stm32f0xx_conf.h“

signed?short?acc[3]?=?{0};
signed?short?gry[3]?=?{0};
signed?short?mag[3]?=?{0};
uint8_t?g_BMI160_Error?=?0;

void?BMI160_Init(void)
{
??IIC_Init();
??while(BMI160_ID?!=?BMI160_CheckId());
??BMI160_SetACC_Range(BMI160_ACC_Range16G);
??BMI160_SetGRY_Range(BMI160_GRY_Range2000);
??BMI160_SetMAG_Range(BMI160_MAG_Range50);
}

void?BMI160_WriteOneByte(uint8_t?WriteAddr?uint8_t?WriteData)
{
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_BUSY)?!=?RESET);//IF?BUSY
??I2C_TransferHandling(I2C1?BMI_WRITE_ADDR?2?I2C_AutoEnd_ModeI2C_Generate_Start_Write);
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_TXIS)?==?RESET);//If?Write?OK
??I2C_SendData(I2C1?WriteAddr);
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_TXIS)?==?RESET);//If?Write?OK
??I2C_SendData(I2C1?WriteData);
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_STOPF)?==?RESET);
}

uint8_t?BMI160_ReadOneByte(uint8_t?ReadAddr)
{
??uint8_t?tmp;
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_BUSY)?!=?RESET);//IF?BUSY
??I2C_TransferHandling(I2C1?BMI_WRITE_ADDR?1?I2C_SoftEnd_ModeI2C_Generate_Start_Write);??//softend?自動發(fā)送停止位
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_TXIS)?==?RESET);//If?Write?OK
??I2C_SendData(I2C1?ReadAddr);
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_TC)?==?RESET);
??I2C_TransferHandling(I2C1?BMI_READ_ADDR?1?I2C_AutoEnd_Mode?I2C_Generate_Start_Read);
??while(I2C_GetFlagStatus(I2C1?I2C_FLAG_RXNE)?==?RESET);
??tmp?=?I2C_ReceiveData(I2C1);
??return?tmp;
}

uint8_t?BMI160_CheckId(void)
{
??return?BMI160_ReadOneByte(BMI_CHIPID);
}

/************************************
*?BMI160_GetPMU_Status
*?use?BMI160_PMU_STATUS_TRANSBMI160_PMU_STATUS_TRANS(status?offset)?to?get?trans
*??
**************************************/
uint8_t?BMI160_GetPMU_Status(void)
{
??return?BMI160_ReadOneByte(BMI_PMU_STATUS);
}

/**************************************
*?BMI160_SetACC_Range
*range?:
*????????BMI160_ACC_Range2G
*????????BMI160_ACC_Range4G
*????????BMI160_ACC_Range8G
*????????BMI160_ACC_Range16G
******************************************/
void?BMI160_SetACC_Range(uint8_t?range)
{
??BMI160_WriteOneByte(BMI_ACC_RANGE?range);
}

/**************************************
*?BMI160_SetACC_Range
*range?:
*????????BMI160_GRY_Range2000
*????????BMI160_GRY_Range1000
*????????BMI160_GRY_Range500
*????????BMI160_GRY_Range250
*????????BMI160_GRY_Range125
******************************************/
void?BMI160_SetGRY_Range(uint8_t?range)
{
??BMI160_WriteOneByte(BMI_GYR_RANGE?range);
}

/**************************************
*?BMI160_SetACC_Range
*range?:
*???????BMI160_MAG_Range25_32?????????????
*???????BMI160_MAG_Range25_16?????????????
*???????BMI160_MAG_Range25_8??????????????
*???????BMI160_MAG_Range25_4??????????????
*???????BMI160_MAG_Range25_2??????????????
*???????BMI160_MAG_Range25????????????????
*???????BMI160_MAG_Range50????????????????
*

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????14679??2018-10-26?15:55??BMI160.c

?????文件???????1302??2018-10-26?13:44??BMI160.h

?????文件??????15337??2018-10-26?13:55??BMI160_prm.h

-----------?---------??----------?-----??----

????????????????31318????????????????????3


評論

共有 條評論