今天我们聊聊I2C的使用。在开发过程中多多少少会加入一些外围传感器,补充一下功能,提升一下用户体验,扩展一些推广点,增大一些功耗,忽悠多一些用户,卖多一些产品。
其实传感器的确可以给用户带来更好的使用体验。例如,利用接近传感器识别戴上耳机和取下耳机,从而去自动暂停播放音乐,或接听转移通话。又例如,用触摸或敲击替代传统按键,可以更轻松触发控制功能。同时利用这种传感器替换实体按键,可以更好的实现高级版的防水功能,让你在运动的时候,不用担心耳机会被汗液、体液和唾液浸坏。
一般传感器都会使用I2C作为通讯协议(有的使用SPI,下篇讲解SPI),那么新版本的I2C该如何使用呢?其实这个和之前6.x版本是一样的,熟悉6.x开发的童鞋们可以略过本篇博文。那么了解这的小编带不了解的小伙伴来了解了解QCC302x、QCC512x、QCC304x和QCC514x系列的I2C使用,这些芯片的使用都是一样的。都是只能做I2C的master,都是最高400Kbit/s的传输速度,都是用同样的函数编写。
在默认代码使中,是有两个传感器的驱动代码的,分别是加速度传感器adxl362和接近传感器vncl3020。同时这部分代码也是有完整的传感器处理逻辑,可以实现戴上耳机和取下耳机,自动暂停播放音乐或接听转移通话。那因为封装等各种原因,客户一般选自己想要的去替换他。我们AITg的QCC系列开发板也集成了几颗传感器,并完成驱动,有兴趣可以点击链接前往购买体验(