TI中文支持网
TI专业的中文技术问题搜集分享网站

LMK05318配置写入EEPROM问题

您好:

在尝试写EEPROM的过程中,发现部分寄存器不能生效,掉电配置还会丢失,求解?

以下是具体遇到的问题:

a.在以下操作描述的第5步到第6步之间轮询读取寄存器,发现与原先写入的寄存器值不相匹配,具体如下:R10,R11,R13,R14,R72,R123,R124,R125,R126,R127,R128,R155,R156,R161,R162,R357,R367

b.接着上一个问题,去掉R12和R162两个寄存器其他的回读发现只有R10、R11两个寄存器还是没写对?(目标值:R10=0x80,R11=0x30)

c.掉电后,问题a提到的寄存器配置都没有生效?

操作步骤如下(I2C读写只用了Write Transfer 和Read Transfer两种操作):

1.用code loader生成register值,通过i2c写入register。

– Mask R12 = A7h
– Mask R157 = FFh
– Mask R164 = FFh

Mask部分的位都写入0。

2.R12[7]写1,其他位根据code loader内决定。

3.R12[7]写0,其他位根据code loader内决定。

4.R157写0x40 。

5.等待 R157 self-clearing  (几乎不需要等待)。

6.R164写0xEA。

7.R157写0x3。

8.等待300ms。

9.Read or poll R157[2],When this bit cleared, the EEPROM programming is done.

10.R164写0x0。

谢谢!

Kailyn Chen:

第五步等待 R157 self-clearing, 当R157[2] (NVMBUSY bit)清零之后,说明EEPROM 配置完成,然后将R164写0X0,说明EEPROM 已经lock。 此时再读寄存器的值呢? lock之后再掉电重启值应该就不会改变了。

yun yu:

回复 Kailyn Chen:

Hi Kailyn Chen:

1.此时再读寄存器的值发现与写入的不一样,具体情况如下图:

寄存器地址(x16)  写入的值(x16)  读出的值(x16)

0xa                  0x80                   0x8

0xb                  0x30                   0xb

0xd                  0x00                   0x1d

0xe                  0x00                   0xd0

0x48                0x3e                   0x1

0x7b                0x6a                   0x0

0x7c                0xaa                   0x0

0x7d                0xa9                   0x0

0x7e                0x97                   0x0

0x7f                 0x36                   0x0

0x80                0x00                   0x1

0x9b                0xd1                   0x8d

0x9c                0x08                   0x56

0xa1                0x16                   0x8d

0xa2                0x4f                   0x28

0x165              0x28                   0x20

0x16f               0x28                   0x0

2.我们具体的硬件配置如

QFN48(7×7):

 

pin name
pin num

备注

VDD_IN
pin5
通过0.1uf电容接地,输入3.3V

VDD_XO
pin33

VDD_PLL1
pin27

VDD_PLL2
pin36

VDD_DIG
pin4

LF1
pin29
 
通过0.47uf电容接地

LF2
pin34
 
通过0.1uf电容接地

CAP_PLL1
pin28
 
通过10uf电容接地

CAP_PLL2
pin35
 
通过10uf电容接地

CAP_DIG
pin3
 
通过10uf电容接地

SCS
pin24
 
接地

SYNCN
pin12

通过0.1uf电容接地,输入3.3V

HW_SW_CTRL
pin9
 
接地

PDN
pin13
 
IO输入

SDA
pin25

IO输入,上拉4.7k到VDD_IN

SCL
pin26

IO输入,上拉4.7k到VDD_IN

GND
pin49(底部中间)

接地

赞(0)
未经允许不得转载:TI中文支持网 » LMK05318配置写入EEPROM问题
分享到: 更多 (0)