今天学习一下触摸按键和加速度计
电容式触摸按键使用的是4键触摸TTP224芯片
也算是生活中常用的模块了
具体原理是简单分析来看是人体的寄生电容将耦合到静态电容上,使按键的最终电容值变大,单片机设置为浮空输入,按键按下,IC判断充放电时间,将数据传给单片机,关于灵敏度问题,手册有详细介绍1.在PCB上 IC引脚越短越好
没跟感应线不能平衡交叉
我们明显看到张工布的PCB上IC放在下面 而4个触摸按键对称分布在四个位置
2.覆盖在PCB上的不能有金属成分或其他导电材料
焊盘最好是圆形正方形,避免尖端放电
3.电容C23C25C27C29时可以调节它的灵敏度的在图上我们可以看到他取了一般值50pF


关于加速度计的学习

首先IIC的函数不再分析
主要是结合手册分析一下关于程序里寄存器的问题
先从初始化函数里的基本函数分析
u8_t ReadReg(u8_t Reg, u8_t* Data) { //To be completed with either I2c or SPI reading function //i.e. *Data = SPI_Mems_Read_Reg( Reg ); *Data = ReadI2C(Reg , 0x32); return 1; }
复制代码1.

2.

意思是第7脚默认上拉这样就知道了0X32 WriteReg函数也是一样的
status_t SetODR(ODR_t ov){ u8_t value; if( !ReadReg(CTRL_REG1, &value) ) return MEMS_ERROR; value &= 0x0f; value |= ov<<ODR_BIT; if( !WriteReg(CTRL_REG1, value) ) return MEMS_ERROR; return MEMS_SUCCESS; }
复制代码

意思是把value写入到CTRL_REG1寄存器中并把X,Y,Z使能LP设置为低功耗模式
函数初始化中
response = SetODR(ODR_50Hz);
复制代码SetFullScale以及接下来的寄存器操作大家可以试着自己分析一下
个人感觉比较详细了,传感器原理另外的几位也有涉及,在此不再重复
如果有错误,欢迎指正