完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我的程序只是使用的W5500的程序,其他什么都没开,每次下载前都必须用STVP修改选项字,才能再次下载,我进行一步步试验,发现程序中只要加入下面这些,程序运行后,再次下载时就必须STVP修改选项字。memset( W5500Object.W5500Inf,0,sizeof(W5500Object.W5500Inf)); /* 将W5500Inf全部清零*/ memcpy(W5500Object.W5500Inf.IPAddr,W5500IPAddr,sizeof(W5500IPAddr)); /* 将IP地址写入W5500Inf中 */
memcpy(W5500Object.W5500Inf.GWIPAddr,W5500GWIPAddr,sizeof(W5500GWIPAddr)); /* 将网关IP地址写入W5500Inf中 */ memcpy(W5500Object.W5500Inf.MASKAddr,W5500IPMask,sizeof(W5500IPMask)); /* 将子网掩码写入W5500Inf中 */ 上面这些语句只是对一个结构体进行清零和部分赋值,这些操作为啥会造成这种现象,而且我把整个W5500的初始化加入其中,还会有一奇怪的现象,就是我运行时,时钟那边经常性会运行不过去,就在时钟自动切换的时候 while (!CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE)); /*切换到外部时钟,并等待时钟却换成功*/ 各位大侠,麻烦尽快帮忙解决下,多谢多谢,本来初接触STM8S的东西,以前只弄过STM32的 |
|
相关推荐
1个回答
|
|
STM8S207RB是一款基于8051内核的8位微控制器,由STMicroelectronics(意法半导体)生产。在某些情况下,下载程序到STM8S207RB之前需要使用STVP(ST Visual Programmer)修改选项字。这可能是由于以下几个原因:
1. 选项字保护:STM8S207RB的选项字(Option Byte)是一种用于存储特定配置的非易失性存储器。这些配置包括看门狗定时器、安全位、引导模式等。在某些情况下,选项字可能被设置为保护状态,导致无法直接下载程序。使用STVP修改选项字可以解除这种保护。 2. 程序大小限制:STM8S207RB的闪存大小为8KB,如果程序超过了这个限制,可能需要调整选项字以允许使用外部存储器。STVP可以帮助您修改选项字,以便在外部存储器中存储程序。 3. 引导模式:STM8S207RB支持多种引导模式,包括系统引导模式、用户引导模式和应用引导模式。在某些情况下,可能需要修改选项字以切换到适当的引导模式,以便正确下载和执行程序。 4. 看门狗定时器:STM8S207RB具有看门狗定时器功能,用于在程序运行异常时重置微控制器。如果看门狗定时器被设置为不允许重置,可能导致无法下载程序。使用STVP修改选项字可以调整看门狗定时器的配置。 关于您提到的程序中加入memset和memcpy函数导致的问题,这可能是因为这些函数修改了W5500Inf数组的内容,而这个数组可能与STM8S207RB的某些配置或寄存器有关。当您运行程序并修改这些寄存器后,微控制器的某些设置可能被更改,导致下次下载程序时需要重新修改选项字。 为了避免这个问题,您可以尝试以下方法: 1. 检查W5500Inf数组是否与STM8S207RB的配置或寄存器有关。如果是这样,请确保在修改这些寄存器之前备份原始值,并在程序结束时恢复这些值。 2. 在程序中添加一个标志,用于指示是否需要使用STVP修改选项字。如果程序中确实需要修改选项字,可以在程序开始时设置这个标志,然后在下次下载程序时检查这个标志,以确定是否需要使用STVP。 3. 如果可能,尝试优化程序,避免在运行时修改与STM8S207RB配置或寄存器相关的数据。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1665 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1576 浏览 1 评论
1005 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
698 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1621 浏览 2 评论
1888浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
669浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
531浏览 3评论
549浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
520浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-1 09:10 , Processed in 1.967086 second(s), Total 82, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号