查看: 870|回复: 1
打印 上一主题 下一主题

STM8S程序修改OPTION BYTE的问题

[复制链接]
跳转到指定楼层
沙发
发表于 2015-5-27 16:02:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
到 
       
搜索
搜索       
热搜: 净化器雕刻机阿莫邮购
amoBBS 阿莫电子论坛?论坛首页?单片机?STM32/8?抛砖引玉,请教STM8S程序修改OPTION BYTE的问题 ...bottom↓
返回列表发新帖
查看: 215|回复: 12
打印 上一主题 下一主题 抛砖引玉,请教STM8S程序修改OPTION BYTE的问题 [复制链接]
frank117

电梯直达跳转到指定楼层 1楼
发表于 2015-5-19 16:48:15 | 只看该作者 回帖奖励
本帖最后由 frank117 于 2015-5-20 14:00 编辑


要使用STM8S单片机管脚的第二复用功能,需要修改OPTION BYTE。有两种方法,一种是使用STlink软件修改,另一种是在程序中修改。

用STlink软件的方法很简单,小批量做实验的话很方便。但现在需要在公司产品中批量生产的话就不方便了。
所以希望学习程序修改的方法,但是查阅了很多资料,也没搞完全明白到底应该如何操作。

搜到一个文档,说先解锁,再修改,但后面加锁没有。也没有更详细解释解锁和加锁的寄存器。

《STM8S的配置字节OptionByte》




请问有什么资料详细解释程序修改OPTION BYTE的方法么?
另外,文中用的型号是STM8S208R8。 我需要用的单片机是STM8S103F3P6,需要将OPT2修改为0x01(要使用PC6的TIM1_CH1功能)

非常感谢!



////////////////  分割线  ////////////////

感谢二楼的程序,功能是实现了,但是出现了一个新的问题。  程序烧不进去了 !



试过很多方法,还参考了这个帖子:
http://www.amobbs.com/thread-5533491-1-1.html
还是没能够解决。  求助!!


////////////////  分割线2  ////////////////
弄了半天,终于摸索出来了。
在STVP的主窗口下面,有3个标签,第三个就是OPTION BYTE。
点击后,里面第一个就是ROP

现在程序又可以烧录了,至于怎样避免出现不能烧录的问题,继续摸索中,有啥进展后续再分享。转载

回复

使用道具 举报

板凳
 楼主| 发表于 2015-5-27 16:02:37 | 只看该作者

这是我写读保护的程序,你看着修改下地址就行了
void onlyread()//读保护
{
    do{
        FLASH_DUKR = 0xae;
        FLASH_DUKR = 0x56;
    }
    while(!(FLASH_IAPSR & 0x08)); //解锁Flash
    FLASH_CR2 = 0x80; //对选项字节进行写操作被使能
    FLASH_NCR2 = 0x7f; //互补控制寄存器
    *((unsigned char *)0x4800) =0xAA;
    FLASH_CR2 = 0;
    FLASH_NCR2 = 0xFF;
}转载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

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