我使用jtag将芯片与电脑连接,打开Smartsnippet选择OTP Programmer,我首先将hex文件烧录进otp,然后将otp header的第一第二项改为yes,将DMA length改为代码长度后进行烧录。此两项烧录工作完成后均使用read验证,结果显示烧录正确。otp nvds没有进行操作。
之前没有烧录otp的时候有用jtag在boot那个界面验证过程序功能,所以程序应该不会有错。
但是烧录完之后手机蓝牙无法发现芯片,就算使用jtag使用boot将程序写进去也无法发现,不知道是哪一步出了错呢?otp nvds有必要烧写吗?
Device:
看起来是走进OTP代码的流程了,否则之后在boot那个界面验证也不会失败。
DMA length是按照4字节长度计算的代码长度。别的也没什么了~
DMA length 我是根据软件提示进行的修改。DMA length (0 words) should not be smaller than the image file code length (5126 words).
用Booter还是可以下载代码,只是下载成功后手机找不到芯片。我用另一个没有OTP过的芯片下载代码,代码是可以正常工作的。
DMA length 是hex载入那个值除以4 后转为16进制,如果提示值不一样,在改到那个值就好了