我使用DA14580-01和外部I2C EEPROM有一个自定义电路板,我要从连接到引脚0_0和0_1(SCL,SDA)。我已经完成了AN-B-023并自定义了JTAG_Programmer.hex并创建了一个新的.bin文件,如文档中所述。在SmartSnippet中,我将我的板连接到JTAG模式的基本开发套件作为DA14580-01设备,然后尝试从SmartSnippet的SPI闪存程序员部分的Reporter_FH示例代码的修改版本中加载我的.hex文件它成功燃烧。
但是,如果我在SmartSnippet中重新连接JTAG设备(无电源),然后尝试读取数据,则为空。如果我重置或电源循环电路板,它似乎进入无限循环,从不靴子。代码有效,所以我认为必须有问题。这是我的联系:
基本开发
J4头部别针|定制板(DA14580-01引脚)
P1 |VPP.
P2 |GND.
P3 |RST.
P12 |p0_4.
P14 |p0_5.
P25 |SWDIO.
P27 |SWCLK.
我在SmartSnippets中尝试了EEPROM程序员,但它说“记忆刻录失败”。我还尝试交换TX / RX引脚。我究竟做错了什么?对不起,我希望我能张贴图片来让它更容易!谢谢!
亲爱的JBaczuk,
如果要将图像刻录到外部I2C内存中,则必须使用SmartSnippets(而不是您提到的SPI部分)中的“I2C”选项卡。
然后你必须确定:
- Flash_Programmer项目中显示的OP代码之一与内存操作op代码匹配。
- 在线SDA和SCL上有2个10K上拉电阻。
问候,
对话团队。
注意:我正在使用建议的M24M01 EEPROM。
我看到智能片段中没有I2C选项卡,我所看到的只是:
●OTP程序员
●EEPROM编程器
●SPI Flash.
我有4.3K在SDA和SCL上拉过电阻,根据AN-B-023文件。
当你的意思是记忆op代码时,你是在谈论这些行在periph_setup.h的persmer_jtag.uvproj吗?
//选择EEPROM特性
#define i2c_eeprom_size 0x20000 // EEPROM大小以字节为单位
#define i2c_eeprom_page 256 // EEPROM的页面大小以字节为单位
#define i2c_slave_address 0x50 //设置从设备地址
#define i2c_speed_mode i2c_fast // 1:标准模式(100 kbits / s),2:快速模式(400 kbits / s)
#define i2c_address_mode i2c_7bit_addr // 0:7位寻址,1:10位寻址
#define i2c_address_size i2c_2bytes_addr // 0:8位存储器地址,1:16位存储器地址,3:24位存储器地址
你好jbaczuk,
您使用的是哪个版本的智能片段?在3.7(最新版本从网站下载)时,Flash选项卡位于左侧,中间下方,如图所示。
BR JE_DIALOG.
那必须是它,什么网站?本网站上的软件选项卡有3.6。我有3.6的Flash选项卡,但是当您选择它时,它会说SPI Flash。我还尝试了EEPROM,它说“记忆刻录失败”
嗨,我让自己困惑:抱歉,Flash编程只有SPI,版本3.6是最新的。我很困惑不同的东西。我会要求团队为您调查它。BR JE_DIALOG.
嗨jbaczuk,
您可以从以下命令下载最新的SmartSnippets版本:
如果您有一个64位Windows机:
http://support.dialog-seminiondiondiondiondum/smart-snippets-36-win64-installer.
如果您有32位Windows机:
http://support.dialog-semicondiondiondiondum/smart-snippets-36-win32-installer.
问候,
对话团队。
嗨jbaczuk,
我理解当地团队就在案件上并支持你,所以我将在这里关注在这里的机票,因为我相信当地的FAE /销售将解决这个问题。BR JE_DIALOG.
使用未正确组装的CSP包成为硬件装配问题。其他汇编程序已正确完成,现在EEPROM功能工作。