单片机初学者建议选择ST公司的stm32系列板子,推荐正点原子、野火、安富莱的板子,选择stm32的原因是,该系列单片机国内使用人数最多,网上的资料最全,国内企业里用的也是最多的。初学者学习过程中遇到问题也相对容易得到解决。
如果是为了做真正的好产品,只有飞思卡尔(老摩托罗拉半导体)的产品可以相信。
这个要因人而异了,主要是看你是什么专业的,因为背景知识和应用目的不一样,所以适合入门的单片机也不一样。。
答主在十多年的嵌入式软件开发经历中,可以说用过了很多开发板。也在工作之余,通过利用个人的开发板进行了很多小产品的开发。在这个过程中,也形成了个人购买开发板的一些标准。看到这个问题,先和朋友们分享一下如何选择一款好的开发板,然后根据个人的经历向题主和对单片机感兴趣的朋友推荐几款比较好用且性价比很高的嵌入式MCU开发板。
第一,如何选择一款好的开发板?
打开某宝的网站,输入单片机MCU开发板,你会发现很多的商家和很多的产品。如此眼花缭乱的选择
,我们该如何做呢?答主个人是按照如下的标准进行的选择:
1、板子质量如何?一般来说,多看看买家的评论,或者来看看过来人经验。
2、硬件配套资料是否齐全?很多人可能有疑惑,搞单片机软件开发要硬件资料干啥。
殊不知STM32系列单片机,有端口重映射的功能,所以一份详尽齐全的硬件配套资料是必须的。
3、软件示例代码是否齐全,配套说明是否完备?同样,多看看买家评论和过来人的建议。
4、是否有常用的配套软件附赠?比如常用的编译软件下载工具等,可以免去你满网下载软件的痛苦。
5、开发板是否有预留外扩接口和功能?很多卖家出于成本考虑,并未过多将全部GPIO引脚引出。
如果后续你需要扩展开发,那么将全部GPIO引出的话,就非常适合后续的扩展开发。
6、售后的口碑如何?一定选择售后口碑较好的卖家。
第二,性价比高的卖家和实验板?
这里,答主将自己比较喜欢也使用过的几家推荐给大家。淘宝上的正点原子,野火,逐飞科技这三家都是我比较认可的。其中,我自己就正在使用两款开发板:正点原子精英板,正点原子探索者开发板。野火和逐飞我一般都是买的摄像头,超声波测距,红外探头等散装件。
答主手里正在使用的精英板和GSM模组
为啥选择原子家呢?因为他家实验板质量不错,资料非常齐全,还有自己一直运营的网络论坛。有什么技术问题,可以和广大单片机爱好者及卖家团队交流心得和问题。可以说,是售后服务做得最好的也是最成功的。
感谢您的阅读,我是EmbededDream。一个专注于嵌入式软件开发,关注职场发展的国企人。
还是先从51开始比较好,可以对单片机有一个很深的认识,先了解系统结构(ALU、ROM、RAM、GPIO等),然后是引脚封装形式,最后指令系统(汇编指令还是要了解一下的,看看启动代码,里面有系统初始化设置,实际应用很重要的),51的话推荐普中科技的板子。
如果没有基础的话,建议还是从51开始吧。51系列资料多,容易学,可以纯软件仿真。学习51能对嵌入式系统有个初步的认识,了解嵌入式系统原理,了解各种外设的原理及使用方法。51学好了以后再学高级一点的比如ARM7/ARM9会轻松很多。另外考虑就业的话,就学习一些流行的MCU,比如STM32,AVR等。
不知道所谓的单片机初学者其他基础怎么样,会不会C,会不会汇编,会不会算法和编译原理,电路方面功底怎么样。
没太接触过别的单片机,控制电机时候用过TI的TMS320F28335,感觉用的很好,运算能力强,外设接口也多,浮点数计算快,哈佛总线blablabla。市面上配套的教材也很多,里面各种外设的逻辑电路图很清晰,TI的技术支持也很好(这个大赞)。书里也里面也讲了怎么做最小系统板,可以自己画。最小系统板还是自己设计的好,之前别人用过STM32的最小系统板,给的文档里面原理图都看不清。而且配套的CCS环境可以直接看汇编,方便程序优化和时间计算。
学习的话要从51单片机学习,然后再到stm32,因为51单片机简单更容易让你明白单片机工作的原理,现在那些使用stm32的人都是使用官方提供的库,很多人都不明白寄存器的,还美美而谈的说自己会stm32比51的牛逼,都是让他们用寄存器编写,有几个人能写的出来?他们只不过只会调用别人写好的封装而已,写出来的占用的内存比用寄存器编写的大的多了,会用寄存器编写的才是牛,只会调用库的就是小学生都会调用!
个人首推入门采用8051内核的单片机
具体厂商有Atmel、宏晶科技(STC)原因如下:
51单片机具有悠久的历史,并且至今还未淘汰,发明公司正是大名鼎鼎的Intel.
很多高校开设单片机原理,采用的就是51单片机或采用51内核的单片机。
51单片机内部结构较为简单,配合教材容易理解。
51单片机可作为单片机汇编指令的入门。若有兴趣成为一名硬件工程师,汇编语言的掌握必不可少。
制作小项目已经足够。
具体的学习可以为
51单片机→15单片机→stm32
其余的单片机还有
15单片机
stc出品的单片机,采用8051内核,通俗地可理解为增强型51单片机。
arduino
arduino是一块开发板的名称,采用的单片机为atmega328,由Atmel推出,偏向于玩具,开发环境很友好,外部设备的函数较为齐全。
TMS320f2833x
德州仪器(TI)出品的高级单片机,采用C28x内核,特点是可以进行浮点运算,可做快速傅里叶算法(参考课程数字信号处理),主要应用于电机方面。
STM32
由意法半导体出品的高级单片机,主流单片机之一,采用ARM架构,内核为Cortex.功能强大。
以上,若有错误,欢迎评论区指正
(*σ´∀`)σ
Arduino-&;51-&;stm32
既然是初学那兴趣就非常重要,要学的有乐趣,个人感觉如果没有任何基础的话最好是从51开始,因为51单片机外设控制相对简单,资料也非常多,还比较贴近底层寄存器,对以后提高非常有帮助,可以选择一本合适的教程从gpio开始一步一步学习,如果感觉自己是个比较有恒心毅力的人可以在学的过程中多关注一下实现原理。如果是个急性子那就以实现功能为主,先培养乐趣获得成就感,别被枯燥的原理给吓退了,很多人说从STM32开始,我看到题目的时候我也觉着要从STM32开始,因为STM32用KEIL5开发环境也很容易搭建,现在让我去用一个单片机实现功能我也首选STM32来做前期驱动调试,这是站在我们嵌入式工程师角度上的,但对初学者来说STM32外设及开发环境还是太过复杂,寄存器开发难度很大,库开发又太过抽象,而初学的目的在于会用,初晓原理,51简单够用,学习正好。至于说以后51会被淘汰这类的说法我真的不敢苟同,单片机只是工具,甚至外设驱动都只是工具,核心的是你上层应用算法,而这个算法只要考虑到了兼容性,健壮性,移植到任何单片机上都是可以的,STM32无非就是比51性能更高,资源更丰富,然后外设驱动方式不一样。真正做项目的主要会从成本,芯片资源,稳定性这三个方面选择单片机。
建议首先学习Arduino单片机,或者51单片机,最好是先学习Arduino单片机。
Arduino单片机学起来比51单片机简单,我是过来人,大一上学期我学习了51单片机,下学期我学习了Arduino单片机。Arduino的库特别全面,官网
p>,可以说几小时就能入门,大部分函数都被写好了,直接调用就行。它的IDE是免费的,可以从上面的官网免费下载。建议买一个Arduino套件,下面这个套件是我玩过的,里面的模块我几乎都玩过,用起来很简单,这个盒子看上去已经有些陈旧了。
Arduino教程很多,光上的教程就很多,初学者可以跟着学一下。
51单片机用的越来越少了,我大一上学期用过,不是很好用。我记得很清楚,当时这个盒子花了我29元,用它能学会使用LED、按键、数码管、蜂鸣器、LCD1602、扬声器、电动机,别的就没了。
当时还买过单个的51单片机芯片,焊接在洞洞板上,设计一个简单电路,焊接上了许多LED,一个耳机喇叭,能播放《天空之城》。
2.有一定的单片机基础后,建议学习STM32单片机(最好是正点原子的,我可没收他们家的钱给他们打广告啊)。
不久前我买过STM32F407开发板,质量很好,确实值那个钱(官方标价408元,买下来花费340元左右),STM32单片机很强大(接上一些外设,打电话、发短信、看视频、拍照、录像没问题),得学习很久。
和它家单片机开发板配套的视频教程、文档资料可以在正点原子官网免费下载,官网
,资料很多,很详细。官网上的配套视频够学习两三个月没问题。3.学习单片机得会C语言,要是不会C语言的话最好买本书,跟着视频教程学一学(上就有很多免费的C语言视频教程)。
给C语言初学者推荐一本C语言入门的书,这也是我大一下学期的课本。
不建议初学者用下面这本书,很枯燥,对于初学者来书,下面这本书真的很枯燥,这是大一上学期我为了自学C语言花了几块钱买的一本二手的书,读几页就感觉很没意思。
4.单片机学的比较熟练后,最好学习一下设计单片机电路板,光靠杜邦线和面包板或洞洞板,连线很费劲,有时候光杜邦线就得用一大把,连线很费劲还容易接触不良。说到这里,这又得需要学习使用电烙铁焊接简单电路了,路很长啊。
下面的图片是STM32单片机的一款普通的电路板PCB文件图片。
5.学习单片机是很烧钱的,虽然软件不花钱,但花个几百块钱买硬件很正常。
一个从小白到做到STM32FAE技术支持过来人我觉得我能解答你的疑问。
我曾经也是一名初学者,在上大学之前我对电子就很感兴趣,不过那时候更多学习的都是二极管、电阻、单机管之类的东西。
直到我进入大学,看到别人用单片机设计的作品才知道还有这么个黑乎乎的东西可以实现这么牛叉的功能。我果断进入了学校的电子实验室一泡就是三年。
那么我是怎么学的呢,开始我也是51入门的,我也没有专门学c语言,就是在学单片机的过程中也慢慢把c同时掌握了。你要推荐什么板子,我还是会推荐郭天祥老师的51单片机视频教程和板子。
我当时就是看着视频一节节的看,然后在板子上按照他的教程一步步来实验。甚至有的视频我能看四五变。当时真是花了功夫,但是我现在很感当时付出的时间,因为不管怎么样。单片机的用法,c语言的写法在我脑子里已经根深蒂固了。工作以后其中有将近一年时间没碰单片机,但是拿起来那些东西还记在脑子里。
可能说的有点多,但是是真心希望给你一些建议。大学51我差不多学了多半年的时间,基本的东西都掌握了,我开始用51单片机按照自己的想法做了几个作品。做东西过程中又碰到很多坑到自己解决,我才敢说51我真正掌握了。
学了51单片机一年以后我自己设计了一块儿51单片机开发板在我们学校里面销售,也赚了一些钱。
后面呢我就开始学习stm32,我当时用的是正点原子的开发板,学习模式和51差不多。也是看例子,自己跟着写。当然学stm32的过程中会发现c语言其中还有很多更深入的东西,在用51的时候却没怎么用到。直到我把正点原子的一本书《不完全手册》全部学完的时候,发现自己对单片机整个的内部原理以及c语言掌握程度都更加上升了一个层次。
我知道自己再也不用担心学习一款新的单片机。
然后就是工作,不管是stm32、还是新塘的、nxp的我都用过,你这时候会发现用任何一个牌子的单片机很快就上手了,遇到问题看看手册差不多都能搞定。
再后来我去做了st单片机的FAE,其中stm32都有六百种以上的型号。需要支持的客户工程师也有几百人。不同工程师有不同的问题,这时候是我对MCU更深入的一个阶段。不可能每一个型号都去学,但是遇到问题就知道看手册哪个地方。该从哪个地方入手。
感觉我这个都要成一篇文章了,纯手写,也是自己的经验之谈,希望帮助到你。从51开始,之后再深入学一款ARM-CORTEX单片机,之后再碰到MCU都可以拿来用!