【经验】如何正确设置EFM8LB1系列8位单片机的堆栈空间?

2021-03-18 世强
8位单片机,EFM8LB1,Silicon Labs 8位单片机,EFM8LB1,Silicon Labs 8位单片机,EFM8LB1,Silicon Labs 8位单片机,EFM8LB1,Silicon Labs

SILICON LABS推出的EFM8LB1系列8位单片机,具有集成度高、速度快、模拟性能好及体积小等优点,被广泛应用在光模块、电机驱动、工业控制等产品上。最近有软件工程师问,为了让EFM8LB1配合DSP工作, 如何才能扩大它的堆栈空间?本文就将讲解如何正确设置8位单片机EFM8LB的堆栈空间。

      

图1  EFM8LB1系列片内RAM区

 

如上图1,是EFM8LB1系列片内RAM区,理论上,EFM8LB1的堆栈可以位于256字节RAM区中的任何位置,深度最多可以扩展到256个字节。

 

堆栈区域是使用堆栈指针(SP)SFR指定的,SP指向最后使用的位置。 压入堆栈的下一个值放在SP + 1,然后SP递增。 复位将堆栈指针初始化到位置0x07,将压入堆栈的第一个值放置在位置0x08上,该位置也是寄存器组1的第一个寄存器(R0)。那么,如果堆栈不使用默认位置,该如何操作?

 

Silicon Labs原厂提供的例程在启动配置文件A51中操作,将堆栈分配在片内RAM 0x6F地址处。具体方法如下:

 Step-01:给特殊功能寄存器SP命名。

; Standard SFR Symbols

ACC     DATA    0E0H

B       DATA    0F0H

SP      DATA    81H

DPL     DATA    82H

DPH     DATA    83H

Step-02:给SP指定区域

?C_C51STARTUP   SEGMENT   CODE

?STACK          SEGMENT   IDATA

Step-03:给SP定义长度,即该部分将预留空间

                RSEG    ?STACK

                DS      2

Step-04:给SP赋值地址,实现Step-02~ Step-03的规划。

MOV     SP,#?STACK-1

 

通过如上操作,实现了将堆栈空间分配到片内RAM 0x6F的目的。

图2  检查SP分配空间


在编译后,会生成M51文件,查看如图2的“?STACK”的所在的地址,从而再次验证了通过运用Step-01~ Step-04步骤,可以实现将堆栈空间分配到片内RAM 0x6F的目的。


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由风起云扬提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】如何下载、安装、设置Silicon Labs 8位单片机集成开发环境IDE?

Silicon Labs的8位单片机集成开发环境IDE,简单、容易、强大,是C8051F及EFM8等8位单片机软件开发的强大利器!为了让新手能够快速上手IDE,本将详细接收Silicon Labs IDE的下载、安装、设置等方法。

设计经验    发布时间 : 2018-09-19

【经验】如何使用中微半导体8位单片机CMS8S6990N的串口配置波特率

中微半导体推出的8位单片机CMS8S6990N采用1T的8051内核,最大24MHz内核运行,集成2路模拟比较器,2路运算放大器,1路可编程增益放大器。本文将介绍如何使用CMS8S6990N的串口配置波特率。

设计经验    发布时间 : 2022-07-08

【经验】如何计算8位单片机EFM8LB系列PWM最高输出频率?

在电机驱动、电源发生、可调电压发生等应用中,经常需要PWM波,Silicon Labs推出的高性能、高集成度、小体积、高性价比的EFM8LB系列8位单片机,可广泛应用光模块、电机控制等领域,它支持输出PWM波。本文将详细讲解如何计算EFM8LB系列8位单片机PWM最高输出频率。

设计经验    发布时间 : 2020-02-05

【应用】基于双MCU的低成本400G PAM4光模块应用方案

基于双MCU的低成本400G PAM4光模块应用方案采用2个通用MCU,32位的MCU作为DSP的协处理器,8bit的MCU满足多路DAC来控制LD Driver,不但降低了设计难度同时降低了成本。采用多路电源输出解决方案比采用多颗单路电源芯片占用面积更小,且整体成本更低。

应用方案    发布时间 : 2023-11-17

【经验】如何给Silicon Labs的集成开发环境IDE指定工具链?

Silicon Labs的集成开发环境IDE简单强大,是C8051F及EFM8等8位单片机软件开发的优秀武器。最近有客户问, 如何给Silicon Labs集成开发环境IDE指定工具链?本文总结了2个方法来解决这个问题。

设计经验    发布时间 : 2020-09-29

【IC】功耗低、高性能AD型8位单片机HC18P110A0/B0,用于测量、马达控制、工业控制、家电类产品等领域

HC18P110A0/B0是芯圣电子推出的AD型8位单片机,内置兼容RISC指令集的PIC内核,拥有1K的ROM、128Bytes的RAM;HC18P110A0/B0拥有2个8位与1个16位的定时/计数器、2路独立的12位的PWM。

新产品    发布时间 : 2023-07-14

【经验】8位单片机EFM8系列的ADC对参考电压Vref引脚设计要求

Silicon Labs的8位单片机EFM8系列,高精度ADC功能时该芯片的一大特点,为了ADC获得准确的采用值,除了正确操作ADC外设外,还需要正确设计参考电压,结合EFM8芯片的特点,介绍参考电压设计需要注意的事项。

设计经验    发布时间 : 2019-10-29

8位单片机EFM8的烧录器有哪些?

8位单片机EFM8系列采用C2调试接口,常见的烧录器有:1,官方的EFM8 STK、USB Debug Adapter、ToolStick。2,第三方的U-EC2/6、WizPro200EFM(支持EFM8和EFM32)等。

技术问答    发布时间 : 2016-10-25

【经验】8位单片机EFM8BB51正确初始化ADC后不工作的问题处理经验

芯科最新推出的8位单片机EFM8BB51,EFM8BB51使用模拟部分功能(比如ADC,比较器),客户往往会忽略AMUXCP的初始化,导致模拟功能不能使用。本文介绍AMUXCP功能的使用。

设计经验    发布时间 : 2023-04-01

【经验】如何基于SMBus接口让8位单片机EFM8实现bootloader操作?

Silicon Labs推出的8位单片机EFM8,具有模拟性能好、集成度高、运行速度快、体积小巧等优点,被广泛应用在光模块、电机控制、智能家居等领域。它还支持bootloader功能,而且出厂芯片即可自带boot代码(基于UART的,或基于SMBus的,根据型号而定)。那么在实际操作中,对于EFM8,在实现Bootloader时具体操作步骤是怎样的呢?本文将详细为你解读。

设计经验    发布时间 : 2019-09-29

【经验】如何通过解读M51文件确定EFM8系列的变量、函数定位?

Silicon Labs推出的EFM8系列8位单片机具有集成度高、速度高、体积小等优点,最近有使用的软件工程师询问笔者 “我的变量放哪里了?我的代码是如何分配的?”等问题,本文特做总结:通过解读M51文件确定EFM8系列的变量和函数定位。

设计经验    发布时间 : 2021-04-14

【经验】解决8位单片机EFM8BB51驱动三相电机过零检测不灵敏的问题

对于简单的8位MCU实现,块换向用于驱动电动机。这种驱动方法需要逆变器电路对根据霍尔传感器给出的转子位置,电机相位电角度每120度的电流或者无传感器方法。本文主要解决8位单片机EFM8BB51F16I-QFN20驱动三相电机过零检测不灵敏的问题。

设计经验    发布时间 : 2023-03-31

【经验】如何让支持SMBus boot功能的8位单片机EFM8进入boot模式?

Bootloader操作带来的好处很明显,即可以在不需要烧录器的情况下,实现代码更新,甚至,基于Bootloader功能,还可以实现远程代码升级。 在实际操作中,对于很有意义的、原厂自带了基于SMBus接口的boot代码的EFM8,如何进入boot模式、从而实现代码更新呢?本文将详细为你解读三种进入boot的模式。

设计经验    发布时间 : 2019-09-27

Silicon Labs 8位单片机EFM8BB31 SPI通信调试注意事项

Silicon Labs EFM8BB31是一款资源丰富,高效率,小体积的8位单片机,已被许多用户选用,被广泛应用于消费电子,精密仪器,电源管理,工业控制自动化,智能传感器,汽车控制,安防监控等领域。在开发过程中,经常使用到SPI通信,EFM8BB31支持3线或4线模式的SPI主模式和从模式,在调试SPI通信的过程,有哪些注意事项呢?本文将详细介绍。

设计经验    发布时间 : 2019-04-10

【经验】低成本8位单片机EFM8BB21在25G SFP28 LR光模块应用中的硬件电路设计注意事项

Silicon Labs推出的EFM8BB21系列8位单片机,具有高速度、高模拟性能、高集成度、小体积、低成本等优点,被广泛应用于光通信、工业控制等领域。本文将详细介绍在25G SFP28 LR光模块应用中EFM8BB21的硬件电路设计注意事项。

设计经验    发布时间 : 2021-03-28

展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 73,120

品牌:晟矽微电子

品类:8 位单片机

价格:¥0.2500

现货: 49

品牌:Holychip

品类:通用8位单片机

价格:

现货: 0

品牌:晟矽微电子

品类:8 位单片机

价格:¥0.2500

现货: 0

品牌:芯海

品类:8位单片机MCU

价格:

现货: 0

品牌:芯海

品类:8位单片机MCU

价格:

现货: 0

品牌:晟矽微电子

品类:8位单片机

价格:

现货: 0

品牌:晟矽微电子

品类:8位单片机

价格:

现货: 0

品牌:芯海

品类:8位单片机MCU

价格:¥4.5000

现货: 0

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 104,128

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:RENESAS

品类:microcontroller

价格:¥2.8532

现货:188,410

品牌:RENESAS

品类:microcontroller

价格:¥32.9564

现货:40,179

品牌:RENESAS

品类:microcontroller

价格:¥2.3120

现货:2,192

品牌:RENESAS

品类:MCU

价格:¥0.6760

现货:907

品牌:RENESAS

品类:MCU

价格:¥23.3594

现货:820

品牌:RENESAS

品类:MCU

价格:¥0.7600

现货:250

品牌:RENESAS

品类:microcontroller

价格:¥2.8460

现货:203

品牌:RENESAS

品类:microcontroller

价格:¥5.5220

现货:156

品牌:RENESAS

品类:microcontroller

价格:¥3.1820

现货:153

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

3C认证/CCC认证

支持微型计算机 、便携式计算机显示设备、投影仪、打印设备、绘图仪、多用途打印复印机、扫描仪、计算机内置电源、电源适配器、充电器、服务器、收款机等产品中国强制性产品认证。

提交需求>

工控触摸一体机定制

提供7~27寸工控机定制,支持嵌⼊式/ 壁挂式 /桌⾯式/悬挂式等安装方式,采用纯平⾯板IP65防尘防⽔等级,莫⽒7级硬度触摸屏,兼容多种操作系统:组态软件/安卓/XP/win7/8/10/Linux等,支持主板、接⼝、外观、⽀架、刷卡器、⾝份证阅读器、LOGO、⻨克⻛、系统、电池、蓝⽛、4G/5G、摄像头、GPS系统、⼆维码扫描器、指纹等特殊应⽤场景定制

最小起订量: 1台 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面