请选择 进入手机版 | 继续访问电脑版

你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

macos是否有工具dump flash memory-stm32f042x6

[复制链接]
michshell 提问时间:2020-10-8 11:08 /
路过的同学好!

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

我的尝试:
  1. #尝试1:
  2. st-flash read RNG.bin 0x0800F000 1024
  3. ##结果1:
  4. st-flash 1.6.1
  5. 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加工。
  1. #define VIRADDR 0x0800F000
  2. #define PAGE_COUNT 1
  3. #define PAGE_SIZE 1024

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



收藏 评论0 发布时间:2020-10-8 11:08

举报

0个回答

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版