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

  • 大小: 13KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2021-06-05
  • 語言: 其他
  • 標簽: STM32??LIS3DH??IIC??

資源簡介

STM32F03通過模擬IIC讀取LIS3DH 解析數據獲取加速度和角度。 串口1輸出電腦串口助手,直接用即可,代碼規范,好移植 STM32F03通過模擬IIC讀取LIS3DH 解析數據獲取加速度和角度。 串口1輸出電腦串口助手,直接用即可,代碼規范,好移植

資源截圖

代碼片段和文件信息

//測試加速度傳感器部分,實現數據的解析、透傳、配置
//qq?363530137
#include?“delay.h“
#include?“sys.h“
#include?“gps.h“
#include?“usart.h“
#include?“io.h“?
#include?“string.h“
#include?
#include?“speed.h“
#include?“iic.h“
#include?“li_exit.h“
#include?“math.h“
__align(4)?u8?dtbuf[50];??? //打印緩存器
u8?TEMP_BUF[1024];//暫存數組
AxesRaw_t?ddata;
void?lis3dhinit(void)
{
unsigned?char??response=0;
response?=?LIS3DH_SetODR(LIS3DH_ODR_100Hz);
sprintf((char?*)dtbuf“設置采樣率:100Hz%d\r\n“response); ?
USART1_Send_String(dtbuf);
response?=?LIS3DH_SetMode(LIS3DH_NORMAL);
sprintf((char?*)dtbuf“設置工作模式:NORMAL%d\r\n“response); ?
USART1_Send_String(dtbuf);
response?=?LIS3DH_SetFullScale(LIS3DH_FULLSCALE_2);
sprintf((char?*)dtbuf“設置量程:FULLSCALE_2%d\r\n“response); ?
USART1_Send_String(dtbuf);
response?=?LIS3DH_SetAxis(LIS3DH_X_ENABLE?|?LIS3DH_Y_ENABLE?|?LIS3DH_Z_ENABLE);
sprintf((char?*)dtbuf“使能XYZ軸:XYZ_ENABLE%d\r\n“response); ?
USART1_Send_String(dtbuf);
}
void?LIS3DH_get_angle(float?acc_x?float?acc_y?float?acc_z)
{
float?angle_xangle_yangle_z;
//換算為加速度
angle_x=acc_x*4/65536*1000;
angle_y=acc_y*4/65536*1000;
angle_z=acc_z*4/65536*1000;
sprintf((char?*)dtbuf“加速度:??[X]%dmg\r\n“(int)((float)angle_x));
USART1_Send_String(dtbuf);delay_ms(200);?
sprintf((char?*)dtbuf“加速度:??[Y]%dmg\r\n“(int)((float)angle_y));
USART1_Send_String(dtbuf);delay_ms(200);?
sprintf((char?*)dtbuf“加速度:??[Z]%dmg\r\n“(int)((float)angle_z));
USART1_Send_String(dtbuf);delay_ms(200);

//換算角度
angle_x?=?(atan(angle_x?/?sqrt(angle_y*angle_y?+?angle_z*angle_z)))*180/3.14;
angle_y?=?(atan(angle_y?/?sqrt(angle_x*angle_x?+?angle_z*angle_z)))*180/3.14;
angle_z?=?(atan(angle_z?/?sqrt(angle_x*angle_x?+?angle_y*angle_y)))*180/3.14;
sprintf((char?*)dtbuf“角度:??[X]%d°\r\n“(int)((float)angle_x));
USART1_Send_String(dtbuf);delay_ms(200);?
sprintf((char?*)dtbuf“角度:??[Y]%d°\r\n“(int)((float)angle_y));
USART1_Send_String(dtbuf);delay_ms(200);?
sprintf((char?*)dtbuf“角度:??[Z]%d°\r\n“(int)((float)angle_z));
USART1_Send_String(dtbuf);delay_ms(200);
}
int?main(void)
{
int?lisid=0;
unsigned?char?lisidtemp=0;
delay_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);?//中斷分組配置
USART1_Configuration(115200);
IO_init();
IIC_Init();
delay_ms(10);?
lis3dhinit();
delay_ms(10);?
LIS3DH_GetWHO_AM_I(&lisidtemp);??//?讀取傳感器內部ID
lisid=(int)lisidtemp;
sprintf((char?*)dtbuf“LIS3DH?ID:0x%X\r\n“lisid); ?
USART1_Send_String(dtbuf);
delay_ms(50);?
while(1)
{
??LIS3DH_GetAccAxesRaw(&ddata);???//?讀取加速度初始值
??delay_ms(10);?
sprintf((char?*)dtbuf“傳感器原始值:??x=%d???y=%d???z=%d\r\n“ddata.AXIS_Xddata.AXIS_Yddata.AXIS_Z); ?
USART1_Send_String(dtbuf);
????delay_ms(200);?
LIS3DH_get_angle(ddata.AXIS_X?ddata.AXIS_Y?ddata.AXIS_Z);//解析
}
}

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

?????文件???????5846??2019-04-11?11:02??IIC\iic.c

?????文件????????863??2019-04-11?11:02??IIC\iic.h

?????目錄??????????0??2019-04-11?11:02??IIC

?????文件??????51187??2019-04-11?11:02??SPEED\speed.c

?????文件??????21292??2019-04-10?14:38??SPEED\speed.h

?????目錄??????????0??2019-04-11?11:02??SPEED

?????文件???????2964??2019-04-11?14:35??main.c

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

????????????????82152????????????????????7


評論

共有 條評論