一、例程使用说明
- 准备好espIDF+espWho开发环境esp-who环境安装三:ESP-who安装(速度快,包成功!!!)-CSDN博客https://blog.csdn.net/weixin_43944012/article/details/142112583?spm=1002014.3001.5501
在esp-idf目录执行. ./exporsh
当然也要准备好我们的虫洞开发板
2.将例程源码chde_example_SD_IMU.zip放到esp-idf/esp-who/examples目录下,cd chde_example_SD_IMU/chde_sdmmc_imu/进入工程目录
- 执行idf.py set-target esp32s3配置工程
3.执行idf.py build进行编译
二、例程学习
- Sd卡学习
CHD_ESP32_S3_EYE开发板的sd卡采用的是sdmmc单数据设计方式,原理图如下
代码从sd_imu_example_main.c文件中的app_main进入,然后开启5s倒计时
然后设置我们硬件上面的IO38、IO39、IO40
最后对sd卡进行挂载
如果挂载失败,则打印相关提示信息,然后跳转到IMU测试;如果执行成功则获取sd卡的容量等相关信息
打印sd卡相关信息在下面的文件中实现,大家自行学习
最后代码unmount文件系统,跳转到imu测试
2.Imu学习(已sc7a20为例子)
CHD_ESP32_S3_EYE开发板的imu采用的是I2C数据总线设计,原理图如下
代码从imu_app_main函数进入,倒计时5s
然后调用i2c_master_init对I2C总线的IO和通信速率进行初始化
然后尝试读取SC7A20_WHO_AM_I_REG_ADDR寄存器,如果成功读到,则可以对sc7a20进行配置和加速度数据的读取
这里是配置imu的量程和更新速率等
最后代码从寄存器中读取加速度值,补码转源码、加速度值计算、打印等