什么是单片机?为什么要学习单片机?

news2024/12/27 11:56:56

实现目标

1、熟悉单片机定义、特点、应用场景、发展历史等;

2、理解为什么要学习单片机?怎样学习单片机?


一、单片机是什么?

 1、定义

单片机是集成在一块(单)芯片上的微型计算机。平时我们把 MCU: Micro-Controller Unit,微控制器俗称单片机。

      单片机就是一个集成电路芯片,是一个采用超大规模集成电路技术将具有数据处理能力的CPU,存储器,IO端口,定时器等功能集成到一个硅片上,具有小而完整的微型计算机系统。

2、特点(与计算机对比)

计算机:体积大,功能强,价格高 ,桌面应用

单片机:体积小、实时性强、价格低 ,嵌入式应用

3、应用场景

4、发展历史

二、为什么要学习单片机?

当今社会,应用单片机的产品已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的足迹。单片机使用领域十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等,这些都离不开单片机。

学习单片机的重要性在于,随着科技的发展,智能化产品的需求日益增长,掌握单片机技术不仅能满足社会发展的需求,也能为电子爱好者和工程师提供高薪就业的机会。

三、学习单片机常见问题解答

1. 学单片机编程对数学英语有要求吗?

答:数学会基本的加减乘除就行,英语会认单词a-z就行,很多外行人看到代码里一堆英文就头嗡嗡响,其实不然,只有少数语法是固定的,大多数英文都是工程师自己定义的,比如大神你也可以定义成DaShen(中文缩写)。
那很多人此时就开始质疑,当初这么辛苦学数学和英语到底是为啥?数学和英语不是单片机开发的门槛,但却决定你以后能达到的高度,如果你数学和英语不行,那么月薪20K可能就是你的巅峰了,如果很好,那么上限还有很大的空间。

2. 单片机好学吗?

答:看你怎么学,互联网的好处就是什么资源都能搜集到,相反的也容易迷惑世人,资料太多眼花缭乱让你无从下手,所以 找对一个老师跟着学最好,少走弯路。

3. 没有基础可以自学吗?大概多久能学会?

答:我曾经是自学入行的,什么C语言,什么单片机,什么二极管、三极管、电阻电容等等一窍不通,2011年毕业通过2个月时间自学然后直接从事开发工作。

4. 从学完到月薪过万要多久?

答:我第一份工作是2011年,当时月薪只有1.8K,半年后5K,当时消费水平没现在这么高,房价也便宜,按目前的通货膨胀一线城市目前正常只要死磕1年就能月薪过万,如果能找个人带你会成长地更快。

5.单片机真的像劝退帖子说的工资这么低吗?

答:我看了某乎,某吧,有很多劝退学单片机的,说既要懂硬件,又要会编程,屁事多工资还低。我从事单片机开发近10年,来说句公道话,在之前确实跟纯软件有比较大的差距,但是现在差距越来越小的。我有几个做Java App开发的朋友,同样码龄,但是工资却没单片机开发的高,我身边做单片机开发20K以上的也很多。所以只要有能力,其实薪资并不会低

6. 我适合学单片机吗?

答:如果你没钱、没资源、没技术、每天还从事机械化没前途的工作中浪费青春,又想找一个能够养活自己和家人,可持续发展,能不断为你提供现金流的工作那就合适,抛开兴趣先不说,主要看你现在够不够穷。

四、怎样学习单片机?

答:首先,我们问问自己学这个来干嘛?当然是找工作赚钱!对,这个就是核心, 知道这个道理那我们马上开始实践,打开找工作的相关网站或APP,直接搜索职位:单片机工程师、嵌入式工程师、物联网工程师等。然后看勾选出来公司对这些职位的需求,我们只要找出共同点针对这些需求去学就行了,结合我的经验直接给大家总结从事单片机开发最重要的几个关键字:

  • C51单片机/STM32单片机
  • C语言
  • 能看懂原理图
  • 基本焊接能力

1、学习准备

  • 一台电脑
  • 一套STC52开发板,后期一套STM32开发板/ESP32
  • 教程资料包

2、学习步骤

第一步:学基础电路

数电、模电难的部分可以先不用学,但需要知道电阻电容、二极管、三极管等常用元器件相关的作用就行。如电阻串联分压功能、电阻并联分流功能,三极管的开关条件和基本电路。为后面学单片机做好铺垫。

第二步:学习C51单片机和C语言

C语言和51单片机一起结合着学。比如C语言的for循环知识点,我们可以用流水灯的循环次数来验证。交互学,加深理解。

第三步:学习用AD软件/立创EDA/candence/PADS等

一般公司会配一个硬件工程师和软件工程师,对单片机软件开发来说前期只需要学到原理图设计即可。但是最好能熟练地运用一款AD软件完整地设计出一个PCB。

第四步:用51单片做一个简单完整的项目

学完单片机基础,先用51单片做一个简单完整的项目,比如电子时钟、电子秤等。

第五步:学习STM32和ESP32单片机(进阶)

学完51单片机,可以再选一款性能更好的单片机学习,比如STM32、ESP32。学习GPIO、时钟、中断、Timer、Usart、IIC、SPI、DMA这些常用外设。为以后完成更大更复杂的项目打好基础。


总结

兴趣是最好的老师!!!要想自己以后选择面宽些,那必须得有所付出,技能不会自然而然就拥有的,一定要亲生动手实践才能拥有!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2096689.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

E. Sheep Eat Wolves

https://codeforces.com/gym/104869/problem/E 赛时队友想贪心,贪不了一点,我想了数学办法每次都送固定的发现送过去就不满足了 赛后补,暴力做O(n4) 至少要几次才能把安全所有羊送到对岸去 考虑最短路,bfs,用数组存下所有状态 …

nerf论文代码理解

近年来,生成式AI(AGI)快速发展,各类生成式模型层出不群,但我更觉得具有物理意义的生成式AI将是未来革命性技术。因此也在抽空看看关于三维重建的知识,这篇文章就是记录我对nerf的理解。 一、论文理解 首先,需要知道ne…

车载冰箱的介绍

车载冰箱产业链的上游环节主要涉及制冷模块的研发与制造,这一环节根据所采用的制冷技术不同而展现出各自的特点。压缩机制冷模块和半 导体制冷模块是车载冰箱制冷系统的核心组成部分,它们在设计、材料选择和制造工艺上各有千秋。 车载冰箱的原理图 车载…

HTB-Three(云服务)

前言 各位师傅大家好,我是qmx_07,今天给大家讲解Three靶机 渗透过程 信息搜集 服务器开启了22 SSH 和 80 HTTP服务端口 扫描目录 服务器只有一个image图片文件,ssh 需要账号名密码 绑定域名 进行子域名扫描探测 疑似域名,尝…

中秋之美——html5+css+js制作中秋网页

中秋之美——html5cssjs制作中秋网页 一、前言二、功能展示三、系统实现四、其它五、源码下载 一、前言 八月十五,秋已过半,是为中秋。 “但愿人长久,千里共婵娟”,中秋时节,气温已凉未寒,天高气爽&#x…

支付平台构建支付接口供整个公司调用—支付代理商

一、支付平台一般需要对外开放用于满足一体化平台调用 支付平台提供支付接口具有以下必要性: 1. 拓展业务范围:使各类商家和服务提供商能够接入支付服务,从而扩大支付平台的用户群体和业务覆盖范围。 2. 提升用户体验:为不同的应…

音视频-图像篇(YUV和RGB)

文章目录 一、图像基础概念二、YUV与RGB1.YUV分类方式2.YUV“空间-间”的数据划分1)UV按照“空间-间”的划分方式,分为YUV444、YUV422、YUV4202)YUV“空间-内”的数据划分 3.RGB 三、比较JPG、PNG、GIF、BMP图片格式 一、图像基础概念 像素&…

Python OpenCV 入门指南

引言 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了大量的用于实时图像分析和视频处理的功能。Python 作为一种流行的编程语言,以其易用性和灵活性成为了进行快速原型设计和开发的理想选择。结…

【python2C】排序算法

题&#xff1a;逆序对&#xff08;NXD&#xff09; 对于给定的一段正整数序列a&#xff0c;逆序对就是序列中 a[i]​>a[j]​ 且 i<j 的有序对。 输入格式 第一行&#xff0c;一个正整数 n&#xff0c;表示序列中有 n个数&#xff0c;n<5e5 第二行&#xff0c; n 个正整…

学习之git

github 创建远程仓库 代码推送 Push 代码拉取 Pull 代码克隆 Clone SSH免密登录 Idea集成GitHubGitee码云 码云创建远程仓库 Idea集成Gitee码云 码云连接Github进行代码的复制和迁移GitLab gitlab服务器的搭建和部署 Idea集成GitLabgit概述 一切皆本地 版本控制工具 集中…

读软件开发安全之道:概念、设计与实施15安全测试

1. 安全测试 1.1. 测试是开发可靠、安全代码中的关键一环 1.2. 测试安全漏洞的目的是主动检测 1.3. 模糊测试是一种强大的补充技术&#xff0c;可以帮助我们找到更深层次的问题 1.4. 针对当前漏洞创建的安全回归测试&#xff0c;目的是确保我们不会再犯相同的错误 1.5. 大…

LabVIEW焊缝视觉识别系统

随着自动化技术的发展&#xff0c;焊接工艺也在向智能化和自动化转型。介绍了一种基于LabVIEW开发的自动化焊接机器人视觉识别系统&#xff0c;用于提高焊接质量和效率&#xff0c;特别适用于复杂或危险环境下的操作。 项目背景 在传统焊接工艺中&#xff0c;焊接质量和效率受…

linux 文件管理命令

Ctrl h, 在对应的文件夹路径下显示文件内容 2.“~”、“/”、“./”分别代表什么&#xff1f; https://blog.csdn.net/shuaiqidexiaojiejie/article/details/132563658 2.1&#xff0c;“~”表示主目录&#xff0c;也就是当前登录用户的用户目录 cd ~, 表示返回到Home目录 2.2…

使用 GZCTF 结合 GitHub 仓库搭建独立容器与动态 Flag 的 CTF 靶场以及基于 Docker 的 Web 出题与部署

写在前面 关于 CTF 靶场的搭建&#xff08;使用 CTFd 或者 H1ve&#xff09;以及 AWD 攻防平台的搭建&#xff0c;勇师傅在前面博客已经详细写过&#xff0c;可以参考我的《网站搭建》专栏&#xff0c;前段时间玩那个 BaseCTF&#xff0c;发现它的界面看着挺不错的&#xff0c…

esp8266根据httpserver状态,调用网络唤醒,实现一键开机

esp8266根据httpserver状态&#xff0c;调用网络唤醒&#xff0c;实现一键开机 一.开发板程序二. 服务端三.服务端状态变更 一.开发板程序 #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> #include <WiFiUdp.h> #include <ArduinoJson.h>/…

C语言深入理解指针1

1. 内存和地址 1.1内存 内存空间如何高效管理?把内存划分一个个的内存单元&#xff0c;每个内存单元的大小取一个字节一个比特位可以存储一个2进制的位1或者0&#xff0c;那么一个内存单元可以放8个比特位&#xff0c;每个内存单元都有一个编号&#xff0c;有了内存单元的编…

Golang | Leetcode Golang题解之第389题找不同

题目&#xff1a; 题解&#xff1a; func findTheDifference(s, t string) (diff byte) {for i : range s {diff ^ s[i] ^ t[i]}return diff ^ t[len(t)-1] }

自然美景短视频素材哪里找?9个美景视频素材库网站分享

你是否曾被窗外的落日余晖震撼&#xff0c;或是被雄伟的山脉和蔚蓝的大海深深吸引&#xff1f;想要分享这世界的美好&#xff0c;却苦于没有合适的视频素材&#xff1f;今天&#xff0c;就让我带你探索那些充满自然韵味的素材宝库&#xff0c;帮你捕捉和分享自然的美丽&#xf…

Linux下安装MySQL8.0

一、安装 1.下载安装包 先创建一个mysql目录&#xff0c;在将压缩包下载到此 # 下载tar包 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz等待下载成功 2.解压mysql8.0安装包 tar xvJf mysql-8.0.20-linux-glibc2.12-x86…

sqli-labs第五、六关详解

第五关不同于前面四关&#xff0c;涉及到盲注 首先看看是字符型注入还是数字型注入 用单引号闭合后&#xff0c;and 12无回显&#xff0c;说明字符型注入&#xff0c;接下来就要靠猜了&#xff0c;首先猜数据库长度是多少 长度为8的时候&#xff0c;正常回显&#xff0c;所以数…