【微控制器基础】——完美的软硬结合(上)

cathy的头像
cathy 发布于:周五, 04/29/2022 - 15:26 ,关键词:

无处不在的嵌入式技术已经应用到信息社会的方方面面,其中,嵌入式微控制器因其体积小、可靠性高、功能强、灵活方便等特点,在这个万物互联的时代扮演着越来越重要的角色。嵌入式技术的标志就是用某种语言(如Ada、C/C++、Modula-2等)在嵌入式软硬件开发环境中进行开发。区别于传统的通用计算架构,嵌入式运行的是固化的软件,用术语表示就是固件(firmware),终端用户很难或者不可能改变固件。

微控制器就是最能体现嵌入式系统将软件和硬件紧密结合在一起的典型应用,它充分发挥了软件和硬件的各自优势,开发者不仅需要将软件的程序执行在特定的硬件和相关辅助电路上呈现出实际效果,还需要通过调节、变换软件指令,实现对有限的硬件资源进行最大化的利用,并采用相同的硬件结构满足不同用户的特定需求。可以说,如果把嵌入式系统的任务比作一个人,那么软件就是我们的意识和思维,硬件就是我们的躯体和四肢,软件和硬件是组成整个嵌入式系统不可或缺的两个部分。

我们在前面的芝识课堂中介绍了微控制器的硬件电路基础及其历史和五个要素,今天我们带大家一起走进微控制器的核心控制部分,即控制微控制器运作的软件和实际进行任务执行的硬件。如前面分析可知,在一个典型的嵌入式微控制器为核心的系统中,软件和硬件的作用是相辅相成密不可分的,要实现完整的产品系统,需要将硬件(即设备本身)与运行其功能的软件(程序)相结合,才能实现涉及的目标。

我们可以通过具体的应用案例来分析微控制器软硬件的配合分工。在一个典型的电饭煲应用中,嵌入式微控制器作为核心硬件,通过输出不同的信号,指挥着整个系统硬件执行不同的功能,在软件方面,通过编写程序,并将程序嵌入到微控制器中,对电饭煲进行控制。比如通过输出10000110代表显示煮饭的时间,输出00010001代表开始煮饭的过程,10001000代表煮饭时间结束关掉加热,而用10101010显示煮饭的实际米量等……针对不同功能的电饭煲,开发者可以通过更改程序,轻松地进行功能的增减,而无需改动电饭煲的硬件设计,从而让整个硬件方案变得更为普适。

“【微控制器基础】——完美的软硬结合(上)"

那么微控制器的操作机制是怎么样的呢?我们可以从下图中看到,程序操作微控制器时,CPU读取写入存储器中的程序,并根据指令工作,具体的流程如下:

1. CPU从指定的存储器地址读取指令;
2. 其指令在CPU中被解密;
3. 它按照指令工作。(在右侧下面的示例中,执行“数据输出到输出端口”)
这样,如果完成一个任务,就从存储器中的下一个地址读取下一条指令,然后,微控制器重复1到3的操作。

“【微控制器基础】——完美的软硬结合(上)"

“【微控制器基础】——完美的软硬结合(上)"

现在我们知道微控制器是通过预先编写的程序来进行信号输出,从而指挥系统实现不同的功能。那么,控制硬件的程序又是如何编写的呢?在下期的芝识课堂中,我们将给大家详细介绍微控制器的编程语言,敬请期待哦!

来源:东芝半导体
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 47