找回密码
 立即注册
楼主: JDBJXB

用户做 ISP区 的位置

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:468
  • 最近打卡:2025-06-16 07:06:57
已绑定手机

79

主题

5131

回帖

9138

积分

超级版主

DebugLab

积分
9138
发表于 5 天前 | 显示全部楼层
EEPROM总是从后向前分配的

用户ISP程序设置在非EEPROM区域可以防止用户APP误修改用户ISP,但这样只能通过系统ISP下载用户ISP(可同时下载用户APP),用户ISP无法修改自己
该方式由于用户ISP被保护,且用户ISP位于实际中断向量处,这样可以在用户ISP和用户APP中使用中断,不会出现用户APP错误影响用户ISP的中断(需要确保用户ISP中的中断是正常的)

如用户APP位于实际中断向量处,需要确保每一次下载的用户APP程序中断跳转都是正常的,才能在用户ISP中使用中断
这种情况下如用户APP中断相关程序错误且用户ISP使用了中断,就会出现用户APP影响用户ISP的问题
表现为错误的用户APP下载进去之后无法再通过用户ISP下载,所以安全起见避免用户APP错误导致用户ISP锁死,用户APP位于实际中断向量处时,用户ISP中不要使用中断
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:165
  • 最近打卡:2025-06-16 09:52:29
已绑定手机

3

主题

9

回帖

379

积分

中级会员

积分
379
发表于 5 天前 | 显示全部楼层
erci*** 发表于 2025-6-11 10:30
是的,对应用户APP工程的中断偏移,程序预留也要删掉、
现在程序预留区改到ISP工程里配置 ...

我用官方的那个ISP示例,把isr.asm删了,然后程序预留区设置为0xFF0000-0xFFF000,其他还没改,编译结果是

*** WARNING L30: MEMORY SPACE OVERLAP
    SEG:     
    FROM:    FF0000H     
    TO:      FF0003H     
Program Size: data=19.1 edata+hdata=768 xdata=4 const=0 code=735
creating hex file from ".\obj\stc_uart_user_isp"...
".\obj\stc_uart_user_isp" - 0 Error(s), 1 Warning(s).

点评

前三个字节跳过,这三个字节跳转程序起始地址的,烧录App时记得不要覆盖。 0xFF0003-0xFFF003  详情 回复 发表于 5 天前
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:208
  • 最近打卡:2025-06-16 08:41:37
已绑定手机

67

主题

1907

回帖

4285

积分

荣誉版主

无情的代码机器

积分
4285
发表于 5 天前 | 显示全部楼层
JDB*** 发表于 2025-6-11 10:39
我用官方的那个ISP示例,把isr.asm删了,然后程序预留区设置为0xFF0000-0xFFF000,其他还没改,编译结果是 ...

前三个字节跳过,这三个字节跳转程序起始地址的,烧录App时记得不要覆盖。
0xFF0003-0xFFF003
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-16 10:10 , Processed in 0.196056 second(s), 61 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表