Other Parts Discussed in Thread:DIX4192
According reading chip manual(DIX4192 page23), I try to write a data:0x34 to the address:0x01 , as shown in 02.png.
The address:0x01 data is read as shown in 03.png, and the value is 0x20.
The overall timing is shown in 01.Png.
Not sure if there is a problem with the software configuration.
For example:
I want to write 0x34 to 0x01 address what should be sent?
What should I send to read the data at 0x01 address?
01.png
02.png
03.png
Amy Luo:
Hi you,
Thank you for your post and welcome to our forum!
Is the value of register address 01 read every time it is 0x20? Could you measure the SPI communication waveform with a scope? I suspect there is interference on the SPI waveform. Could you confirm it for me
,
user6500085:
HI
I have added SPI communication waveform on this question.I hope you can find something unreasonable.
PS:I know this is a Chinese forum, can we communicate in Chinese? At the same time, the forum communication is not very convenient, can we communicate with each other via email?
,
Amy Luo:
这是E2E中文论坛,当然可以使用中文交流,感谢您使用示波器测量了SPI通信波形,这是您读取地址为0x01寄存器值的波形,读取值为0x34,应该是您写进的值,时序是正确的。从放大图片上可以看到,IN信号上有与CLK同频率的一定幅值的波形,这应该是PCB设计上IN信号线与CLK信号线走线过近造成的,但是幅值较低,不足以被误识别。
您第一次贴出的波形,读取寄存器值与写入值不一致,应该是由其他偶然干扰造成的,因此我问您是不是每次读取都是0x20。
如果您有不方便公开的信息需要显示在论坛上,可以发送私信给我或者把您的邮箱给我,我们是希望在论坛上进行交流的,这样方便其他用户参考问题解决的方法
,
user6500085:
你好!
这是我的邮箱 hongda-zheng@alpine-china.com
经过确认,之前的问题应该是干扰导致的。目前可以正确写入数据了 。还有一些其他问题,希望您邮件回复我 想在邮件中和您沟通
,
Amy Luo:
很高兴您的这个问题得到解决,我已给您回复邮件,其他问题我会在邮件中与您沟通
,
user6500085:
我在手册中看到咱们的芯片spi制御时是自动递增模式。
依据我们想要制御的内容 我们想要制御如下寄存器
Addr01030405060708
Data34010140002004
因为02寄存器只读 所以造成了地址不连续
所以想要确认两个问题
1. 如果我为了连续写入强行向02地址写入数据 是否可以对其他地址寄存器制御成功?有无其他的影响?
2. 如果我分两次写入 需要中间拉高拉高cs引脚一次 这个时间间隔至少要保持多长时间?
,
Amy Luo:
非常抱歉,回复您问题这么晚
1、0X02寄存器为只读寄存器,不建议写入,以防出现异常现象
2、cs引脚拉高时间最小为3 ns,即tCSZ (CS rising to CDOUT high-impedance)见数据手册Figure 2. SPI Timing图