网站首页 > 开源技术 正文
十年老鸟告诉你,51单片机和STM32怎么选择?
初中辍学进厂,边工作边自学单片机,各种单片机实战项目,也是零基础学的stm32,应该还是能给你一些建议。首先理解为什么叫嵌入式?单从电路板硬件上看,是将串口、以太等控制芯片集成到CPU内,或者做成模组的形式;从软件上看,就是将业务程序和操作系统一起烧录到ROM中去。嵌入式系统可以分为三个就业方向:硬件、驱动、嵌入式操作系统及其上层业务。下面详解。
硬件工程师所作的工作一般包括PCB电路板的设计,FPGA硬件编程等,根据具体产品需求给出制板方案,要求对模电数电比较熟悉。
做硬件驱动开发需要极为熟悉芯片硬件特性,具体的有音视频,GPU,WiFi蓝牙等通信模组。
广泛的嵌入式开发包括DSP信号分析处理和RTOS嵌入式操作系统,一般互联网业内特指嵌入式操作系统。随着当前大部分产品都开始搭载Linux/Android系统,从事这方面工作要求对基本的数据结构、操作系统任务调度与内存、网络协议栈等知识比较熟悉,还是前面说的那句话,不要花过多精力在系统环境高级配置上面,这个属于一次性知识,不具备迁移性的。对于硬件知识、寄存器读写、蓝牙等链路层协议也不要花过多精力去研究,从事这块领域的薪水都没什么竞争力。
首先是结合理解学习透彻,然后现在很多大厂小厂都花很多财力发展物联网智能家居等业务,可以重点把TCP/IP协议栈的实现原理和标准协议理解透彻,对后续转行互联网从事服务端后台开发很有好处。
说到以C51等单片机入门是否适合,实际开发产品的时候,不同的产品选择的单片机都不一样,不可能你51单片机能实现的你去选择STM32。
还有很多单片机你可能听都没听过,只是单一去了解一款单片机,太浪费时间。
现在随便一款单片机,原厂的配套资料都很详细了,所有外设资源的例程都会给你,还有配套文档+技术支持,新进厂的员工,都能很快使用起来。
所以,新手其实重点是把单片机和基本协议(SPI、IIC、USART)基础打好,对单片机有一个系统的认识就行了,而不是追求性能强的芯片。
51单片机基本是通过配置寄存器去使用它的外设的,而STM32根本不需要你接触寄存器,直接调用库函数就能把外设开起来。
两个芯片的开发存在比较大的差异,你用起很愉快,但是一但出问题,啥也不是。
连排查问题的入口和方向你都找不到,更别说解决了。
这就是基础知识不牢固导致,你的理解永远是在应用层面,而不是核心基础。
如果你用51单片机去做4 5个项目以后,再进阶到STM32,就完全两种不同概念,完全可以手到擒来。
我们华维单片机编程在这里为大家准备了一些单片机的一些基础课程,对想入门单片机是同学会有一定的帮助。
因为做单片机开发核心的东西你基本也熟悉了,这里说的核心除了你单片机基础比较扎实以外,还有一个更重要的。
就是你的项目思维和代码整合能力,代码水平另说,水平不管好坏在51单片机面前都能实现产品功能。
一句话,程序复杂性来说,51单片机比STM32简单的多得多,更适合刚入门的小伙伴!
- 上一篇: C51单片机 16-4 指针和内存单元的解释
- 下一篇: 九、c语言学习难点之指针
猜你喜欢
- 2025-08-02 编写汇编语言常见错误分析
- 2025-08-02 HC89S003P 20引脚8位ADC型FLASH单片机
- 2025-08-02 基于51单片机的万年历
- 2025-08-02 基于AT89S51单片机接口电路的时序仿真研究
- 2025-08-02 MON-51单片机仿真器使用手册
- 2025-08-02 重要提醒,单片机发展史,它到底是一个什么东西
- 2025-08-02 keil软件是干嘛的?keil软件怎么用?
- 2025-08-02 51单片机多机通信系统实现方法
- 2025-08-02 红外遥控发射程序,stc红外遥控c51程序,智能家居控制
- 2025-08-02 三相异步电机点动控制改造成西门子PLC程序
你 发表评论:
欢迎- 08-032025年Linux可视化面板深度评测:从新手到企业级维的全能工具
- 08-03自学学习网络安全,渗透测试的环境搭建总结
- 08-03夏日“打卡”:一场集体“情绪漂移”的实验?
- 08-03PHP 8.3 JIT 深度优化:让图像处理性能超越C++(附压测数据)
- 08-03「推荐」收藏过千,给新手的7个入门php实战项目
- 08-03PHP内存池分析
- 08-03PHP 性能分析与实验——性能的宏观分析
- 08-03空开上的DZ47是什么意思?6000A是什么电流?
- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)