多功能调试测试助手-阻抗测量:通过该功能可以直接测量目标器件的阻抗,不管目标器件是电容,电感,还是电阻。就不要器件分析仪或万用表等工具。 一、原理图 我这里从“易实现”,“电路简单”考虑,选择了AD5933。由瑞萨RL78G14板载R5F104LE 的P6.0-SCLK.和P6.1-SDA的IICA0总线连接AD5933. 注意:反馈电阻通过拨码开关切换不同的阻抗测量范围 IICA0总线接口上拉10k电阻。 二、PCB图 三、实物图 三、程序 R5F104LE的P6.0,P6.1含IICA0总线借助Applilet自动配置就可以自动生成驱动库。 或者移植demo中的RL78G13的驱动程序(这也是我采用的方式),不过我多走了一点路,先用其他MCU测试了好久一直跟踪调试出来的数据不对,最后发现还是编译环境之间对数据强制类型转换的问题。后来移植到R5F104LE上就方便很多,同样留意了数据类型强制装换的问题. 如图所示 还有个问题就是IICA0中断函数定义向量的问题。 demo中是rl78g13的,在程序调试时一直在对iica0操作时一直不能正确的进入相应的中断函数。后来模仿自己项目中的定时器中断函数的格式。 在完成对IICA0初始化,读,写操作后,就是要如何使用AD5933。 根据ad5933数据手册,只要对它进行起始频率,频率增量,频率数,后就可以启动扫频,等内部采集完成,读状态,读取实部和虚部就可以计算目标阻抗了。 计算公式: 四、演示 演示说明:IICA0以100k的速率与AD5933通讯,DDS输出35KHZ正弦波,测量10K,电阻,200k,100K。其中视频中数据乱跳是目标负载接触不良。 五、衍生想法 如果在采集方面再下功夫,采用两点标定,或其他方面来提高采集精度,可以换算出采集电容,电感的其他参数。 |