设计与开发

单片机和stm32 简述单片机和FPGA的区别

小编 2024-11-24 设计与开发 23 0

简述单片机和FPGA的区别

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。用一句话描述就是麻雀虽小五脏俱全,可以说是一个微型电脑,而它所执行的命令就是你所写的程序。

FPGA即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。简单来说为可用电脑编译的数字逻辑芯片,而你所写的代码其实是在描述一个数字逻辑电路。

两者差别最大的是运行速度,由于后者是硬件电路,所以其速度直接取决于晶振,所以它具有运行稳定,抗干扰性强,适用于高速运行电路。

在学起来的单片机相对来说会容易很多,价格也较便宜,一些基本的算法几乎都能满足,部分单片机系列运行速度高达300M(51但单片机12M左右),再加上ARM芯片的发展,很多需要高速运行的部分都会用到,像图像处理传输等。

STM32

单片机入门不是很难,网上有很多家销售,并带有配套视频,编译语言也是我们熟悉的C语言,只要比这教程去学,学会是不会很难,硬件要求也不是很高,由于单片机学起来比较容易,所以有很多朋友从STM32开始学习,这也是可以的。

但FPGA就相对来说就难很多,由于其编译语言为Verilog,这个语言一般接触不到,但如果你有编程基础,相对来说还是容易点,现在网上也有销售的,但不是很多,资料也不是很全,目前只有部分配套教材视频,但赠送的资料还是能够让你入手,学的深度这得看个人了,至于FPGA网上也有销售,给大家推荐一款FPGA开发版,价格比较合理,有了合理的开发版和配套资料学起来就容易多了。

FPGA

再深入说一下单片机:单片机是一个微型计算机,和PC相比增加了IO口,由于其体积小,所以增加了携带便利性和学习性,同时学习单片机还可以学习硬件知识。单片机也可简单理解为在小电脑上写程序,其思路也跟电脑编译相似,也同样追求算法的效率和稳定性,对于在校大学生来说,如果经常参加一些电子类比赛那么STM32是必须要学的,像知名度比较高的全国大学生电子设计大赛还会要求使用MSP430。

FPGA由于是以硬件描述的语言,所以学起来需要一定的硬件基础,在使用中还有要求会一些电路设计,经过简单的综合与布局,快速下载到开发版上进行测试是现代IC设计验证主流,在大多数FPGA中、这些可编译元件也包含记忆元件,设计师可以根据可编程的连接把FPGA内部逻辑块连在一块,就像一个电路放在一个芯片里。通常情况下FPGA运行速度要比ASIC速度要慢,因此同样的功能,在个头上要比后者大,除了这些还具有比较差的可编译性。

十年老鸟告诉你,51单片机和STM32怎么选择?

十年老鸟告诉你,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简单的多得多,更适合刚入门的小伙伴!

相关问答

stm32和 51 单片机 有什么区别?

STM32和51单片机是两种常见的嵌入式系统开发平台,区别如下:1.架构:STM32系列采用了现代化的ARMCortex-M内核架构,具有强大的处理能力和丰富的资源,支持高...

有啥 单片机 stm32 更快的?

51和STM32都属于单片机,51单片机使用51内核,STM32使用ARM内核。FPGA不属于单片机,但是这三者都具有IO。单片机执行程序是顺序执行的,而FPGA可以并行执行。FPG...

PLC和 STM32 不同是什么?-ZOL问答

STM32是一款性能更好、编程更灵活的嵌入式应用芯片,而PLC(可编程逻辑控制器)在编程上相对不够灵活。另外,在现场环境下,考虑到稳定性和抗干扰能力方面,STM32相...

STM32单片机和 51单片机差别大吗,有那些差别,最好可以举例说明一下,谢谢?

他俩的区别就像是手机和大哥大。除了都属于单片机之外,没有什么共同点。32无论是IO控制,还是定时器等内部资源,都要比51复杂很多,也强大了很多。C语言编程的...

STM32 是什么,是32位的 单片机 吗?

STM32是一款普通的单片机,一款能够让普通工科学校的孩子吃上饭的单片机。1、嵌入式软件工程师的一个方向,就是对STM32进行编程。一般谈起嵌入式,首先想到的...

stm32单片机和 stc89c51?

stm32与stc89c52根本就不是一个档次的东西,无法比较区别,就好比自行车与飞机比区别。相比之下也不好谈优缺点。主要看你打算做什么。STC89C52就是普通的51单片...

stm32 的程序可以用51 单片机 实现嘛?

相应的功能是可以用51单片机实现的,但stm32的程序和51单片机是绝对不能通用的,主要原因有三点:第一,STM32是32位,而51是8位,所以程序变量的定义是不一样...

gd32与 stm32单片机 软件通用吗?

基本上只需少量调整就可以通用。毕竟GD自己的FAE都承认就是照着ST依葫芦画瓢的,凭借闪存累积的经验和渠道,通过价格抢市场……基本上只需少量调整就可以通用...

xs128 和stm32 两种 单片机 分别有哪些优势?用起来有什么区别? -...

xs128是16位机,stm32是32位单片机,如果有51基础的话,建接学stm32,xs128其实16位单片机,速也比51多,抗干扰这方面比较好,但其实和51的用法差不多,会5...

现在学哪款 单片机 好?51, STM32 。各品牌 单片机 的优缺点?

51简单便宜,stm32火热,avr高速,pic可靠,arm强大,每种单片机都像美女一样,有着她独特的魅力,在不同的领域中,有着广泛的应用。最强大的当属arm,从最开始...51...

猜你喜欢