我们使用4M位SPI闪光灯。
如果我们使用smartsnippets.exe工具将数据写入大于0x20000的地址,即确定。
但是当我们通过命令将数据写入闪存时
“SmartSnippets.exe -Type SPI -Chip DA14580-01 -Com_Port 51 -Baudrate 57600 -CMD Write -File Prox_reporter_img.bin -offset 491520”,
它返回错误按摩
EEPROM内存偏移不能大于最大EEPROM地址(0x1FFFF)。
记忆刻录失败。
使用命令将数据写入闪存时如何设置最大SPI闪存大小。
设备:
在那里,来自本地团队的某人将在论坛中不久离线回应Yuo。BR JE_DIALOG.
你好,
它可能是由于我们的SmartSnippets工具的限制,因为我们没有预见客户在DA14580 BLE应用中使用超过2MB的闪存(256KB)。亚博国际官网平台网址将与我们的申请团队沟通,以满足您的要求是什么。
问候,Wi_dialog
你好,
在我们的SDK版本DA14580_581_SDK_3.0.8.0(例如)中,您可以找到一个名为的项目:
da14580_581_sdk_3.0.8.0 \ tools \ flash_programmer \ programmer_itag.uvproj,ORR
da14580_581_sdk_3.0.8.0 \ tools \ flash_programmer \ programmer_uart.uvproj
在此项目中打开和编辑spi_flash.c,在第27行找到以下结构,
const spi_flash_device_parameters_by_jedec_id_t spi_flash_known_devices_parameters_list [] =
{
{w25x10_jedec_id,w25x10_jedec_id_matching_bitmask,w25x10_total_flash_size,w25x10_page_size,w25x_mem_prot_bitmask,w25x10_mem_prot_none},
{W25X20_JEDEC_ID, W25X20_JEDEC_ID_MATCHING_BITMASK, W25X20_TOTAL_FLASH_SIZE, W25X20_PAGE_SIZE, w25x20_mem_prot_bitmask, W25x20_MEM_PROT_NONE},
{at25dx011_jedec_id,at25dx011_jedec_id_matching_bitmask,at25dx011_total_flash_size,at25dx011_page_size,at25dx011_mem_prot_bitmask,at25dx011_mem_prot_none},
};
插入新的SPI闪存信息并编译一个新的二进制十六进制,以替换“Users \ ??? \ smartsnippets \资源”目录中的“flash_programmer.bin”。
或者
在此项目中打开和编辑periph_setup.h,在第42行找到以下定义,
#define spi_flash_default_size 131072 // spi闪存大小以字节为单位
#define spi_flash_default_page 256 // spi闪存页面大小以字节为单位
根据SPI Flash进行更改,并编译新的二进制HEX,以替换“Users \ ??? \ smartsnippets \资源”目录中的“flash_programmer.bin”。
再次启动“SmartSnippets”工具以验证您的问题是否已修复。
问候,wi_dialog。
亲爱的wi_dialog,
我已经做好了
“在此项目中打开和编辑periph_setup.h,在第42行找到以下定义,
#define spi_flash_default_size 131072 // spi闪存大小以字节为单位
#define spi_flash_default_page 256 // spi闪存页面大小以字节为单位
根据您的SPI闪存进行更改,并编译一个新的二进制十六进制,以替换“Users \ ??? \ smartsnippets \资源”目录中的“flash_programmer.bin”。
前。
这意味着我已经替换了flash_programmer.bin。
当我使用smartsnipts .exe UI工具设置最大SPI Flash内存大小。
价值
条目键=“spi_mem_length”值=“524288”
在“Users\?? \SmartSnippets\preferences.xml”中将被修改为“524288”。
数据将写入Flash成功。
但如果我使用命令“smartsnippets.exe -type spi -chip da14580-01 -com_port 51-baudrate 57600 -cmd write -file prox_reporter_img.bin -offset 491520”写入数据,
它将返回错误按摩“EEPROM内存偏移不能大于最大EEPROM地址(0x1FFFF)。
记忆刻录失败。“
所以,我认为它可能是smartsnippets.exe的问题。
或者在SmartSnippets.exe UI模式下,“用户\ ??? \ smartsnippets \ preferences.xml”文件中的参数spi_mem_length将被设置为smartsnippets.exe。
但在命令模式下,我找不到将SPI_mem_length设置为smartsnippets.exe的方法。
非常感谢您的支持!!!
亲爱的wi_dialog,
这个问题的进步如何?
在UI模式下,在“用户\ ??? \ smartsnippets \ preferences.xml”中的spi_mem_length处于活动状态。我们可以将数据刻录到闪存成功。
如何通过命令模式将“用户\ ??? \ smartsnippets \ preferences \ preferences.xml”中的spi_mem_length设置为smartsnippets.exe。
亲爱的wi_dialog,
这个问题的进步如何?
亲爱的wi_dialog,
这个问题的进步如何?
你好,
确认支持的限制在SmartSnippets软件中是硬编码的。将在下一个SmartSnippets中删除此限制。请长期调整以监控我们门户网站的更新。
问候,
wi_dialog.
亲爱的wi_dialog,
十分感谢您的支持!!!