michshell 发表于 2020-10-8 11:08:00

macos是否有工具dump flash memory-stm32f042x6

路过的同学好!

想求助一下关于stm32f042x6,好不容易知道如何把一些数据写入flash 中,但是遇到读取过程又搞不定了。是否有命令行工具可以帮助读取?非常感谢路过的大神小神!
最后想呐喊一下 这个社区的code snippet工具真的没问题么!!!

我的尝试:#尝试1:
st-flash read RNG.bin 0x0800F000 1024
##结果1:
st-flash 1.6.1
2020-10-08T11:04:51 INFO common.c: F04x: 6 KiB SRAM, 32 KiB flash in at least 1 KiB pages.
以下是写入flash的小段代码片,其实就是生成了某种crypto currency的原始byte公钥(变量pubKey), hash都没做,因为SRAM爆了,所以打算读取到pubKey之后来电脑上继续hash加工。
#define VIRADDR 0x0800F000
#define PAGE_COUNT 1
#define PAGE_SIZE 1024

HAL_FLASH_Unlock();               //解锁Flash
Flash_ROM.TypeErase=FLASH_TYPEERASE_PAGES;//标明Flash执行页面只做擦除操作
Flash_ROM.PageAddress=VIRADDR;
Flash_ROM.NbPages=PAGE_COUNT;
uint32_t PageError = 0;                  //设置PageError,如果出现错误这个变量会被设置为出错的FLASH地址
HAL_FLASHEx_Erase(&Flash_ROM, &PageError);//调用擦除函数擦除
HAL_FLASH_Lock();               //锁定Flash
FLASH_WaitForLastOperation(1000);
if(VIRADDR*4<PAGE_SIZE*PAGE_COUNT)//地址在Flash_ROM定义的范围内
{
      HAL_FLASH_Unlock();               //解锁Flash
      FLASH_WaitForLastOperation(1000);
      HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD,VIRADDR,*pubKey);
      FLASH_WaitForLastOperation(1000);
      HAL_FLASH_Lock();               //锁定Flash
      FLASH_WaitForLastOperation(1000);
}
最后的最后想说,我尝试过用buf往屏幕上打,screen /dev/tty.usbmodem143103 38400 和screen /dev/tty.usbmodem143103 9600。因为是byte data 看到的是乱码。



页: [1]
查看完整版本: macos是否有工具dump flash memory-stm32f042x6