最近,我不小心在互联网上看到了老师魏东山(Wei )的课程 - 对物联网智能家园的7天实践培训。我经常在有关学习或嵌入式学习的文章中看到老师Wei 的名字,但是我从未真正听过,因为每个人都说我们应该首先从51过渡到以后学习,然后再学习,因此我们不会那么困难。碰巧在冬季假期期间,老师郭天氧的微控制器教程一直被学到。碰巧的是,Wei老师的班级大约是这个时候,所以我直接购买了它,只是为了开始。本列中的文章主要用于记录我自己的一些笔记,我将其用于将来参考,而不是用于解释知识。当然,我很荣幸在这里学习一些知识。
注意:Wei 老师的课程可以在上找到。
1。嵌入的内容
我们的普通计算机不是嵌入的,但计算机是通用计算机。一台计算机可以实现多个功能。计算机属于同一硬件设备,以满足不同的应用程序方案。
那么,什么是嵌入式?
与上面计算机的多功能性相反。例如,洗衣机专门用于洗衣服;冰箱专门用于制冷食品。为了实现不同的功能,硬件也不同。
嵌入式设备的另一个功能是:智能控制核心。例如,普通的插件板不是嵌入式设备,但是带有遥控开关和正时开关的插件板是嵌入式设备。另一个功能是切割。
功能如下:
实际上,嵌入式设备和其他设备之间的边界变得越来越模糊。随着技术的开发,许多硬件设备也可以实施多种功能,例如 Pi。
因此,我们可以简单地理解,我们所有人都认为计算机以外的智能产品是嵌入式设备。
2。学习参考路线
大学生:作为最基本的知识,电路,数字,电气和C语言,首先需要奠定坚实的基础。
输入期:根据您自己的情况,可以将条目期与软件或硬件方面分开。 (从一年到一年的第六名)
硬件:最主要的是学习如何绘制PCB板,能够设计微控制器最小系统板,重点是能够掌握微控制器的外围电路;
软件:主要是微控制器编程,购买开发板,并根据开发板的硬件电路进行一些小型项目。或使用本课程的董事会,根据研究手册,只需进行70%或80%的支持实验即可。
增长期:目前,它将更加细分。根据您设计的简单或复杂的内容,需要使用哪种设计,例如简单的冰箱控制,只需使用单个芯片裸机,而当涉及到无人机级别时,您需要使用RTOS。有些需要使用 /驱动程序,应用程序,然后需要使用一些。
单芯片微控制器的裸金属:它不涉及操作系统。通常,该项目相对简单,并且由软件直接编程和控制。这并不困难,有很多职位,薪水很差。
RTO:使用实时操作系统,其中包括许多项目和复杂程序,例如无人机。与上述内容相比,学习内容更多。
/分为基础层和应用:
低级别:编写了许多驱动程序,该部分需要一个微控制器基础,驱动程序框架和机制。
应用程序:编写程序。
其他(DSP,FPGA):用于具有高功能要求的特定产品。这足以按照公司的需求学习。不建议仅学习DSP或FPGA。
一个建议:搜索招聘网站上的嵌入式相关职位,您可以看到需要许多职位,因此在学习微控制器后,我们可以深入了解操作系统,无论是微控制器的实时操作系统还是操作系统。
学习的基本内部技能:
内容的这一部分需要首先练习。只有通过了解这些基本知识,我们才能深入研究,而我们才能学到更多的知识。
3。基本概念
这是一些在嵌入式学习中经常遇到的概念。
1.arm
对于手臂,通常有两个含义:
一个是公司,ARM是设计处理器体系结构的公司。请注意,它只是设计,而不是生产和制造。
第二个是由ARM设计的处理器芯片的一般术语。 ARM为其他公司(例如高通,华为等)提供解决方案,这些解决方案添加了外围设备等,以根据需求设计自己的芯片。例如,华为的基林和苹果的A系列。
此处的完整英语ARM名称如下:
RISC:简化的说明集。
同样,也有复杂的说明集。例如,我们编写的程序和代码必须转换为执行指令,以使CPU运行和执行。
手臂建筑的分类:
系列处理器可以提供诸如虚拟内存之类的功能,以实现多进程和多线程,并可以运行操作系统。
R系列用于某些高实时应用程序,例如计算机硬盘控制器,汽车安全气囊等,很少见。
M系列用于低功率和成本敏感的产品,例如小型电器,物联网设备,无人机设备等。
基于ARM的处理器
在这里,我们将参与下面将提到的MCU和MPU。
2.MCU
MCU表示微控制器,其功能是将CPU,内存和存储集中在一个芯片上,这是我们通常称为微控制器的。这是一个完整的微型计算机,只要有动力,并且几乎没有外围电路,通常可以正常工作,常见的电路为:8051,ETC。
MCU为中端和低端产品(例如小型电器,工业控制等)运行裸机或实时操作系统。
3.MPU
MPU是微处理器,主要负责处理和计算。它类似于计算机,需要其他内存和存储。
这种非实时操作系统通常用于高端市场的MPU,例如智能手机,路由器和智能消费电子市场。
MCU和MPU之间的区别在于应用程序方案不同。 MCU用于控制,很简单,不需要过多的计算,例如小型家用电器。 MPU专注于强大的计算和处理,例如手机。实际上,随着技术的发展,两者之间的边界逐渐变得模糊,例如微控制器有时具有外部记忆。
4.DSP:
DSP也是两个概念。数字信号处理技术和芯片。
该芯片用于具有相对密集的计算的方案,例如数字调制和解调,加密,图形处理,数字过滤等,并且具有广泛的应用程序场景。专门用于数字处理。
5.FPGA
FPGA也是一个芯片,可以更改芯片的内部结构,并通过编程修改硬件。例如,添加硬件接口和串行端口。
总结:
4。发展过程
微控制器的开发与计算机不同。计算机可以直接在计算机上开发。由于设备和功能的局限性,需要在计算机上开发微控制器并下载到开发板上。它们不能直接在开发委员会上开发。这称为跨发展。
1。计算机
您需要在计算机上做的事情如下:
注意:图中的枪写得不正确,实际上是GNU。
综合开发环境
诸如基尔(Keil)等常见的针对手臂建筑。由于我们使用的许多芯片是ARM架构,因此Keil被用作主要开发环境,而其他芯片仅用于微控制器以及IAR等的模型。
2。调试器/下载器
调试:控制开发板的芯片(MCU)逐步执行代码,而不是全速运行所有代码。基于ARM的芯片在设计ARM时使用JTAG接口设计,因此可以使用JTAG接口进行调试。调试需要工具,称为作家或辩论者。常见的是J-Link(适用于所有手臂芯片)和ST-Link(适用于ST芯片)。这次使用的开发委员会迷你也可以通过编写固件用作ST-Link。
下载:此部分由芯片制造商的设计确定。例如,JTAG接口还支持下载。一些芯片将扩展下载方法,例如支持串行端口下载以及一些支持USB下载。迷你开发委员会的一单击下载功能基于串行端口下载。
3。发展委员会
开发板不像计算机。很多时候,我们不知道出现问题时问题在哪里发生。有一种方法可以逐步执行代码,但实际上,调试器非常昂贵,因此我们可以使用另一种方法,即打印和显示。
使用开发板上的串行端口模块,我们可以编写程序,以允许该程序运行到某个步骤时通过串行端口将数据发送到计算机,然后通过某些方法在计算机上显示它,以便我们可以粗略地查看尚未运行哪些步骤。
在这里应注意的是,微控制器的串行端口模块使用TTL级别,不能直接连接到计算机。它需要USB-TTL转换,将开发板的串行端口信号转换为USB信号以将其传输到计算机。转换通常用于特定芯片,这次使用。另外,要在计算机上显示串行端口信号,特定的软件,串行端口助手,诸如OR等。
总结:
V.董事会简介
这是用于介绍该课程的开发委员会。可以在开发委员会的相应信息中找到具体信息。
本课程中使用的开发委员会是开发委员会。
车载资源如下:
①USB:用于电源,下载,串行端口打印,USB通信;
④开关开关:串行端口打印(OFF),USB通信(ON);
⑤延伸接口
①①接口:数据的存储,功能:电源故障不会丢失,属于I2C接口
①②自我恢复保险丝
①③USB到串行芯片:
①④外部:存储大型文件,是一个SPI接口,并将离线燃烧程序存储
相应的应用程序功能:
离线燃烧:该软件会在开发委员会中自动燃烧特殊的固件(开发板必须遵守DAP协议),然后选择一个垃圾箱或十六进制文件(即我们编写的程序的二进制或十六进制文件),然后将其保存在此开发板上。它可用于将离线燃烧到其他开发板上。此功能更方便地升级实际生产中的芯片功能。无需带计算机在网站上下载该程序,但只需要一个小型开发板。
最后,我想说的是,正如黄老师在第一堂课中所说的那样,我们应该在学习过程中做更多的笔记,写博客等,而不是进行教学,而是因为我们将在学习过程中遇到许多知识点和技术。当时我们可能已经学会了它,但是如果以后不经常使用它,我们会忘记它。目前,如果我们看别人的材料,除了区分真或错误之外,学习也相对困难。目前,如果我们自己写的笔记,我们不需要考虑正确性,而我们写的是基于我们自己的想法,我们可以很容易地回想起当时的学习内容。
版权声明:本文为 “博览广文网” 原创文章,转载请附上原文出处链接及本声明;
工作时间:8:00-18:00
客服电话
0755-88186625
电子邮件
admin@lanyu.com
扫码二维码
获取最新动态