首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

小白必看!入门嵌入式你需要了解这些!

编程知识
2024年09月24日 19:48

小白必看!入门嵌入式你需要了解这些!(一)

​     在信息发达的时代教学文档和视频在网络上遍地开花,因此没有必要重复造轮子,此文档的作用为:提供一个学习方法、例举出一些有学习意义的学习视频和文档,供0基础的你参考和学习。此处的学习可能有助于提升对于嵌入式整体的兴趣和概念的了解。

在例举学习的视频和文档之前我希望你能了解:

​     自学能力是步入任何一个行业首先需要培养的一种能力。学习一个东西必须的成本是时间,如何花少量的时间学习更多的内容一直是许多人的追求,其实很多人的学习方式有很大问题——时间浪费。浪费与否的评判取决于学习的目的,如果目的是快速实现某一个功能,那其实学习成本远远低于完全弄懂一个功能的时间。原因就在于快速实现某功能并不需要了解底层原理,而往往底层原理是最难啃的部分,适当的舍弃这一部分可以极大的提升我们的学习速度。

​     学习一门全新的未知领域的学科时切忌不要一开始就找来一本书或一个教学视频从头到尾就开始看,这是错误的,也是危险的!一个推荐的学习方式是先了解整个领域是具体干什么的?先从大纲开始,即整个领域包含哪些部分?各部分之间的作用是什么?如何使用这些部分?稍作了解有一些概念即可。先是粗线条的学习,全部过一遍,知道怎么用就行了,不用详细了解底层的计算原理、数学公式、逻辑运算等复杂的内容。后面基本的框架有了一定的认识了以后再进行更加详细的学习。

​     然后,开始学习每个部分的具体内容,此处仍然采用”稍作了解“战术,即知道概念、基本原理和如何使用即可。比如我知道计算器可以用来做运算,我现在在学习加法运算,我只是使用它进行我的加法运算,知道按下按键‘1’ ‘+’ ‘1’和’=‘就行了,不需要了解它内部的芯片逻辑如何运作,更不需要了解它内部的电子是如何运动的。这样有助于提高我们的学习速度和对学习领域的框架的快速搭建(万物皆可速通 bushi),好比高屋建瓴,有了框架的支撑再去慢慢的填空即可!

​     自学能力还有一部分为自主探索能力,要能够通过一个点的探索发展成为一个面的探索,比如学习stm32你不能说你只知道stm32不知道其他的单片机,你不能只知道单片机而不知到嵌入式,你不能只知道嵌入式而不知道其内部还包含着哪些部分。自主探索尤为重要!!这也是后期支撑兴趣的动力之源,自己不断发现新的有意思的东西不断的学习和更新!更高,更强!

一些概念的介绍举例

​     对于单片机是什么 ?一个肤浅且比较快速的理解方式就是一个性能不那么好但是可以对它进行编程的小型电脑。具体详细的细节可以参考网络上的详细说明。稍作了解有一个概念即可。同理我介绍下面的一些概念:

​     编程是什么?编程是编辑程序的意思,用计算机语言的方式进行编程,简称写代码(一下子就不高级了hhh)。

​     程序,是由逻辑代码组成的。

​     计算机语言是什么?计算机语言就是计算机能够理解的说话方式,用计算机语言书写逻辑的过程叫做写代码,有需要使用到一些方便的具有多种功能的文本编辑器,常见的几种计算机语言为C语言、C++、python、java等等我们操纵单片机使用的最多的是C语言,请自行搜索c语言学习内容。这些语言仍然不是计算机能够直接理解的,它们需要通过一些方式转化为更为底层的电平变化来理解。

​     电平是什么?电平可以肤浅的理解为电压的高低,电压高低只有两种方式,高和低。我们规定高代表1低代表0,一共只有两种,这也是计算机为什么是2进制的一个原因。

​     二进制是什么,类比一下十进制满十进一,二进制则是满二进一。

    平时对stm32进行编程时,往往需要借助一些软件和硬件来辅助我们完成编程,比如编程时需要使用一个叫stlink的硬件将电脑与stm32进行连接以便于后续逻辑代码的写入,该硬件需要安装驱动。我们需要使用一个名叫keil5的软件来进行程序的编写,该软件需要安装对应芯片的c语言包,编程使用的语言为c语言。这个软件需要进行一些配置,如果我们的代码逻辑书写完毕,需要对代码进行编译(修改成单片机看的懂的二进制文件.hex),并且进行烧录。烧录即抹去单片机上现有的程序并把刚刚编译好的二进制文件传到单片机里。它下一次上电时就会自动运行你写的逻辑。

​     这里引出2.0版本的学习方法——“不完全追问法”,上面的概念介绍就是一个例子你会发现我的概念介绍是一层套一层的,下面一层都是源自与对上面一层的不理解,但是解释到非常细节的地方时能要求进行概括即可。即”不完全追问“,就像武林高手过招,咱点到为止。

​     stm32的c语言库主要分三种,一种为库函数,一种为hal库,一种为寄存器。其各自的优势可以网上按照前面的方法自行了解,实验室所采用的是库函数版本,我下面推荐的两个视频为hal库版本。建议先看完正点原子的库函数对于配置有了一些基本的认识之后再进行hal库的学习。

推荐学习资料

stm32f407探索者开发板V3 — 正点原子资料下载中心 1.0.0 文档

上面这个建议下载资料盘看文档(资料的软件里面有keil5),文档看不懂再看视频。(tips:单位时间内能接收到信息的效率而言,文档远高于视频)

https://www.bilibili.com/video/BV1th411z7sn/?spm_id_from=333.337.search-card.all.click

上面是江科大的stm32学习

推荐up主:

keysking的个人空间-keysking个人主页-哔哩哔哩视频 (bilibili.com)

拓展学习

    如果你对电脑系统感兴趣也可以提前了解linux操作系统,我们主要采用ubuntu。如果你对机器人操作系统感兴趣也可以学习ros或ros2.
最后感谢您的阅读!

From:https://www.cnblogs.com/chenyouyuan/p/18429968
本文地址: http://www.shuzixingkong.net/article/2275
0评论
提交 加载更多评论
其他文章 mac M1,M2,M3芯片踩坑 nodejs ruby brew
执行 `arch -x86_64 zsh`报`arch: posix_spawnp: zsh: Bad CPU type in executable` 原因: 未安装rosetta 执行`softwareupdate --install-rosetta`安装rosetta报 ``` Package
设计模式之中介模式(三分钟学会一个设计模式)
中介模式(Mediator)又称之为调停模式。mediator [ˈmiːdieɪtə(r)] n. 调停者;斡旋者;解决纷争的人(或机构); 本意就是解决纠纷的中间人它是面向对象六大原则中最少知道原则的一个典型应用。(关于面向对象六大原则,可看前文:https://www.cnblogs.com/
设计模式之中介模式(三分钟学会一个设计模式) 设计模式之中介模式(三分钟学会一个设计模式) 设计模式之中介模式(三分钟学会一个设计模式)
在Activity中测量控件宽高的三种方式
在进行Android开发时,有时需要测量控件的宽和高,常用的方式有以下三种: (1)重写onWindowFocusChanged(hasFocus: Boolean)方法,在这个方法内获取控件的宽高 这个方法在Activity的窗口焦点发生变化时调用,具体可以分为窗口获得焦点时和窗口失去焦点时。Ac
Vscode 远程切换Python虚拟环境
本文简要介绍了Vscode 远程切换Python 虚拟环境的详细步骤和配置方法,同时详细介绍了如何在VSCode中创建虚拟环境的方法。
linux操作系统和文件系统,命令(上)
Linux是一个类似于windows的操作系统 Linux操作系统的一种主要使用方式是通过终端软件;终端软件里只能使用键盘不能使用鼠标,在终端软件里通过输入命令完成各种任务 clear命令可以删除终端窗口里的所有文字信息 操作系统里用来管理文件的部分叫文件系统 所有文件系统都采用分组方式管理文件 一
项目实战:Qt+OSG爆破动力学仿真三维引擎测试工具v1.1.0(加载.K模型,子弹轨迹模拟动画,支持windows、linux、国产麒麟系统)
需求 1.使用osg三维引擎进行动力学模型仿真性能测试; 2.打开动力学仿真模型文件,.k后缀的模型文件,测试加载解析过程; 3.解决第三方company的opengl制作的三维引擎,绘制面较多与弹丸路径模拟较卡顿的问题; 4.测试时,使用的模型为公开模型,基础面数量达到160多万个; 5.测试时,
项目实战:Qt+OSG爆破动力学仿真三维引擎测试工具v1.1.0(加载.K模型,子弹轨迹模拟动画,支持windows、linux、国产麒麟系统) 项目实战:Qt+OSG爆破动力学仿真三维引擎测试工具v1.1.0(加载.K模型,子弹轨迹模拟动画,支持windows、linux、国产麒麟系统) 项目实战:Qt+OSG爆破动力学仿真三维引擎测试工具v1.1.0(加载.K模型,子弹轨迹模拟动画,支持windows、linux、国产麒麟系统)
PasteForm最佳CRUD实践,实际案例PasteTemplate详解(一)
本文将介绍soft.pastecode.cn出品的PasteForm,PasteForm是贴代码使用Dto思想实现的CRUD的一个组件,或者说输出一个思想! 为啥我觉得是最佳的CRUD呢?先结合你的实际项目解答下以下问题: 1.如果有一个系统,有100个表,你的管理端需要多少页面?别和我说100个表
PasteForm最佳CRUD实践,实际案例PasteTemplate详解(一) PasteForm最佳CRUD实践,实际案例PasteTemplate详解(一) PasteForm最佳CRUD实践,实际案例PasteTemplate详解(一)
ModbusRTU通信协议报文剖析
前言 大家好!我是付工。前面给大家介绍了Modbus协议的应用层面。终于有人把Modbus说明白了那么,今天跟大家聊聊关于Modbus协议报文的那些事。 一、真实案例 前段时间有个粉丝朋友,让我帮他解决一个问题。 这个粉丝朋友是负责Modbus主站调试的。 项目背景:这是一个船舶的项目,主站是一个贝
ModbusRTU通信协议报文剖析 ModbusRTU通信协议报文剖析 ModbusRTU通信协议报文剖析