ADS8638Dout问题,8个通道中,前面七个都正常输出,第8个通道则没有,是什么原因?
1、是因为配置不对吗?
reg [15:0]shift_out_reg;
always @ (posedge clk_i)
begin
if(state==Confg_Aux)
shift_out_reg<=16'b 000_0110_0_0000_1100; // 06h,write to config register,al_pd power down mode,Int Vref enable,temp sensor unable
else if(state==Confg_ChSel)
shift_out_reg<=16'b 000_1100_0_1111_1111; // 0Ch,write to channel selection register,all channels be selected
else if(state==Confg_Auto)
shift_out_reg<=16'b 000_0101_0_0000_0010; // 05h,write to auto-scan mode register,all channel ±10V input
else if((state==Read)||(state==Read))
shift_out_reg<=16'b 0000_0000_0000_0000; // 00h,hold DIN low to continue the device operation in the last selected mode
else if((~adc_cs_o)&(adc_sclk_o))
shift_out_reg<={shift_out_reg[14:0],1'b0}; // shift out to adc
else
shift_out_reg<=shift_out_reg;
end
这个是配置的数据;
2、还是因为时序的问题没有把第8个通道的配置数据配置进去?
我觉得如果是 时序问题而没有把最后一个通道配置进去, 这个不大可能.
不过 因为时序问题, 而没有读最后一个通道, 倒是有可能的.