单片机初学的几个疑惑

看到有几个单片机初学的问题大家争论的比较多,在这里针对几个问题,我想谈一下自己的看法。

一.到底以什么单片机入门

在群里不断有人问,该学51还是AVR还是PIC?同一系列的用什么配置的好?我特别强调的是,大家搞清楚现在我们考虑的是入门学什么单片机?不是说你以后就只用这个单片机。入门我们选资料最全,最有代表性的,最有可能掌握的,非51莫属。我在群里这样说过,在前面博客也提过,有人对此有怀疑。

对于不同系列的单片机有什么不同?(51和AVR属于不同一系列)

咱就具体到点亮一个发光管。点亮一个发光管的方法是:给一个IO口输出一个使发光管点亮的电平,不管什么单片机都是这个思想;不同的就是我们用不同的软件生成程序,我们加载不一样的头文件,配置的寄存器名字不一样而已,依然用C编程。就像我们学会了用电脑听音乐,你会在乎用什么电脑,用什么操作系统,用什么播放软件吗?只要你学会了听音乐的步骤你就用什么都能听,只是熟悉一下环境而已。

我们现在要学的就是编程思想,有了思想你什么单片机都能学会。

对于同一个系列的单片机有什么不同?

同一系列的单片机不一样的地方,无非是支持的晶振频率在变高,ROM,RAM容量在变大,读写速度在变快,高度集成化而已。就像电脑一样,不管你电脑怎么变,它无非是速度在提高,硬盘容量在变大,内存在变高,读写速度在提高,外围接口更丰富或高度集成,你操作起来不还是一样的。不会说你换个电脑你就不会用了,只是不同的需求,用不同的配置,仅此而已。

一句话:相信我,就听我的,入门就用51。

二.该不该买开发板

有人认为该买,理由是很快能上手,下载线什么的都有;有人认为不该买,省了不少钱,自己还可以动手,增加实践能力。这两个观点我觉得都对,最主要的是看你自己的情况。

想买板,说没钱的,我觉得是扯蛋。

在更复杂的系统中,经常使用分布式多计算机系统。多机系统通常由许多具有不同功能的单片机组成,每个单片机执行特定的任务,并且它们通过串行通信相互通信和协调。在这种系统中,单片机通常用作终端机,并安装在系统的某些节点上,以对现场信息进行实时测量和控制。MCU的高可靠性和强大的抗干扰能力使其可以在恶劣环境的前端工作。

一点硬件基础都没有的,我建议你买开发板,群里面有个兄弟自己焊,一个下载线一个星期都没解决,这也太打击积极性了。更别说后面得编程,到时你出问题了,你真不知道是硬件有问题还是软件不对,我估计你就做不下去了,初学者一定要保证自己的硬件没问题,学起来才会快;软件学的差不多了,你再搞硬件。初学时成就感非常重要,别因为个硬件把自己搞蒙了。

本来是想“搞”硬件的,到最后发现你被硬件“搞”。

一句话:相信我,就听我的,你需要属于你的开发板。

三.用什么教科书

为什么要提出这个问题呢?前两天群里面有人说到这个问题,我发现初学者的心态很有意思,像无头苍蝇似的,一听到什么好,就想马上看看,好像别人有了,自己没有好像吃了大亏似的,捡了芝麻,丢了西瓜的事就别再干了。

我发现大家现在都倾向这两本书:

“手把手教你学单片机” 北京航空航天大学出版社出版,作者周兴华。

“新概念51单片机C语言教程”电子工业出版社出版,作者郭天祥。

我的建议是上面的你有一本就可以了,两本都很好,没必要两本都看,外加一本:

“C语言程序设计” 清华大学出版社出版,作者谭浩强。

强烈建议买书,不要只看PDF文档。(我有些诧异的是,有个群里的朋友大学毕业了不知道PDF是什么)

一句话:相信我,就听我的,别再浪费时间在找书上。

> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >

看到这里,相信大家对单片机需要哪些基础,入门学什么已经有了大致的了解,如果觉得自己学习的不够深入不够系统,缺乏实战演练,可以参考信盈达的单片机培训课程。

生成海报
点赞 0

thePro

我还没有学会写个人说明!

相关推荐

基于8051单片机实现电子时钟+数字秒表设计

概述 电子时钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显 示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许

OV7670摄像头模块资料

OV7670摄像头模块资料 一、实物图和原理图 二、模块简介 OV7670 是 OV( OmniVision)公司生产的 CMOS VGA 图像传感器。该传感器体积小、工作电压低,提供单片 VGA

汇编实现LED点亮

汇编点亮一个LED MCS-51单片机 也许C语言人人都会,但使用汇编语言就不一定了。 使用汇编语言点亮一个LED灯 程序: ORG 0000H MAIN:CLR P2.0 LJMP MAINEND 注释如下&#