历史上的今天
返回首页

历史上的今天

今天是:2024年11月04日(星期一)

正在发生

2021年11月04日 | LoRa终端的MCU STM8编程需要知道的那些事情

2021-11-04 来源:eefocus

由于我们选用的LoRa终端模组ASR6505集成的MCU是STM8L, 因此有必要对其有一些基本的认识,以便于接下的编程和代码的理解。


目录:

1. 什么是STM8 MCU

2. STM8与STM32的主要区别

3. STM的主要功能特性

4. STM8内部的功能模块

5. STM8的内存地址映射

6. STM8的中断向量表


1. 什么是STM8 MCU

STM8系列是意法半导体公司(ST)生产的8位的单片机。该型号单片机分为STM8A、STM8S、STM8L三个系列。


STM8A:汽车级应用、STM8S:标准系列、STM8L:超低功耗MCU。

内核:ST自研的高级STM8内核,具有3级流水线的哈佛结构

指令集: CISC复杂指令集(相对于精简指令集RISC, 如ARM)

存储器

程序存储器:8K字节Flash;10K 次擦写后在55°C环境下数据可保存20年

数据存储器:640 字节真正的数据

EEPROM;可达30万次擦写

RAM:1K字节

 

2. STM8与STM32的主要区别

虽然STM8和STM32都是意法半导体公司(ST)生产的同系列的微处理器,但其实其CPU架构和指令集是完全不同的。也正因为如下,STM8需要特定的集成开发工具和特定的C语言编译器,也正因为如此,集成开发工具是IAR for STM8,而不是IAR for ARM.

STM8 CPU 是一种专有架构,它保持了以前的 STM7 内核的传统,同时在 8 位 CPU 效率和代码密度方面实现了突破。


STM32 围绕行业标准 ARM® Cortex-M 32 位内核构建,并受益于与 ARM 处理器有关的开发工具和软件解决方案的完整生态产业环境。


尽管它们被认为是两种完全不同架构的处理器,但考虑到同一家公司的产品,在用户使用习惯的一致性,它们在设计方面实际有许多相似之处,下面对比STM8S 和 STM32F1 (Cortex-M3)这两种内核异同:

从上述可以看出,STM8和STM32除了指令集有大的差别,在设计上,保持了极大的继承性和一致性,主要的差别主要在其性能上的差别。


两种内核均基于哈佛架构,它们采用 3 级流水线执行,可将执行时间降至最低,

对于 STM8S,时钟速度高达 24 MHz,对于 STM32F1系列,时钟速度高达 72 MHz。

在代码密度方面,它们均有优异的表现,这归功于 STM8S 系列的 8 位 CISC 指令集以及 STM32F1系列的 Cortex 内核引入的 16 位 Thumb-2 模式。


3. STM的主要功能特性

Flash:用于存储程序=> 64K. 因此STM8很难实现大的程序代码或协议栈代码。

Data EEPROM: 用于存储用户的永久性配置数据=>2K-1K.

RAM: 用于存放程序执行过程中的动态数据=>2K

LCD: LCD接口

Timers:定时器,由于STM很难支持OS, 因此定时的功能通常需要通过硬件定时器完成, STM8L提供了1个8bit的基本定时器,3个16bit的通用定时器,一个16bit的高级控制的定时器。

定时器在单片机编程中其着非常重要的功能。

连接外设的接口:2个SPI master, 1个I2C master, 2-3个 uart串口控制器。

GPIO: 通用的输出输入接口。

 

ADC和DAC: 数子到模拟信号转换和模拟信号到数字信号的转换

Comparators:比较器,用来比较两个数据的大

watchdog:软件看门狗,防止程序死机,需要程序定期的喂狗,确保看门狗不复位系统。

CPU的频率:16MHz

操作电压:低功耗电压1.8-3.6V

操作温度:-40- +85/105/125.


4. STM内部的功能框图:

STM8 core通过标准的内部的地址、数据、控制总线连接所有外设的控制器,并通过统一编址的地址来访问的。

5. STM8的内存地址映射

在上图中,可以看出,程序是存放在0x00 8000-0x01 7FFF 8K的Flash地址空间内。

特别需要注意的是,位于0x00 8000-0x00 807F处的128字节的复位和中断向量表也存放于此。


包括程序的复位后的第一条指令存放于:0x00 8000。


因此,STM8的终端服务程序在Flash(而不是RAM)中的位置,是在编译的时候就确定下来的,而不是动态加载的。


6. STM8的中断向量表


参考:

(1)STM8单片机入门:https://wenku.baidu.com/view/16dae952ac51f01dc281e53a580216fc710a5316.html

(2)STM8L官网:https://www.st.com/zh/microcontrollers-microprocessors/stm8l152m8.html

(3)STML官网手册:https://www.st.com/resource/en/datasheet/stm8l152m8.pdf

(4)CSDN下载:https://download.csdn.net/download/HiWangWenBing/12666208


推荐阅读

史海拾趣

ETAL公司的发展小趣事

在产品质量和技术水平得到认可后,ETAL开始积极拓展市场。公司制定了详细的市场营销策略,通过参加国际电子展会、与知名企业合作等方式提高品牌知名度。同时,ETAL还注重客户服务,建立了完善的售后服务体系,确保客户在使用产品过程中得到及时、专业的支持。这些举措使得ETAL的市场份额不断扩大,品牌影响力逐渐增强。

Foxconn_Optical_Interconnect_Technologies__Inc.公司的发展小趣事

随着全球环保意识的提高,ETAL也积极响应号召,将绿色环保理念融入到生产和经营中。公司采用了环保材料和清洁能源,减少了对环境的污染。同时,ETAL还注重节能减排和资源循环利用,努力降低生产成本和提高资源利用效率。这些措施不仅有助于保护环境,还为公司带来了长期的经济效益。

AirBorn公司的发展小趣事

在航空航天领域,AirBorn的产品广泛应用于飞机、导弹系统、通信设备等关键领域。为了满足航空航天领域对连接器的严苛要求,AirBorn不断投入研发力量,推出了一系列具有高性能、高可靠性的连接器产品。这些产品不仅满足了航空航天领域的需求,还为公司带来了可观的收益。

Euroquartz公司的发展小趣事

随着全球电子制造产业的不断发展,Euroquartz也积极拓展国际市场。公司凭借其高品质的产品和专业的技术服务,赢得了全球客户的信赖和支持。如今,Euroquartz的产品已经覆盖全球90多个国家和地区,为全球电子制造产业提供了重要的石英晶振、振荡器、滤波器以及其它频率相关产品。

Frequency Devices公司的发展小趣事

为了进一步扩大市场份额,Frequency Devices公司积极实施国际化战略。公司通过参加国际电子展会、建立海外销售网络、与国际知名企业建立合作关系等方式,不断提升品牌国际影响力。同时,公司还根据不同国家和地区的市场特点,定制化开发符合当地需求的高频电子产品。这些努力使得Frequency Devices公司的产品成功打入多个国际市场,实现了全球化布局。

FILTRONETICS Inc公司的发展小趣事

进入21世纪后,FILTRONETICS意识到全球化市场的重要性,开始积极开拓国际市场。公司加强了与国际客户的沟通与合作,参加了多个国际电子展会,展示了公司的技术和产品。同时,公司还在海外设立了分支机构,以便更好地服务当地客户。通过不懈的努力,FILTRONETICS成功打入多个国际市场,并赢得了众多国际客户的信赖和支持。

问答坊 | AI 解惑

可用于系统架构和嵌入式软硬件开发的虚拟系统原型

复杂嵌入式系统已日益普及并成为我们日常生活的一部分。一辆汽车平均包含80个每秒能执行上亿条指令的嵌入式处理器。以一个单独的DSP上以软件方式实现移动调制解调器的配置为例,现在的手机包含2到4个处理器。 然而随着嵌入式系统日益普及,设计危机 ...…

查看全部问答>

一篇关于开关电源的简单介绍

看了觉得不错。值和分享。…

查看全部问答>

COFDM无线应急指挥系统方案

COFDM无线应急指挥系统方案…

查看全部问答>

ad9805 与信号发生

dds芯片  可以直接产生频率可调的正弦波…

查看全部问答>

protel基础知识

附件里包括 PCB设计技巧百问.pdf protel99-se.pdf PROTEL 软件使用的误区及几个不易搞清的概念.pdf Protel同类修改.pdf 在Protel DXP中建造自己的原理图库.doc…

查看全部问答>

怎么在我的VS2005工程里面加入.h文件

我这个工程是在VS2005下的CE6.0工程,我发现我无法加入.h文件。我点击右键增加已存在文件,就是加不进工程里面。请问是什么怎么回事?…

查看全部问答>

采用三菱PLC 型号F1-20MR 控制交通灯的问题

采用三菱PLC  型号F1-20MR 程序如下 接线图、和梯形图在以下地址,在IE输入这个地址就可以打开       http://bbs.21ic.com/upfiles/img/20074/2007419161818884.jpg 1.请问PLC的程序中A 、B、C、D、E段梯形图每 ...…

查看全部问答>

图文解说:开关电源测试步骤

一、开关电源工作原理 1、开关电源是一种高频开关式的能量变换电子电路,常作为设备的电源供应器,常见变换分类有:AC-DC、DC-DC、DC-AC 等。   2、开关电源原理框图   (1) 市电进入电源后,首先经过是最前级的EMI 滤波电路部份, ...…

查看全部问答>

arm9 2440 GPS开发板只要95带4.3寸触摸屏

这个板子资源 GPS LEA-5A (ublox的) SD卡卡座, 2440 K9F1G08 HY57V561620FTP x2 LCD接口。 音频接口。 SD卡接口。 串口。 jtag口。 USB dev USB host 电源管理芯片。 nboot说明 支持SD卡升级 调试程序。比如你要升级引导程序或者win ...…

查看全部问答>

LPC810 与 Labview 快递设计控制

  大多情况下Labview 与单片机间的通信大多数都是通过串口通信,但是要注意Labview 的串口通信是属于VISA模块,可惜LabView 默认情况下是不安装VISA驱动的,所以要手动安装驱动在官网的 资源与服务->NI Drivers -> NI VISA。   ...…

查看全部问答>