历史上的今天
返回首页

历史上的今天

今天是:2024年10月25日(星期五)

正在发生

2021年10月25日 | stm8之OptionByte的使用

2021-10-25 来源:eefocus

1.选项字节的概念(参考stm8s中文数据手册):

选项字节包括芯片硬件特性的配置和存储器的保护信息,这些字节保存在存储器中一个专用的块内。除了ROP(读出保护)字节,每个选项字节必须被保存两次,一个是通常的格式(OPTx)和一个用来备份的互补格式(NOPTx)。可以在ICP模式(通过SWIM)下访问下表中EEPROM的地址来修改选项字节。


选项字节也可以通过应用程序在IAP模式下修改,但是ROP选项只能在ICP模式(通过SWIM)下被修改。


2.ISP IAP ICP的概念(有待学习):

ISP:In System Programing,      在系统编程   程序完全下载


IAP:In applicating Programing,在应用编程   我的理解是用应用程序去修改芯片里边固定的一些数据(与应用编程无关的数据)


ICP:In Circuit Programing,        在电路编程  


3.stm8s芯片的备用功能重映射:

stm8s芯片上带有很多备用的功能,这些功能必须使用重映射功能才能实现,


重映射其实就是配置某个flash地址的某一位,使某个引脚具备备用功能或者默认功能的其中一个而且一旦功能改,想恢复原来的功能必须重新写入。


比如stm8s的PD4端口具有TIM2_CH1 功能和BEEP功能,默认的情况下是TIM2_CH1功能,当我们要用到BEEP功能时必须写选项字,将这个引脚重映射为BEEP功能。


寄存器:

stm8s的多个备选功能:

 

4.库函数实现重映射

//对于stm8s的选项字地址为0x4803

#define Beep_OptionAdd  0x4803

   void Set_Beep_OptionByte(void)
   {
    uint16_t Beep_Option_status;/*记录**备选功能Beep/TIM2_CH1的状态*/
    Beep_Option_status=FLASH_ReadOptionByte(Beep_OptionAdd);
    /*Beep_Option_status的最高位为1**了Beep,否则不**,为TIM2_CH1*/
     if((Beep_Option_status&0x8000))
     {
      FLASH_ProgramOptionByte(Beep_OptionAdd, (uint8_t)(Beep_Option_status&0x7fff));
    /*向Beep_OptionAdd  0x4803 置0,不****了Beep,恢复TIM2_CH1通道*/
     }
  }


推荐阅读

史海拾趣

Deutronic Elektronik GmbH公司的发展小趣事

1983年,Deutronic Elektronik GmbH在德国阿德尔科芬成立,当时只是一家专注于电源技术的小公司。创始人凭借对电力电子技术的深刻理解和对市场需求的敏锐洞察,开始了公司的创业之旅。公司初期专注于电源产品的研发和生产,通过技术创新和质量保证,逐渐在行业内建立了良好的声誉。

ECLIPTEK公司的发展小趣事

ECLIPTEK公司自创立之初就专注于高精度电子元件的研发与生产。面对激烈的市场竞争,公司不断投入研发资源,推出了一系列具有创新性的产品,如高精度时间同步模块和低功耗传感器。这些产品凭借其卓越的性能和可靠性,迅速在市场上赢得了良好的口碑,使ECLIPTEK成为电子元件行业的佼佼者。

FUJITSU(富士通)公司的发展小趣事

ECLIPTEK公司自创立之初就专注于高精度电子元件的研发与生产。面对激烈的市场竞争,公司不断投入研发资源,推出了一系列具有创新性的产品,如高精度时间同步模块和低功耗传感器。这些产品凭借其卓越的性能和可靠性,迅速在市场上赢得了良好的口碑,使ECLIPTEK成为电子元件行业的佼佼者。

艾华集团(AISHI)公司的发展小趣事

1985年,艾立华和王安安怀揣着3700元的全部家当,毅然决然地踏上了创业之路。他们租下了两间不到50平方米的废弃小平房,与几名工人一起,手工制作铝电解电容器。由于资金、技术和市场的限制,艾华集团最初只能接一些其他企业不愿意做的、用量很少但又刚需的项目。然而,即便是在这样的困境中,艾立华和王安安也始终坚持对产品品质的精益求精,他们深知,只有高品质的产品才能在市场上立足。

Cornell Dubilier公司的发展小趣事

在1936年至1962年期间,Cornell Dubilier公司在汉密尔顿工业园运营,专门制造电子零件和组件。然而,在这一时期,公司在生产过程中使用了含有多氯联苯(PCB)和其他有害物质的材料,并将其直接倾倒在现场土壤中。这一行为导致了严重的环境污染问题,使得该场地在后续被众多商业企业占据后,仍面临着环境保护的挑战。

EQCOLOGIC公司的发展小趣事

随着环保意识的日益增强,电子行业对环保的要求也越来越高。EQCOLOGIC公司积极响应环保号召,将环保理念贯穿于产品研发、生产和销售的各个环节。公司采用环保的生产工艺和材料,减少污染物的排放;同时,还开展了一系列环保宣传活动,提高员工和消费者的环保意识。这些举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了基础。

问答坊 | AI 解惑

几种常用的虚拟仪表仪表

http://66.249.89.132/translate_c?hl=zh-CN&sl=en&u=http://www.abacom-online.de/uk/html/demoversionen.html&prev=/search%3Fq%3DC51%2Bcompiler%26hl%3Dzh-CN%26client%3Daff-cs-360se%26hs%3Dbtg%26sa%3DN%26start%3D50%26newwindow%3D1&usg=A ...…

查看全部问答>

为什么我的复位电平上不去?

复位芯片采用MAX811,MCU采用C8051F020,上电后,电源电压时3.3V,为什么复位电平只有1.36V? …

查看全部问答>

“喝”咖啡渣及茶渣的打印机

一台打印机,我们需要经常调换的就是墨盒了,然而用完了的墨盒还能用作什么用处?我想不出来。南韩设计师Jeon Hwan Ju为此设计了一款新的打印机墨水来源,就是利用我们经常喝过了的咖啡渣或茶渣來代替一般的墨水。 该款环保型打印机称为RITI, ...…

查看全部问答>

8*8的LED点阵如何区分共阴共阳?

8*8的LED点阵如何区分共阴共阳?…

查看全部问答>

IRP完成例程与KeWaitXxx配合出现的同步问题

我的代码是这样的: {    .......    KeInitializeEvent(&event, NotificationEvent, FALSE);    IoCopyCurrentIrpStackLocationToNext(Irp);    IoSetCompletionRoutine(Irp,PacketCompletion,&even ...…

查看全部问答>

谁能提供wince 6比5新的的详尽的特性对比?

1、谁能提供wince 6比5新的的详尽的特性对比?(google上搜到一个老外的页面的对比,不是很详细)最好是非常详细带解释的!高分求!!!!!!!! 2、谁能提供一份文字详细的wince6在2410或2440上运行的步骤包括编译连接烧写等加载! 3、以前的4 ...…

查看全部问答>

用了lut1lut的I2C函数,终于搞定,谢谢各位...

                                  …

查看全部问答>

请教DSP f2812的串行通讯错误是什么原因

我最近搞f2812时又出现了一个问题,用DSP往PC机传数据时,通过观查寄存器看到的结果是正确的,但是PC机上用串口调试助手接收到的数据却错误。我传的是0~9的一个随机数,但接收到的全是F0 00 00(用16进制显示)。我在网上查了可能是晶振或波特率设 ...…

查看全部问答>

低电平测量对测试夹具有何要求?

对用于低电平测量的测试夹具有几个重要的要求: * 绝缘电阻[1]:所有连接器、内部连线、端子和插座等的绝缘电阻都应当尽可能地高。一般地说,在高质量的测试夹具中,所有的连接器和插座都使用聚四氟乙烯绝缘材料。 * 屏蔽[2]和保护:测试夹具 ...…

查看全部问答>