完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请教大伙们STM8S005怎么写FLASH,下面这个程序之前在103可以实现的,但换了005后就一直复位了?
FLASH_DeInit(); FLASH_Unlock(FLASH_MEMTYPE_PROG); FLASH_SetProgrammingtime(FLASH_PROGRAMTIME_TPROG ); FLASH_ProgramOptionByte(0xfff0,0x57); ON_channel = FLASH_ReadByte(0x9ff0); // 读出 ON_channel FLASH_Lock(FLASH_MEMTYPE_PROG); |
|
相关推荐
1个回答
|
|
STM8S005是一款基于8051内核的8位微控制器,具有较低的功耗和较高的集成度。在STM8S005中写入FLASH,您需要遵循以下步骤:
1. 初始化和解锁FLASH: ```c FLASH_DeInit(); // 重置FLASH寄存器 FLASH_Unlock(FLASH_MEMTYPE_PROG); // 解锁程序存储器 ``` 2. 设置编程时间: ```c FLASH_SetProgrammingTime(FLASH_PROGRAMTIME_TPROG); // 设置编程时间为最短 ``` 3. 编写选项字节: ```c FLASH_ProgramOptionByte(0xfff0, 0x57); // 编写选项字节,0xfff0是选项字节的地址,0x57是数据 ``` 4. 读取选项字节: ```c ON_channel = FLASH_ReadByte(0x9ff0); // 读取ON_channel选项字节 ``` 5. 锁定FLASH: ```c FLASH_Lock(FLASH_MEMTYPE_PROG); // 锁定程序存储器 ``` 您提供的代码看起来是正确的,但是您提到在STM8S005上运行时一直复位。这可能是由于以下原因: 1. 确保您的STM8S005开发板与STM8S103开发板的硬件连接相同,特别是复位引脚。 2. 检查STM8S005的时钟设置是否正确。STM8S005的时钟设置可能与STM8S103不同,这可能影响FLASH编程。 3. 确保您的STM8S005固件库是最新的,因为旧版本的库可能不支持STM8S005。 4. 如果您使用的是STM8S_STDPeriph_Driver库,请确保已经包含了正确的头文件,例如: ```c #include "stm8s_flash.h" ``` 5. 检查您的STM8S005是否支持您尝试执行的操作。虽然STM8S005和STM8S103在许多方面相似,但它们之间可能存在一些差异。 6. 如果问题仍然存在,请尝试在STM8S005上运行一些简单的示例程序,以确保开发板本身没有问题。 如果以上建议都无法解决问题,请考虑联系STMicroelectronics的技术支持以获得更专业的帮助。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1645 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1564 浏览 1 评论
992 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
691 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1610 浏览 2 评论
1871浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
656浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
526浏览 3评论
542浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
515浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 00:51 , Processed in 0.954485 second(s), Total 80, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号