主题中讨论的其他器件: DAC8760、 DAC8551
在写入 DAC8775 DAC 数据寄存器(地址0x5)之前、除了选择它之外、还有任何特殊的前提条件吗? 无论我写入的值是多少、它都会读回为零。 任何其他寄存器的读回操作与写入操作相同(例如、复位寄存器的 RST 位除外)。
下面是一些伪代码和读回的值:
调用 ANLG_OUT1_RESET -将 DAC\RESET 引脚切换为低电平、持续62us、然后切换为高电平 -调用 SPI_WRITE_3bytes (0x01、0x00、0x01);//软件复位 调用 ANLG_OUT1_configure;
调用 ANLG_OUT1_READBACK_RESET_CONFIG_REGISTER;// 0x82 1e 02 调用 ANLG_OUT1_READBACK_STATUS_REGISTER ;// 0x8b 17 80 调用 ANLG_OUT1_bb_select_a 调用 ANLG_OUT1_readback _bb_select_register ;// 0x86 00 01 调用 ANLG_OUT1_READBACK_CONFIG_REGISTER ;// 0x87 02 1f 调用 ANLG_OUT1_DAC_SELECT_A 调用 ANLG_OUT1_READBACK_DAC_SELECT_register;// 0x83 00 20 调用 ANLG_OUT1_READBACK_DAC_CONFIG_REGISTER;// 0x84 90 00 调用 ANLG_OUT1_READBACK_CAL_ENABLE_REGISTER;// 0x88_ANT1_REGISTER ;// 0x89 80 00 调用 ANLG_OUT1_READBACK_ZERO 寄存器 ;// 0x9a 00 00调用 ANLG_OUT1_READBACK_DAC_CONFIG_register;// 0x84 90 00 调用 ANLG_OUT1_DAC_DATA (0x4001);//将0x4001写入 DAC A 调用 ANLG_OUT1_READBACK_DATA_register ;// 0x85 00 00调用 ANLG_OUT1_DAC_DATA (0xc002);//将0xc002写入 DAC A 调用 ANLG_OUT1_READBACK_DATA_register ;// 0x85 00 00
有什么建议吗?
BTW、根据这篇文章、我还尝试配置 DAC 输出、然后按两个步骤启用它
https://e2e.ti.com/support/data_converters/precision_data_converters/f/73/p/633490/2338051?tisearch=e2e-sitesearch
而不会对结果进行任何更改。
谢谢。
Joe