ICM-20608读取WHO AM I寄存器问题

2019-07-20 03:30发布

ICM-20608为一6轴传感器与mpu6000差不多只不过功耗低一些,现在想读取WHO AM I寄存区中的0x75,然后由串口发到串口助手
以下是我的代码
int main(void)
{
        uint8_t a=0xF5;//访问 WHO AM I 寄存器的第一个字节0x75|0x80
        uint8_t b=0;
//                uint8_t rxdata=0;
//                uint8_t txdata =  0x6A;
//                uint8_t buf[2]={0};
//                buf[0] = txdata;buf[1]=0x10;


  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration----------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_SPI1_Init();
  MX_UART7_Init();

  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
       

               
                //HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_RESET);//CS拉低
               
    //if(HAL_SPI_Transmit(&hspi1,buf,2,500) != HAL_OK)
                        //return 0;
                //if(HAL_SPI_Receive(&hspi1,&rxdata,1,500) != HAL_OK)
                        //return 0;
               
                HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_SET);//CS拉高
               
                HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_RESET);//CS拉低
    if(HAL_SPI_Transmit(&hspi1, &a, 1, 200)!=HAL_OK)//向WHO AM I 寄存器发送第一个字节
                        return 0;
                if(HAL_SPI_Receive(&hspi1, &b, 1, 200)!=HAL_OK)//接收WHO AM I 寄存器的数据
                   return 0;
                HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_SET);//CS拉高
               
    HAL_Delay(300);
                HAL_UART_Transmit(&huart7, &b, 1, 200);//串口发送从寄存器得到的数据
               
       

  }

  /* USER CODE END 3 */

}

请大神指点
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
a496298685
1楼-- · 2019-07-20 19:55
志存高远 发表于 2018-1-25 17:36
或者代码共享一下

我使用的是IIC接口,基于STM32 HAL库的,确定需要吗?
志存高远
2楼-- · 2019-07-20 21:25
 精彩回答 2  元偷偷看……
a496298685
3楼-- · 2019-07-21 00:06
 精彩回答 2  元偷偷看……
志存高远
4楼-- · 2019-07-21 00:17
a496298685 发表于 2018-1-25 17:49
[mw_shl_code=c,false]#ifndef __MPU_6050_H
#define __MPU_6050_H

多谢!!!
天使之泪66
5楼-- · 2019-07-21 01:48
请问一下楼主,我在使用icm20948也是识别不了器件,如果可以,共享下你的代码可好527595943@qq.com谢谢!
北名若水
6楼-- · 2019-07-21 06:13
 精彩回答 2  元偷偷看……

一周热门 更多>