请问efuse以及flash区域是否只能通过SDK的API读写?是否能通过指针引用绝对地址读写,比如:
写入
*(uint32_t *)(0xf4000) = 0x02;
读取
a = *(uint32_t *)(0xf4000)
如果支持这么做,我该怎么知道efuse、flash的绝对地址呢?
咨询efuse、ROM相关问题
-
- Posts: 97
- Joined: Mon Jun 28, 2021 12:48 pm
Re: 咨询efuse、ROM相关问题
eFuse 不可以操作地址进行访问。
Flash 可以通过 spi flash APIs 来访问:https://docs.espressif.com/projects/esp ... -flash-api
另:关于 flash 的地址,你可以根据 log 打印,确认一个分区的 flash 起始地址。
Flash 可以通过 spi flash APIs 来访问:https://docs.espressif.com/projects/esp ... -flash-api
另:关于 flash 的地址,你可以根据 log 打印,确认一个分区的 flash 起始地址。
Re: 咨询efuse、ROM相关问题
谢谢你的回复。我知道了eFuse不能通过直接地址访问,flash可以通过API访问。
我还想了解的是,你说flash的地址区域可以通过打印看到,对于这些地址我是否可以直接通过指针而非API访问??
我还想了解的是,你说flash的地址区域可以通过打印看到,对于这些地址我是否可以直接通过指针而非API访问??
Re: 咨询efuse、ROM相关问题
我看到了你给我的连接里关于flash部分的描述。我的理解是flash中映射到指令空间的部分才能直接通过指针访问,且不能通过指针写入。不知道我的理解是对的吗?
-
- Posts: 97
- Joined: Mon Jun 28, 2021 12:48 pm
Re: 咨询efuse、ROM相关问题
映射到 flash 存储器的内存空间可以被访问,存储固件的 flash 部分(包括指令和数据)不建议通过 flash API 来访问。通常你并不需要直接使用 flash 这种低级接口,你可以尝试使用 esp_partition_*()类型的接口。
Who is online
Users browsing this forum: No registered users and 101 guests