参考文献 MCP4017 datasheet
1.首先确定通信方式: 看其数据手册易得 iic
2.使用的是iic因此比寻找其写命令和读命令,和数据对应的读写方式。
从此可以看出,写命令是0x5E.
读命令则是,0x5F
3.iic与其通信的代码如下
void write_resistor(uint8_t value)
{
I2CStart();
I2CSendByte(0x5E);
I2CWaitAck();
I2CSendByte(value);
I2CWaitAck();
I2CStop();
}
uint8_t read_resistor(void)
{
uint8_t value;
I2CStart();
I2CSendByte(0x5F);
I2CWaitAck();
value = I2CReceiveByte();
I2CSendNotAck();
I2CStop();
return value;
}
ps:代码为国信长天提供的示例代码。
4.如何得出该电阻的阻值
内部原理如下:R(bw)的阻值即为所要求的阻值。
Rs的阻值为 AB之间的总电阻除以127;(0x7f换算成10进制)
其中Rw的阻值几乎为零,可以忽略不计。N为我们写入的数据。Rab为常量。
找到对应的型号,我们可以得出,Rab的值为100000欧姆。
因此当我们写入数据为,127时,此时的电阻阻值为100K欧姆。(0.78740127)K欧姆*
write_resistor(127); //写入数据
例程代码在这
更多推荐
可编程电阻-----MCP4017T-104ELT
发布评论