之前无际在网上看了一些老工程师给初学者的一些建议。

其中一个就是新手可不可以直接跳过51单片机学习stm32。

很多老鸟教唆初学者说51已经过时了,建议直接学stm32单片机。

如果新手信了他的邪,能学会才怪!

当他说出51过时的时候,我就知道这个人是个外行。

所以在信息爆炸的时代,如何学会去甄别哪些是对的,哪些是错的特别重要,方向不对毁一生!

我们无际单片机编程团队一直提倡初学者从51开始学习,目的在于让大家能对单片机的原理有一个深入的理解。

51单片机都是通过配置寄存器来控制外设,实际上目前大多数单片机都是这样做的,区别就是寄存器不一样。

当我们懂了其中一种以后,其他的都是大同小异。

一、51和stm32单片机的区别

51单片机

STM32单片机

51和stm32的区别还是挺大的,51是属于低端单片机,stm32算是中高端单片机了,他们面向的产品也不一样,真要区别,一篇文章远远不够。

这里只说对我们开发息息相关的。

1.内核

51是Intel8051的内核架构,而STM32有Cortex-M1/M2/M3/M4/M7这么多内核版本,像我们常用的STM32F1系列就是Cortex-M3的内核。

2.资源

51是入门级单片机,各方面资源都不如stm32,比如说主频、ROM、RAM、IO口、外设资源。

3.开发模式不同

51是直接操作寄存器使用外设,而stm32是直接调用库函数使用外设,相对51开发更加效率。

4.操作系统

51不能跑实时操作系统,而stm32可以跑主流的RTOS。

5.后期维护

51不能升级程序,而stm32可以通过编写bootloader程序来完成后续产品程序升级,如果软件有bug,不需要客户退回,直接升级程序解决。

6.开发环境

51和stm32虽然都可以用keil开发,但是版本不同,而stm32的开发环境也比较多元化,主流的就是keil或者iar。

7.程序架构

如果是资源很紧张的51单片机,产品开发时一般以功能实现为主,不会考虑程序架构可扩展性和可移植性,因为ROM和RAM不允许。

8.难易度

Stm32虽然是通过调库就能把芯片外设用起来,但是开发难度会比51难很多,因为stm32的资源丰富,涉及的技术点就多。

所以,两者厂家对芯片的定位不同,51除了偏向低端产品以外,开发也更接近底层。

而stm32厂家的定位是帮助工程师快速做出产品。

基于这些特点,如果你刚开始就直接去stm32的话,会有很多基础知识的缺失。

导致你学起来比较吃力,很多东西也掌握不透,在学习的过程中会很痛苦,觉得这玩意太难了。

一般有51基础,并且做过一些小项目,学习stm32会快很多。

也不用系统地把所有外设都学习一遍,最好的方法就是通过项目去学习,项目用到什么外设,就相应去看这个外设怎么开起来。

基本上一个项目下来,你就能掌握stm32了,我当初就是这样学会stm32的,我也没去看任何视频教程。

相对教程,我更喜欢找例程,这样更节约时间,有基础的话通过例程你很快就能猜出来改哪些地方代码会有什么样的结果。

其实归根到底就是把它当做一个工具熟悉而已。

stm32和51单片机的区别,先学51还是先学stm32?相关推荐

  1. 小灰的51单片机学习之什么是51单片机(1)

    距离第一次写完这篇文章已经一年半了,这半年小灰也成长了好多好多,感觉很多人朋友想看都不方便这里就整了个目录,今后的岁月里大家一起进步呀! 小灰的51单片机学习之什么是51单片机(1) 小灰的51单片机 ...

  2. 51单片机系列(三)51 单片机游戏设计 —— 双人对战小游戏(石头剪刀布)

    本博客51单片机实训系列,旨在记录本人在大学上单片机技术这门课时所做的课程实训内容,并与大家分享基于51单片的课程作业,如果作业中的某些细节和代码能给大家一点启发那就更好了,希望大家能用51单片机做出 ...

  3. 51单片机计算机实物焊接,基于51单片机的最小系统焊接图 浅谈单片机最小系统...

    本文主要是关于51单片机的相关介绍,并对基于51单片机的最小系统焊接进行了详尽的阐述. 单片机最小系统 单片机最小系统主要由电源.复位.振荡电路以及扩展部分等部分组成. 对于一个完整的电子设计来讲,首 ...

  4. 51单片机 外部时钟_基于51单片机的LCD12864显示模拟时钟

    今天要分享的仿真和程序是基于51单片机的LCD12864显示模拟时钟.公众号之前也分享过数字时钟,但是那些时钟都是采用数字显示的形式来显示时间,而今天分享一个采用LCD12864显示的模拟指针式时钟. ...

  5. 51单片机c语言学习感想,51单片机实训心得体会

    [www.hywsbj.com--心得体会] 单片机实训有哪些心得体会呢?下面是小编为大家收集的资料,欢迎阅读哦. 51单片机实训心得体会 通过为期一周的单片机实训,是我们对这门课有了许多新的了解,弥 ...

  6. 51单片机8255扩展c语言,51单片机8255A扩展IO口

    <51单片机8255A扩展IO口>由会员分享,可在线阅读,更多相关<51单片机8255A扩展IO口(23页珍藏版)>请在人人文库网上搜索. 1.一个芯片可扩展多个并行I/O口 ...

  7. 51单片机c语言工作手册,51单片机C语言编程手册

    51单片机C语言编程手册 1 第一章 介绍 这是一本关于Intel 80C51 以及广大的51 系列单片机的书这本书介绍给读者一些 新的技术使你的8051 工程和开发过程变得简单请注意这本书的目的可不 ...

  8. 51单片机c语言除法符号,51单片机之C语言-4.4运算符及表达式

    原标题:51单片机之C语言-4.4运算符及表达式 4.4 及 前面三节实际是讲如何定义一个数据类型,所谓数据类型其实就是不同存储空间的形状,也就是不同单元格的组合方式.既然定义了数据类型,我们的目的当 ...

  9. 51单片机c语言编程100,51单片机C语言编程100例.doc

    51单片机C语言编程100例.doc 目 录实例3用单片机控制第一个灯亮3实例4用单片机控制一个灯闪烁认识单片机的工作频率3实例5将 P1口状态分别送入P0.P2.P3口认识I/O口的引脚功能4实例6 ...

最新文章

  1. 电脑有回声_电脑麦克属性调整(用于回声消除)
  2. 为了OFFER,花了几个小时,刷下Leetcode链表算法题
  3. 学习 protobuf(一)—— ubuntu 下 protobuf 2.6.1 的安装
  4. 第二章mapper接口 和模糊查询
  5. LiveVideoStack线上分享第五季(四):基于Nginx的媒体服务器技术
  6. python字符串处理函数汇总_Python函数汇总
  7. stack heap java_java中的Heap 和 Stack | 学步园
  8. launchpad不用图标_Launchpad Manager,一款非常方便的启动台图标管理工具
  9. 【回顾】千万级智能推荐系统的架构演进
  10. 第三百一十八节,Django框架,信号
  11. 车牌拍照系统上传服务器,服务器端车牌拍照识别
  12. 联咏Novatek_NT98566(对标Sigmastar SSC337)_IMX335单板_IPC模组开发案例
  13. sigar 监控服务器硬件信息
  14. Git如何保留两地并行开发的提交
  15. 微信开发 JS接口安全域名修改
  16. 我的macOS常用软件清单
  17. linux系统输入数字 求最大值,写函数,输入n个数字输出最大值和最小值
  18. Windows 10 Insider Preview 预览版本19603发布
  19. 中国影视IP制作行业投资规划动态及发展趋向分析报告2022-2028年版
  20. Java栈的使用方法

热门文章

  1. 赫夫曼编码(基于赫夫曼树的实现)
  2. 全网最火的Nacos监控中心——Prometheus+Grafana
  3. 基于TCP的应用层协议、与基于UDP的应用层协议分别有哪些?
  4. 机器视觉关键技术之图像增强技术
  5. 下划线在 Python 中的特殊含义
  6. Leetode算法刷题宝典.pdf
  7. 基于图形剪切的图像分割
  8. python09-魔法方法
  9. Rotate Image
  10. webpack简易入门