历史上的今天
返回首页

历史上的今天

今天是:2025年01月29日(星期三)

2020年01月29日 | STM8L101和STM8S103差异对比

2020-01-29 来源:eefocus

工作需要,渐渐的开始熟悉STM8L101这款超低功耗的芯片了,呵呵。。.


不看不知道,一看吓一跳,这玩意手册上标明的功耗远远低于STM8S103。我们采用的还是延续着TSSOP20管脚的封装。具体的芯片资源在手册首页都有详细说明。

STM8L101和STM8S103差异对比

下图: 不完全兼容的模块 特别注意中断功能,选项字节

STM8L101和STM8S103差异对比

下图: 完全不兼容的模块

STM8L101和STM8S103差异对比

软件方面: 主要体现在固件库,stm8l系列有自己的固件库,版本为 stm8l10x_stdperiph_lib v1.1.0,STM8L自身的演示版程序也是使用这个库。管脚定义的大小写也发生了变化。


如: GPIO_PIN_0 ---- stm8s FW的写法

GPIO_Pin_0 ---- stm8l FW的写法,比较类似与STM32库的风格

如果不使用库文件编程,而是直接操作寄存器,可在 “C:Program FilesStmicroelectronicsst_toolsetinclude 找到stm8l101.h文件,这个文件定义了STM8L101所使用的外设,内存映射关系。


还有就是文件的命名风格有些变化,stm8s_gpio.h -》 stm8l10x_gpio.h

具体细节方面,可参考stmcu.org上的AN3139 STM8L移植与兼容性指南。


移植细节:

从STM8S103移植到STM8L101首先考虑时钟,兼容性指南上说明了在STM8L101上已经完全做了改变,如下图:

STM8L101和STM8S103差异对比

STM8S时钟树:

STM8L101和STM8S103差异对比

很需要注意的是,STM8L101只有HSI和LSI时钟,而且只有HSI能做为主时钟,LSI时钟的频率也从128Khz变成了38Khz,导致了AWU功能在做定时唤醒时,需要调整延时时间的设置,还有外设的时钟需要手动开启,默认情况与STM8S103不一致,不再是打开状态。下图:

STM8L101和STM8S103差异对比

其次是中断方面,中断向量表已经发生巨大改变。

STM8L101 中断向量表:

STM8L101和STM8S103差异对比

STM8S103中断向量表:

STM8L101和STM8S103差异对比

中断控制方式也有重大调整,增加了端口标志位寄存器,配置中断触发方式寄存器,中断触发方式新增对应0~7个IO口的触发,另外就是GPIO端口本身的触发方式。至于使用哪一种触发方式,在EXTI_CONF进行配置。


STM8L101中断寄存器:

STM8L101和STM8S103差异对比

STM8S103中断寄存器:

STM8L101和STM8S103差异对比

所以中断方面是一个很需要注意的,可能会导致程序崩溃。或是进中断后出不来。 具体参考手册说明。


再者就是AWU唤醒功能,这是可选的,为了低功耗,这又是必须的。


AWU使用LSI为其提供时钟,STM8S103采用128Khz,而STM8L101转而是38Khz,这就导致了在应用时需要注意时间的设置。

如下图,进行对比。

STM8L101和STM8S103差异对比

STM8S103 AWU延时情况:

STM8L101和STM8S103差异对比

如果需要2S的延时,对于STM8S103只需要设置AWUTB为0xD,APR分频64即可得到2.048S的延时,而在STM8L101里面,则需要设置AWUTB为0xB,APR分频64,这样得到1.7s的延时,所以还需要加上27ms左右延时,才能勉强得到2s延时。这也是设计时需要考虑的。


定时器方面,与STM8S103区别不大,主要是因为时钟都是采用HSI,不用做修改都能正常使用。


另外STM8L101还有红外接口,BEEP,SPI,I2C等功能,需要了解的东西还有很多,后续就是具体测量功耗了。

总结:

1. STM8L101对比STM8S103有很多优点,电压范围更宽,功耗更低,裁减了一些外设,窗口看门狗,外部晶振等。

2. 移植方面,需要从硬件和软件两方面入手,更多的是软件操作上。

3. 软件需要考虑时钟,定时,中断,电源功耗等方面因素。

推荐阅读

史海拾趣

Elytone Electronics Co Ltd公司的发展小趣事

进入XXXX年代,随着电子技术的飞速发展,Elytone公司意识到技术创新是企业持续发展的关键。公司投入大量资金引进先进设备和研发人才,成功开发出一系列具有竞争力的电子产品。这些产品在市场上获得了良好的口碑,为公司的快速发展奠定了坚实基础。

Future Designs, Inc. (FDI)公司的发展小趣事

FDI深知客户需求的重要性,因此他们始终将客户服务放在首位。公司建立了一套完善的客户服务体系,从售前咨询、方案设计到售后支持,全程为客户提供专业、贴心的服务。此外,FDI还针对客户的特定需求,提供定制化解决方案。他们能够从概念设计、原型开发到大规模生产,全程参与客户的项目,确保产品能够完全符合客户的期望和要求。这种服务模式赢得了客户的广泛赞誉和信赖。

Gentron Corp公司的发展小趣事
在广告牌或指示牌上使用顺序闪光的LED灯,吸引注意力并传递信息。
Crosspoint Solutions公司的发展小趣事

随着业务的发展,Crosspoint Solutions公司意识到单一市场无法满足其增长需求。于是,公司开始积极寻求国际合作机会,与多家国际知名电子企业建立了战略合作关系。通过技术共享和市场互补,公司成功打开了多个新的市场,业务遍布全球多个国家和地区。

GHz Technology ( Microsemi )公司的发展小趣事

在电子行业中,产品质量是企业生存和发展的关键。Crosspoint Solutions公司深知这一点,因此始终将品质管理放在首位。公司建立了严格的质量检测体系,从原材料采购到产品出厂的每一个环节都进行严密把控。这种对品质的执着追求赢得了客户的信任和好评,使公司在市场上树立了良好的口碑。

强盛电子(AEC)公司的发展小趣事

强盛电子(AEC)自成立以来,一直致力于电子技术的研发与创新。公司研发团队经过数年的努力,成功开发出一款具有颠覆性的新型芯片,这款芯片在性能上远超当时的同类产品,引起了市场的广泛关注。随着这款芯片的量产和上市,AEC的市场份额迅速扩大,成为行业内的佼佼者。

问答坊 | AI 解惑

任意整数分频,占空比为50%(VHDL)

--希望能对大家有帮助 --**************************************-- --程序名:任意整数分频,占空比为50% --**************************************-- library ieee; use ieee.std_logic_1164.all; entity clk_div is generic(n:integer:= ...…

查看全部问答>

关于串口驱动

个人理解 微软显示串口驱动的MDD层 自己要实现PDD层 今天在PB5.0下看到这个 D:\\WINCE500\\PUBLIC\\COMMON\\OAK\\DRIVERS\\SERIAL中有一个SERPDDCM文件夹 看名字好像是串口驱动的PDD 想问下这是个什么东西 如果是PDD 那写串口驱动还需要做些什么 ...…

查看全部问答>

如何在编译模块的时候引用Glib库

我写了一个模块,已经编译通过,运行没有问题 可是我希望进一步再模块中使用Glib库的API的时候,加入 #include 编译模块的时候怎么样都找不到glib.h 我知道模块编译的时候是在系统空间编译的, 我在用户空间引用glib.h就没有问题, 那么怎 ...…

查看全部问答>

我修改 power button 驱动,注释掉了PowerOffSystem(); 可仍然有效果,很奇怪

我修改 power button 驱动,注释掉了PowerOffSystem(); 可仍然有效果,很奇怪 // Soft reset and standard suspend-resume both start with suspend for now.                  &nbs ...…

查看全部问答>

uCOS 在STM32移植的问题!

  uCOS-II在STM32的移植,我做了N天了,可是uCOS就是在我的板子上运行不起来,实在让我很纠结!在此发帖,希望有人帮帮我。   前几天开始uCOS在STM32的移植,刚开始移植编译老是不通过,找了五天,看了官方的移植例子,实在看不懂,又去 ...…

查看全部问答>

LPC9221 io口设置与使用

我有个nxp p89lpc9221芯片,用来控制7段数码管显示,用ICP口编程。 我现在设置p0.0,p0.1,p0.2为开漏输出;P0M1 |= 0x07;   P0M2 |= 0x07; 三个脚都上拉到3.3v; 然后设置三个脚输出为0: sbit p00 = P0 ^ 0; sbit p01 = P0 ^ 1; sbit ...…

查看全部问答>

基于stm32F103+enc28j60+路由+家庭宽带的物联网全套资料

      基于stm32F103+enc28j60+路由+家庭宽带的物联网是参照野火大神的例程以及自己以前建网站经验,主要在STM32内编写一个很小的网页服务器,只有一页,在网页中可以实现LED控制,以及温度、湿度在网页上显示。     ...…

查看全部问答>

Unable to handle kernel paging request at virtual address的产生原因

问题: 我在移植linux-2.6.14 到s3c2410时也出现了类似错误,先移植好网卡后,在移植LCD,出错 s3c2410_bwscon value 22111910 s3c2410_bankcon2 value 7ffc ax88796 extIRQ = 12, IRQtype= 4 Unable to handle kernel paging request at virt ...…

查看全部问答>

关于ADC 采样的时钟问题?

本帖最后由 s364147694 于 2014-4-7 14:15 编辑 一次ADC采样转换时间是 采样时间+转换时间,公式是= (4 x ADC12CLK x N) + ( 13 xADC12CLK/Fadc12clk)) 但是采样的时钟和转换始终是一个吗??公式里的ADCLK是指分频后的时钟还是没分频的?? 最 ...…

查看全部问答>

Altium designe 教程大集合(非常不错的资源)

本帖最后由 a523248304 于 2014-11-7 11:56 编辑 别人发给我的,分享给大家,混个脸熟。。。 另外工程师需要PCB封装、原理图元件库、典型应用电路可以去“搜芯网”找,找不到就向他们发布需求,他们工程师会提供给你。。。网址就不发在论坛 ...…

查看全部问答>