0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机新手学习的4个误区

dytfki8u8yql 来源:电子技术控 作者:电子技术控 2022-12-14 11:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在刚接触单片机的初期,有许多人认为单片机非常难学,有太多的指令,太多的语法,还要会硬件,其实这些都不是问题,下面和大家聊聊,学习单片机,有哪些误区?如何走出这些误区?

误区1:51单片机入门简单

51单片机入门简单?我对于这个观点持保留意见。想要入门51单片机,我不仅熟悉该款单片机外设,而且还要充分了解寄存器的某位的意义。对于时钟定时器的配置必须了如指掌。这样无疑会增大我的学习难度与熟悉的周期。如果我们使用32位单片机的库函数模式,我们只需要具备C语言的知识,了解API函数,直接看已经注释过的寄存器意思即可,不需要了解其底层的硬件实现,更不需要了解某个寄存器某个指定位的意义了。这样,减少了我的工作量,从而降低了开发难度。你说是51单片机入门简单,还是32位Cortex内核微处理器简单?

误区2:51单片机的成本低

我是一个务实的人,正做过一个产品就知道,成本核算也要站很大一块。举个例子我之前做了一个多轴数控设备,先不谈算法的事如果你用树莓派去做,同样的功能一个树莓派的板子可能要200元,如果用stm32做自己画板子30块就能搞定,要是你做产品你会选哪种方式呢。

成本都是左右应用的主要因素。项目的立项主要考虑成本,销售的定价主要成本。低成本的方案才会在市场里占有优势。可是,51单片机真就是最低成本了吗?非也。现在按照功能划分,部分Cortex-m0系列的32位单片机的成本也能做3元人民币。其性能已经是51单片机的好几倍了,而且更容易开发与维护。

还有另外一个成本:开发难度成本。51单片机不支持在线调试,有一些问题在编程初期没有发现,只有与硬件连接后才会显现出现来,例如控制操作中经常用到的延时。这时在线调试的巨大优势就体现出来了,它可以极其方便的查看微处理器当时的状态,使得问题的分析变得简单而透明。从而,有效降低开发的难度,缩短开发周期,节约开发资金。

误区3:51单片机可以学习寄存器的操作

寄存器不用死记硬背,有着10年老鸟经验的我,连一个寄存器都记不住。需要配置寄存器的时候,直接在网上或者书本上参考别人现成的配置程序是上策,查找芯片数据手册是中策,死记硬背寄存器是最最下策。

e8d661b2-7b2b-11ed-8abf-dac502259ad0.jpg

51单片机可以学习寄存器的操作,这一点儿是不容置疑的。我们分析一下其更深层的原因。在MSC-51单片机的编程环境中,最初是以汇编语言为主要编程语言。要知道汇编语言就是直接操作寄存器的,汇编语言是无法做到C语言的函数调用与封装的。如果说51单片机是以操作寄存器为优点,我觉得更应该说51单片机操作寄存器是一种无奈,是只有一个选项的选择题。

笔者在这里也想举一个示例来说明寄存器操作的步骤,但是操作寄存器实在是太复杂了,笔者不想去浪费时间去整理了。

e8e7df64-7b2b-11ed-8abf-dac502259ad0.jpg

误区4:c语言需要学完。

通俗易懂的C语言,方便移植的C语言与硬件平台相对应的编译器联合,就能完成硬件的操作。有了简单、方便的方式,我们为什么还要考虑繁琐,复杂的汇编语言与寄存器操作呢?

e9140e0e-7b2b-11ed-8abf-dac502259ad0.jpg

你不用学指针,你不用学带形参的函数,你不用学结构体,你不用学宏定义,你不用学文件操作,你也不用死记繁琐的数据类型。你只要会:

5条指令语句switch语句,if else语句,while语句,for语句,=赋值语句。

7个运算符+,-,*,/,|,&,!。

4个逻辑关系符||,&&,!=,==。

3个数据类型unsigned char, unsigned int, unsigned long。

3个进制相互转化,二进制,十六进制,十进制。

1个void函数。

1个一维数组code(或const) unsigned char array[]。

那么世界上任何一种逻辑功能的单片机软件你都能做出来。

单片机的学习是非常枯燥而又有挑战性的事情。由干与实际的硬件直接连接,不仅要考虑编写的正确性,而且还要考虑硬件的可靠性。这时,简单、高效的软件编写就变向的降低我们开发难度与风险。51单片机已经是明日黄花向前看才是发展。也许是时候向51单片机说再见了!

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 51单片机
    +关注

    关注

    278

    文章

    5716

    浏览量

    135092
  • 定时器
    +关注

    关注

    23

    文章

    3373

    浏览量

    124500
  • 编程语言
    +关注

    关注

    10

    文章

    1965

    浏览量

    39864

原文标题:单片机新手学习的4个误区

文章出处:【微信号:电子技术控,微信公众号:电子技术控】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    单片机必掌握|20经典设计电路,看看有没有你不会的

    不管是单片机入门、项目实战还是求职面试,经典电路设计都是硬核基本功!整理了单片机一定要吃透的20经典设计电路,新手查漏补缺、老手温故知新,速码自查1、TYPE-C接口充电电路2、AD
    的头像 发表于 03-26 20:02 179次阅读
    <b class='flag-5'>单片机</b>必掌握|20<b class='flag-5'>个</b>经典设计电路,看看有没有你不会的

    嵌入式单片机开发学习路径

    的基本结构和工作原理。过去很多大学都是从51单片机开始学习,目前也有很多高校直接从STM32开始学习了。不管哪种方式,都能帮助你快速认识单片机,尤其是点亮第一
    发表于 02-09 15:42

    新手单片机,主要是玩,学什么好?

    如果你是新手想学单片机,主要是为了玩,那我真心推荐从microbit入手。第一,玩起来特别简单。不用费劲装什么专用软件,直接打开浏览器就能用MakeCode在线编程,连下载都省了。
    的头像 发表于 01-21 16:37 808次阅读
    <b class='flag-5'>新手</b>学<b class='flag-5'>单片机</b>,主要是玩,学什么好?

    学习单片机快速方法

    单片机,控制单片机管脚输出的高低电平,从而你可以控制其他模块。这就实现了自动控制。我需要怎样的控制,我就写怎样的程序就可以了。 接下来介绍单片机学习流程。有的人学了两年才学会。有的
    发表于 01-14 07:42

    单片机的入门准备

    基础,学习单片机就只要花几周的时间就能上手。但学习单片机时,主要从单片机的寄存器开始,其中特殊功能寄存器是重点,学会之后,就可以
    发表于 12-22 07:39

    单片机和嵌入式,到底是什么关系?

    很多人初次接触嵌入式开发时,都会听到一句话:“嵌入式其实就是单片机。”可当你真正开始学习时,会发现嵌入式和单片机虽然经常“捆绑”在一起提,但它们好像又不是一回事。这篇文章,我们就来厘清这两
    的头像 发表于 11-14 10:28 2070次阅读
    <b class='flag-5'>单片机</b>和嵌入式,到底是什么关系?

    单片机误区

    与软硬件接口bug的能力,内部结构和寄存器数量及难度都是一新手可以接受的范围,慢慢就认识了单片机 如果对这块基础的缺失会导致你后面在学习过程中,每学到一
    发表于 11-14 07:46

    第1章如何学习单片机(1.3 1.4)

    1.3单片机学习的准备工作 1.足够的信心、恒心和耐心 有同学问我,单片机这门技术难不难。这个问题得从两方面去分析。 首先,从战略上藐视它。那么多同学跟着老师学一段时间就可以做出来小
    的头像 发表于 10-10 10:36 640次阅读
    第1章如何<b class='flag-5'>学习</b><b class='flag-5'>单片机</b>(1.3 1.4)

    第1章 如何学习单片机

      在错误的道路上日夜兼程,最终也无法成功,方法和思路绝对是最重要的。本章节讲到的学习单片机的方法,都是作者学习单片机的无数经验和教训总结出来的瑰宝。通过作者前面的披荆斩棘,开辟了道路
    的头像 发表于 10-10 10:32 662次阅读

    单片机:一承载科技与工程思维的核心平台

    ,还是工业自动化、嵌入式系统,单片机都扮演着不可或缺的角色。它不仅仅是一芯片,而是承载着技术与工程思维的核心平台,其重要性不言而喻。 一、单片机的核心要素 单片机的核心要素主要包括以
    的头像 发表于 09-29 01:07 709次阅读

    开发单片机需要学习什么?软件编程的 4 关键层次

                        开发单片机需要学习什么?软件编程的 4 关键层次 单片机的 “智能” 全靠软件实现,编程技能需从基
    的头像 发表于 08-25 11:32 1072次阅读

    如何使用单片机直接输出4-20mA?GP210高集成方案。

    如何使用单片机直接输出4-20mA?GP210高集成方案。
    的头像 发表于 08-15 17:30 1449次阅读
    如何使用<b class='flag-5'>单片机</b>直接输出<b class='flag-5'>4</b>-20mA?GP210高集成方案。

    怎么测单片机系统频率

    单片机系统频率是指单片机工作时的时钟频率,它直接影响单片机的运行速度和处理能力,准确测量系统频率对单片机应用开发、程序调试和性能优化具有重要意义。测量
    的头像 发表于 07-25 11:39 1072次阅读

    单片机怎么驱动电机?

    在各类自动化设备和智能装置中,电机是重要的执行部件,而单片机作为控制核心,需要通过特定的方式驱动电机运转。单片机驱动电机并非直接连接即可,而是要根据电机类型和功率,搭配合适的驱动电路,才能实现稳定
    的头像 发表于 07-25 09:31 1290次阅读

    单片机怎么烧程序

    单片机烧程序是将编写好的程序代码写入单片机内部存储单元,让单片机按照预设逻辑工作的过程,是单片机应用开发中不可或缺的环节。无论是简单的灯光控制程序,还是复杂的工业控制算法,都需要通过烧
    的头像 发表于 07-23 11:47 1973次阅读