找回密码
 立即注册
查看: 440|回复: 10

ISP软件不可以对stc8h8k64u写入内部参考电压问题(已解决)

[复制链接]
  • TA的每日心情
    开心
    2023-12-2 17:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    8

    回帖

    65

    积分

    注册会员

    积分
    65
    发表于 2023-12-4 10:26:32 | 显示全部楼层 |阅读模式
    本帖最后由 STC8H8K64U 于 2023-12-8 09:06 编辑

    由于需要用内部参考电压测量外部ADC电压,需要读出内部参考电压,但遇到了问题。
    1.  ISP软件stc-isp-15xx-v6.87H stc8h8k64u可以写入内部参考电压rom0xfdf7,但不能写到ram 0xef,通过一个显示 程序验证,但是ISP程序的输入用户程序运行时的IRC频率选项不能大于8M,不知道什么原因,
    2. 最新的stc-isp-15xx-v6.92G ISP程序的输入用户程序运行时的IRC频率选项可以大于8M,如12M,但对stc8h8k64u不可以写入内部参考电压到rom0xfdf7,也不能写到ram 0xef,ISP软件上没有“在程序区的结束处添加重要测试参数”的选项.
    3. 在仿真运行时rom区和ram区都查看不到内部参考电压。
    4.对于STC8H1K08 芯片 ISP软件stc-isp-15xx-v6.87H  最新的stc-isp-15xx-v6.92G都有“在程序区的结束处添加重要测试参数”的选项,都可以把  内部参考电压写入到rom0x1ff7,也可以写到ram 0xef , 通过一个显示 程序验证,以及以前产品都已经使用。   

    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 08:59
  • 签到天数: 143 天

    [LV.7]常住居民III

    27

    主题

    1343

    回帖

    4187

    积分

    论坛元老

    积分
    4187
    发表于 2023-12-4 15:45:40 | 显示全部楼层
    因为新的STC8H8K64U的参考电压等参数是在CHIPID寄存器里面读取:
    截图202312041545295458.jpg
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 20:31
  • 签到天数: 168 天

    [LV.7]常住居民III

    43

    主题

    369

    回帖

    1103

    积分

    金牌会员

    静坐常思己过,闲谈莫论人非

    积分
    1103
    发表于 2023-12-4 17:44:48 | 显示全部楼层
    0xef地址被特殊功能寄存器占用了吗?
    处事要代人所想,读书需切己用功
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2023-12-2 17:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    8

    回帖

    65

    积分

    注册会员

    积分
    65
     楼主| 发表于 2023-12-4 17:45:48 | 显示全部楼层
    您好,先谢谢了!
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2023-12-2 17:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    8

    回帖

    65

    积分

    注册会员

    积分
    65
     楼主| 发表于 2023-12-5 14:45:04 | 显示全部楼层
    看了一下最新的STC8H及USB系列用户手册有关部分,STC8H-20231110.pdf,在程序区的结束处添加重要测试参数没有了,里面的参数出厂就写好了,只能读,不能写。各种芯片唯一ID和存放内部参考电压的地址没有变。

    根据使用手册上编程
    int *BGV;
    main()
    {
    BGV=(int idata *)0xef ;//STC8H1K08 芯片的 BGV存放地址RAM 区是0xef-0xf0
    或BGV=(int code *)0xfdf7 ;//STC8H1K08 芯片的 BGV存放地址ROM 区是0xfdf7-0xfdf8

    然后调用显示程序模块在LCD上显示BGV值(这个是已经成熟的软件模块一直在用),并使用分别用老ISP软件stc-isp-15xx-v6.87H ,和最新的stc-isp-15xx-v6.92G ISP程序下载 软件但都没有1188的值,说明读出不对。
    }
    自己的编程
    #define Vbg_ADDR_ROM        0xFDF7  ;
    unsigned char code *cptr_ID_ROM;                //
    unsigned int code *cptr_Vbg_ROM;       //int 16bits ,two bytes

    Main()
    {
      cptr_Vbg_ROM=Vbg_ADDR_ROM;         // fdf7
    Vbg=*cptr_Vbg_ROM;           //

    然后调用显示程序模块在LCD上显示BGV值(这个是已经成熟的软件模块一直在用),首先使用老ISP软件stc-isp-15xx-v6.87H,勾选“在程序区的结束处添加重要测试参数”的选项 ,可以显示出1188的值,如果没有勾选该选项就不对,说明在fdf7h位置是写了内部参考电压1188的,和只读不能写矛盾。
    然后用最新的stc-isp-15xx-v6.92G ISP程序重新下载程序 显示的不是1188的值,难道最新的stc-isp-15xx-v6.92G ISP程序会改写已经写进去的内部参考电压 。如果一开始就用stc-isp-15xx-v6.92G 下载程序也不对。
    资料里说stc8h8k64u有A,B版,我的芯片尾号16QD,厂方说是D版的,现在都是这样的,已经不分A,B版了。所以芯片没有问题。

    }

    关于0xef地址被特殊功能寄存器占用的情况,在头文件里找到sfr   AUXINTIF =  0xef;把它删除后结果一样。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2023-12-2 17:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    8

    回帖

    65

    积分

    注册会员

    积分
    65
     楼主| 发表于 2023-12-5 17:07:12 | 显示全部楼层
    使用CHIPID里的内部参考电压地址0xFDE7
    并使用用户手册里的命令
    #define  CPUIDBASE  0xfde0
    #define  VREF_ADDR   (*(unsigned int volatile xdata *)(CPUIDBASE + 0x07))
    显示VREF_ADDR
    也不行
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2023-12-2 17:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    8

    回帖

    65

    积分

    注册会员

    积分
    65
     楼主| 发表于 2023-12-6 10:31:33 | 显示全部楼层
    问题解决,主要没有加入语句P_SW2= 0x80;  
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    3 小时前
  • 签到天数: 143 天

    [LV.7]常住居民III

    20

    主题

    1087

    回帖

    2591

    积分

    金牌会员

    积分
    2591
    发表于 2023-12-17 09:15:32 | 显示全部楼层
    自STC8H8K64U 固件版本 V7.4.4U之后 BGV参数就只能从CHIPID中读取,且ROM区 和 RAM区均不写入,但是软件上是从哪个版本取消的那就不太清楚了
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    3 小时前
  • 签到天数: 143 天

    [LV.7]常住居民III

    20

    主题

    1087

    回帖

    2591

    积分

    金牌会员

    积分
    2591
    发表于 2023-12-17 09:15:52 | 显示全部楼层

    截图202312170915474085.jpg
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    3 小时前
  • 签到天数: 143 天

    [LV.7]常住居民III

    20

    主题

    1087

    回帖

    2591

    积分

    金牌会员

    积分
    2591
    发表于 2023-12-17 09:16:33 | 显示全部楼层
    还有一件事,之前保存到RAM区 和 SFR寄存器是无关的,,,
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-18 11:50 , Processed in 0.075098 second(s), 68 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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