|
本帖最后由 没有名字 于 2020-12-8 13:37 编辑
数据手册不是写得很具体了,1写数据,0读D:\project\小米无线蓝牙鼠标\文档\测试数据\捕获.png数据+7位地址+8位data。在时钟下降沿时变换数据。
- uint8_t vMouse_Read_Byte(uint8_t ucAdd)
- {
- uint8_t t = 0;
- uint8_t ucSDA = 0;
- uint8_t i,ucReceive = 0;
-
- nrf_gpio_cfg_output(PAW_SCLK);
- nrf_gpio_cfg_output(PAW_SWDO);
- nrf_gpio_pin_clear(PAW_SCLK);
- nrf_delay_us(5);
- for (t = 0;t < 8;t++)
- {
- ucSDA = (ucAdd & 0x80) >> 7;
- if (ucSDA)
- nrf_gpio_pin_set(PAW_SWDO);
- else
- nrf_gpio_pin_clear(PAW_SWDO);
- ucAdd<<=1;
- nrf_delay_us(5);
- nrf_gpio_pin_set(PAW_SCLK);
- nrf_delay_us(5);
- nrf_gpio_pin_clear(PAW_SCLK);
- nrf_delay_us(5);
- }
-
- nrf_gpio_cfg_input(PAW_SWDO,NRF_GPIO_PIN_PULLUP);
- for(i = 0;i < 8;i++ )
- {
- nrf_gpio_pin_clear(PAW_SCLK);
- nrf_delay_us(5);
- nrf_gpio_pin_set(PAW_SCLK);
- ucReceive <<= 1;
- if (nrf_gpio_pin_read(PAW_SWDO))ucReceive++;
- nrf_delay_us(5);
- }
- return ucReceive;
- }
复制代码 |
评分
-
查看全部评分
|