我们现在要设计一个4...20mA接口变送器模块。用到了TI的DAC161S997芯片来实现。要求加入HART协议接口。我设计的电路如下,请大侠们看一下是否有什么问题。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们现在要设计一个4...20mA接口变送器模块。用到了TI的DAC161S997芯片来实现。要求加入HART协议接口。我设计的电路如下,请大侠们看一下是否有什么问题。
这个引脚是用来设置输出电流高低的引脚,当SPI发生溢出报错时,将会改变输出电流的值,可和ERRLVL的起初设置做对比,比如拉高,但输出电流为低,说明报错。如果直接悬空的话,说明禁止了这个功能,不能正确的纠错。
拉高和拉低都可。也可通过读状态寄存器0x7F的bit4的值,看和ERRLVL的设置是否一致。yichun417 说:那是不是应该参照官方电路上将ERRLVL管脚拉低即可?
0x7F的bit4: Returns the state of the ERRLVL pin:1 = ERRLVL pin is tied HIGH
0 = ERRLVL pin is tied LOW
还有就是在进行读取操作的时候我是应该连续发两次读操作,还是第一次为读操作,第二次为写NOP操作。
还有就是我在进行读操作以后(例如读STATUS 发送0x89,0x00, 0x00),返回值第一个字节为0x09还是0x89?
我目前写操作正常,因为我写DACCODE时,输出电流值一致,但是我读操作时,返回值始终不是我需要的值(不是返回我读操作时所对应的寄存器)。不知道怎么回事。