程序员843016322

微控制器和微控制器介绍

5月14日,2020年
微控制器不必在C. MicroPopthon中编程。

>>电子设计资源
..>>图书馆:文章系列
. . . .>>系列:用于嵌入式系统的MicroPython

目前有大约600个编程语言可供选择,所以挑选对你有权的那个非常困难。但是,如果您正在寻找一种非常受欢迎的语言,具有较低的进入障碍,并且可以轻松地与各种其他语言集成,然后Python可以说是您现在最好的选择。python是第二受欢迎的编程语言截至2020年,它甚至可能会在不久的将来从JavaScript中占据皇冠。

但是Python可以用于任何东西虚拟主机从软件开发到商业应用程序,以及介于两者之间的一切,它不能在微控制器上运行,这在一定程度上限制了它的功能。幸运的是,一位勇敢的程序员在几年前提出MicroPython时解决了这个小问题。正如它的名字所暗示的那样,MicroPython是一种流行的编程语言的紧凑版本,旨在与微控制器协同工作。

在本教程中,我们将教你需要知道的关于微控制器的一切,并讨论使用MicroPython而不是其他电路板的好处。这里有很多东西需要解释,但是在我们进入事物的本质之前,让我们回顾一下过去,看看MicroPython背后的想法是从哪里来的。

MicroPython的历史和概述

现在是2013年。达米安·乔治,当时是剑桥大学的一名本科生,他发起了一个Kickstarter运动这承诺将Python带到微控制器,这最终允许快速无痛的硬件编程。众筹的竞选活动取得了巨大的成功。Damien只要求一个相当温和的总和15,000英镑,将他的概念证明转变为工作产品,配备参考硬件。然而,在Kickstarter的结束时,程序员通过超过1,900人的支持者设法将接近达到100万英镑的项目。

该项目在多年来发展而来,Damien的参考硬件最终成为了Pyboard(见图)这是一块小型电子电路板,在裸金属上运行MicroPython。虽然你不需要Pyboard来使用MicroPython,但当涉及到硬件编程时,微控制器是最好和最容易使用的。


目前,这款平板电脑有几个不同的版本,价格一般在20美元到35美元之间,不过有些版本会贵一些。如果你不打算投资一个微控制器,你可以去MicroPython生活在网上免费玩一个棋盘。

MicroPython为硬件编程专家和初学者提供了一些非常令人兴奋的可能性。这是因为,与常规Python不同,MicroPython可以与电路、按钮、传感器、LCD显示器和各种其他电子产品无缝集成。不仅如此,MicroPython需要的资源要少得多,而且不需要依赖操作系统,因为MicroPython本身就是Pyboard或任何其他微控制器的操作系统。

基本上,您需要设置Micropopthon项目的所有内容都是兼容的硬件和一些编码技巧。如果您不是编码器,后者似乎可能是一个问题。但别担心,因为MicroPopthon是一个由一个非常激情和乐于助人的社区支持的开源项目。如果您有一个特定的项目,您通常可以希望能够找到可以帮助您带来生活的开发人员的代码库和教程。通常开发人员使用来自提供商的服务,例如Bluehost或AWS.托管他们的开源项目,这样你就可以随时访问他们。

MicroPython可能一开始只是一个人的努力,但现在这个项目得到了一个由程序员、爱好者组成的大型社区的支持,甚至还有像欧洲航天局这样的主要组织的支持,欧洲航天局帮助资助了Damien的工作。

物理计算

虽然常规Python是软件编程的最佳脚本语言之一,但MicroPopython非常适合对物理计算感兴趣的任何人。术语物理计算在广义上可以引用很多东西,但就本教程而言,我们将主要使用它来描述在MicroPython的帮助下创建的交互式系统和设备。无论你计划处理哪个硬件编程项目,你都需要考虑以下三个主要元素:

1.输入:这可以是一个按钮,传感器或任何可以让你给微控制器一个命令或信号的东西。

2.加工:微控制器本身处理输入并提供一个或多个输出。

3.输出:可以以任何设备的形式将数据从微控制器发送到另一个设备或直接发送给用户。

除了上面描述的三个元素,您还需要一些类型的电源,以及根据项目的不同,将所有东西连接在一起的电线。

微控制器到底是什么?

微控制器可以描述为控制设备或系统的集成电路。您可以将其视为相当于比常规桌面计算机更强大的小型计算机,但更紧凑。由于它们的体积小,微控制器可以轻松嵌入多种系统中,包括空调系统,医疗器械,家电,无线电,自动售货机,车辆,甚至机器人,仅举几个例子。

与普通计算机不同,微控制器不需要一整块芯片来完成工作。相反,它们以通用芯片的形式出现,该芯片包含一个处理单元(CPU)、内存和一个或多个I/O(输入/输出)端口。类似地,微控制器也不需要前端操作系统,因为它们带有被称为固件的专门软件。在MicroPython板的情况下,该软件以Python标准库的一个小子集的形式出现。

微控制器是如何工作的?

其基本概念与普通计算机相似。微控制器通过它的I/O端口接收数据,并使用它的CPU处理它。由于微控制器没有像硬盘或SSD那样的永久存储单元,所有接收到的数据都临时存储在微控制器内置的数据内存中,你可以将其视为计算机中的RAM棒。处理器然后使用存储在程序存储器中的一组指令来访问信息并破译它。根据输入的要求,微控制器随后使用其I/O端口交付一种或多种类型的动作(输出)。

微控制器可以在各种形状和大小的系统中找到。但是,尽管单个微控制器可以独立处理某些小型设备,但它无法为更复杂的系统供电。然而,多个控制器可以被编程来与另一个一起工作,以实现这一结果,与每个单元必须只控制一个特定的功能或大系统的一个小部件。

在许多情况下,微控制器与中央计算机一起工作。然而,它们也可以被编程为只与其他微控制器通信或单独在同一系统内操作。

微控制器的核心元素是什么?

正如前面提到的,一个微控制器只有三个核心元素,所以让我们仔细看看它们:

中央处理器(CPU)

处理器是计算机中执行操作和执行指令的部分。它本质上是一台普通计算机的大脑,同样的概念也适用于微控制器。与任何CPU一样,微控制器的处理器执行基本的逻辑、算术和I/O操作,但也可以执行数据传输操作。这些指令以指令的形式出现,这些指令可以与更大系统中的其他组件进行通信。

内存

存储器存储通过微控制器的I / O端口由CPU接收的数据。存储器配备了一组用于响应从处理器接收的信息的一组指令。微控制器适用于两种类型的内存,每个内存执行不同的函数。

数据存储器在CPU执行指令时存储信息。同时,程序存储器存储与指令本身相关的信息。一旦微控制器不再连接到电源,数据内存就会临时且消失。程序存储器是非易失性的,即使在删除电源之后,即使在其电源被删除后,仍保留在设备上。

I / O端口

输入和输出端口允许微控制器的CPU与外部世界接口。微控制器不仅使用I/ o与人类用户交互,而且还使用其他信息处理系统。微控制器的CPU通过输入端口收集数据,并使用输出端口向外部发送指令或信号。

除了上面详述的三个核心元素外,微控制器通常依赖于连接到I/O端口的其他组件。这些组件充当外围设备,在处理器和各种设备之间建立桥梁。一些例子包括系统总线,数字-模拟转换器,模拟-数字转换器和串行端口。

为什么选择MicroPython板而不是其他微控制器?

微控制器早在Damien George提出MicroPython的想法之前就已经存在了,所以为什么不选择其中的一个呢?好吧,有很多好的理由,其中最明显的是可访问性。常规Python以对新手非常友好而闻名,MicroPython也是如此。如果您想学习硬件编程的基础知识,并尽快开始自己的项目,MicroPython非常适合您。

MicroPython的另一个很大的优点是,您可以使用直观的REPL(读取-计算-打印循环)环境与它交互。REPL提示符允许您快速执行命令、动态更改代码和从内置文件系统导入脚本。

除了受益于MicroPython的易用性和快速反馈,您还可以利用这个软件实现与普通Python完全兼容这一事实。如果您已经熟悉Python,那么对于MicroPython的理解就不会有任何问题。如果您没有,您将能够快速学会它,因为,由于Python的日益流行,有大量的在线资源,这与许多更晦涩的编程语言不同。

最终的想法

微控制器已经看到过去几年的普及巨大飙升,并且这种趋势很可能会继续可预见的未来。这些惊人的小型电路板可用于为所有设备供电,并在全球学校的教育工具中使用越来越多。换句话说,现在肯定是了解一般的微控制器和硬件编程的美好时机。

如果您是一个初学者,不想被这些天到处流传的大量技术术语所淹没,我们建议您从尽可能多地学习MicroPython开始,因为这样做也会让您对微控制器有更多的了解。我们希望我们的教程能够对这个话题有所帮助。尽管如此,仍然有更多的东西需要学习,所以不要犹豫,请查看MicroPython官方网站上的文档部分以获取更多信息。

>>电子设计资源
..>>图书馆:文章系列
. . . .>>系列:用于嵌入式系统的MicroPython

从我们的合作伙伴

博客:使用惯性测量装置(IMUs)

传感器融合结合了多种传感器和软件解决方案,使信息和通信技术、物联网和aut…

欢迎来到边缘

照片/图像学分(按显示顺序)。pinkeyes - stock.adobe.com, Monopoly919 - stock.adobe.com, proindustrial2 - stock.adobe.com。加入我们吧…

物联网设备调试工具和技术的专业指南

2021年3月23日
嵌入式系统的开发,其中软件和硬件必须很好地配合,已经变得极其复杂和具有挑战性,甚至…

如何使用ESP32微控制器及其ESP-IDF执行空中(OTA)更新

8月10日,2021年8月10日
东西的设计者(物联网)产品需要不断评估平台和组件选择,以降低成本和P ...

桥接12v和48v双电池汽车系统

在双电池汽车系统中的桥接12v和48v双向降压控制器如何帮助支持双总线拓扑。雅罗西克Panacek Sy……

声音你的意见!

本网站要求您注册或登录后发表评论。
目前还没有任何评论。想开始对话吗?
Baidu