题目要求部分
我负责的部分就是测量阻抗的部分,这一次我使用的是AD5933
AD5933介绍
我这一篇主要是讲使用5933计算那个待测电路的阻抗值,首先就是在概括处已经说明是我们读取的数据其实是一个实部和一个虚部。
然后我们要记住的是向寄存器0x94,0x95读出来的是一个八位的数据
real_byte_high = AD5933_read(0x94);//读取实部的高八位数据real_byte_low = AD5933_read(0x95);//读取实部的低八位数据imag_byte_high = AD5933_read(0x96);//读取虚部的高八位数据imag_byte_low = AD5933_read(0x97);//读取虚部的低八位数据real_data = ((real_byte_high << 8) | real_byte_low);//高八位数据左移八位与低八位imag_data = ((imag_byte_high << 8) | imag_byte_low);//高八位数据左移八位与低八位
在上面IIC通信通道的访问不同的寄存器,读取实部和虚部高低八位的数据,后面就是与位
后面全部转换成int型的变量
Re = (int) real_data;//换成intIm = (int) imag_data;//
最后就是讲一下测量阻抗值
我们要用一个200K欧的电阻去测,先把一个叫做增益系数计算出来
我们得到就是两个数据,一个RE和IM,按公式计算出来的就是RE平方加IM平方,再开平方,取倒数就是等于498.77
然后
这个公式,把得出来的498.77带进去9692.162的位置计算后得到的是10024.610(-12)(这里的-12
是负十二次方),这个就是我们的增益系数,我们用这个增益系数乘以幅度
就是10024.610(-12)498.77=4999969.742
把这个数进行倒数处理就得到200001.21欧也就是200K欧误差很小很小,得出来的这个10024.610(-12)这个就是增益系数,其他的阻抗计算都是用这个增益系数,其他阻值的计算就跟着计算了,应该是没什么问题的,最后的最后,我的测试代码会贴出来,还有就是各位电赛加油。
上面如果有错误,请大佬指教。