已经搞清楚了 max11311的读写标志位 读是1,写是0
今天梳理了一下max11311的dac 的设置流程
Start of configuration 开始设置
1.Configure BRST, THSHDN,ADCCONV
BRST:
串行接口突发模式选择
•0:默认地址递增模式。突发模式下,地址自动递增1。
• 1:关联地址递增模式。突发模式下,地址自动指向下一个ADC或DAC配置端口数据寄存器。特别地,读取ADC数据(写DAC数据)时,串行接口仅读取(写)ADC配置(DAC配置)端口的数据寄存器。该模式适用于ADC数据读操作和DAC数据写操作,不适用于DAC数据读操作。
THSHDN:
热关断使能
• 0:禁止热关断功能。
• 1:使能热关断功能。如果使能内部温度监测器,并且实测内部温度高于145°C,器件复位,将所有通道置于高阻态模式,将所有寄存器设置为其默认值。
ADCCONV :
ADC转换率选择
• 00:ADC转换率为200ksps (默认值)。
• 01:ADC转换率为250ksps。
• 10:ADC转换率为333ksps。
• 11:ADC转换率为400ksps。
具体配置:BRST = 0, THSHDN = 0,ADCCONV = 0
2.Configure DACREF, DACCTL
DACREF:
DAC电压基准选择
• 0:外部基准电压。
• 1:内部基准电压。
DACCTL:
DAC模式选择
• 00:顺序更新DAC配置端口。
• 01:立即更新DAC配置端口。接收到新数据的DAC配置端口为下一个更新端口。更新端口后,从该端口向上继续执行DAC配置端口更新序列。请求另一次立即更新之前,必须保留至少80μs时间。
具体配置 DACREF = 1, DACCTL = 0
到这里Device control ( 0x10 (R/W) ) 配置好了 device control = 0x0040
到这里需要等待200us
3.Enter DACDAT[i] for ports
设置 DACDAT[0] = 0b 1111 1111 1111
端口0的12位DAC数据。
0x62 (R/W) Port 0 DAC data = 0x0FFF
4.Configure FUNCID[i], FUNCPRM[i] for selected port
FUNCID[0] = 0b 0101(二进制0101)
FUNCPRM[0] = 0b 0001 0000 0000 (二进制0101)
FUNCPRM 设置了电压范围RANGE 0-10V
所以 0x20 (R/W) Port 0 configuration = 0x5200
到此大功告成已经出来9.98V电压