| | |
| | | AxesRaw_t lis2dhdata; |
| | | |
| | | //OLED初始化IIC |
| | | uint8_t t11; |
| | | void IIC2_Init(void) |
| | | { |
| | | // GPIO_InitTypeDef GPIO_InitStructure= {0}; |
| | |
| | | |
| | | gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 1); |
| | | io_open_drain_set(SDA_PIN, 1); |
| | | io_pull_set(SDA_PIN , IO_PULL_UP, IO_PULL_UP_NONE);//输出高阻态 |
| | | io_pull_set(SDA_PIN , IO_HIGH_Z, IO_PULL_UP_NONE);//输出高阻态 |
| | | |
| | | gpio_pin_set_dir(SCL_PIN , GPIO_DIR_OUT, 1); |
| | | io_open_drain_set(SCL_PIN, 1);//设置开漏输出 |
| | | io_pull_set(SCL_PIN , IO_PULL_UP, IO_PULL_UP_NONE); |
| | | |
| | | |
| | | io_pull_set(SCL_PIN , IO_HIGH_Z, IO_PULL_UP_NONE); |
| | | } |
| | | |
| | | uint8_t lisid; |
| | |
| | | //等待应答信号到来 |
| | | //返回值:1,接收应答失败 |
| | | // 0,接收应答成功 |
| | | |
| | | uint8_t IIC2_Wait_Ack(void) |
| | | { |
| | | uint8_t ucErrTime=0; |
| | | // IIC2_SDA_IN(); //SDA设置为输入 |
| | | gpio_pin_set_dir(SDA_PIN , GPIO_DIR_IN, 1); |
| | | SDA_1; |
| | | delay_us(6); |
| | | SCL_1; |
| | |
| | | return 1; |
| | | } |
| | | } |
| | | gpio_pin_set_dir(SDA_PIN , GPIO_DIR_OUT, 1); |
| | | SCL_0;//时钟输出0 |
| | | return 0; |
| | | } |