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单片机
    +关注

    关注

    274

    文章

    5702

    浏览量

    123492
  • 定时器
    +关注

    关注

    23

    文章

    3246

    浏览量

    114720
  • 编程语言
    +关注

    关注

    10

    文章

    1942

    浏览量

    34707

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

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

收藏 人收藏

    评论

    相关推荐

    十天学会单片机可能吗?单片机入门需要多久?

    学习单片机的过程,就像学习任何其他技能一样,不仅在于书本上的知识,更在于实践和应用的能力。许多人可能会问:十天能学会单片机吗?答案是:可以,但这取决于你所定义的“学会”到什么程度。首先
    的头像 发表于 09-05 08:00 1001次阅读
    十天学会<b class='flag-5'>单片机</b>可能吗?<b class='flag-5'>单片机</b>入门需要多久?

    新手如何学单片机

    学习电子基础知识:了解电压、电流、电阻等基本概念,以及它们在电路中的作用。 学习计算机体系结构:理解计算机的基本组成和工作原理,包括CPU、内存、输入输出设备等。 学习编程语言:单片机
    的头像 发表于 08-28 09:18 466次阅读
    <b class='flag-5'>新手</b>如何学<b class='flag-5'>单片机</b>

    暑假如何学习单片机

    暑假是学习和掌握单片机基础知识的良好时机。以下是一关于如何在暑假期间学习单片机的建议计划
    的头像 发表于 07-03 09:19 514次阅读
    一<b class='flag-5'>个</b>暑假如何<b class='flag-5'>学习</b><b class='flag-5'>单片机</b>

    单片机学习顺序问题

    朋友们,我最近要做一基于单片机GD32系列的项目. 打算先用STM32系列的单片机先试试手. 但目前也就学了些模电数电的知识.了解了一部分单片机的模块知识. 没学过c语言,也从来没用
    发表于 05-18 20:36

    stm32单片机学习路线

    STM32的寄存器编程可以帮助你更深入地了解单片机的工作原理和底层操作。通过编写简单的程序,控制LED、读取按键等基本操作来加深理解。 5.学习HAL库和CubeMX:HAL库是STM32提供
    发表于 05-10 15:34

    理解嵌入式和单片机的区别

    从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。比如经典的51系列单片机,外观只是一块一拇指大小的长方体芯片
    发表于 05-03 10:30 4308次阅读

    单片机学到什么程度可以找工作?

    找到工作,您需要达到一定的学习程度和技能水平。我们今天就来说一说究竟怎样才能算是可以去找工作了。一些关于单片机学习程度和就业能力的建议了解单片机的基本原理,包括内
    的头像 发表于 03-28 08:04 1560次阅读
    <b class='flag-5'>单片机</b>学到什么程度可以找工作?

    单片机开发好学吗?学习中有哪些乐趣与挑战?

    一提到单片机学习大家都会觉得难学,事实真的是这样吗?今天就来探讨一些单片机学习的那点事儿。对于许多初学者来说,刚开始接触单片机编程可能会感到
    的头像 发表于 03-28 08:04 1902次阅读
    <b class='flag-5'>单片机</b>开发好学吗?<b class='flag-5'>学习</b>中有哪些乐趣与挑战?

    新手学习单片机最常见的六大误区

    最近看到台私信要资料的同学比较多,想必大家都是对单片机有着浓厚的学习兴趣,但是很多新手开始入门单片机的时候都会遇到一些学习
    的头像 发表于 03-28 08:03 842次阅读
    <b class='flag-5'>新手</b><b class='flag-5'>学习</b><b class='flag-5'>单片机</b>最常见的六大<b class='flag-5'>误区</b>!

    如何系统、科学地自学单片机

    很多初学者都会面临这个问题,我想学习单片机、我也想学好单片机、我也想系统地学习单片机,但是单片机
    的头像 发表于 03-28 08:03 1067次阅读
    如何系统、科学地自学<b class='flag-5'>单片机</b>?

    fpga和单片机谁更难学

    FPGA和单片机各有其学习难度,具体哪个更难学,很大程度上取决于个人的专业背景、学习目的和兴趣。
    的头像 发表于 03-27 14:28 1027次阅读

    学习RISC-V单片机的感想

    从开始学习单片机开始,就没有在单片机总线方面的知识投入什么精力。觉得就是为了应用开发,没必要了解底层架构方面的知识。 现在可以选择的单片机种类有很多,从最早的51
    发表于 02-17 21:00

    微处理器与单片机的区别 单片机进阶学习技巧

    微处理器只是一CPU,而单片机则是由CPU与其它的接口电路组合而成的,所以CPU不等于单片计算机。也可以这样说,CPU只是计算机其中的一部件而已。
    发表于 02-02 14:30 2296次阅读

    基于单片机控制的交通灯设计

    本课程设计是在学完单片机原理及课程之后综合利用所学单片机知识完成一单片机应用系统设计并在实验室实现。
    的头像 发表于 01-22 15:31 2045次阅读
    基于<b class='flag-5'>单片机</b>控制的交通灯设计

    HC6800-ES V2.0单片机开发板学习指南

    电子发烧友网站提供《HC6800-ES V2.0单片机开发板学习指南.doc》资料免费下载
    发表于 01-07 09:48 13次下载