单片机延时程序 程序什么意思

|浏览:96596|回复:56|
|浏览:15150|回复:5|
|浏览:32259|回复:11|
|浏览:391630|回复:89|
|浏览:30144|回复:12|
|浏览:32889|回复:78|
|浏览:12500|回复:46|
|浏览:8434|回复:35|
|浏览:26613|回复:68|
|浏览:18150|回复:74|
|浏览:25|回复:0|
|浏览:21|回复:0|
|浏览:34|回复:0|
|浏览:22|回复:0|
|浏览:16|回复:0|
|浏览:25|回复:0|
|浏览:22|回复:0|
|浏览:51|回复:0|
|浏览:34|回复:0|
|浏览:31|回复:0|
|浏览:21|回复:0|
|浏览:19|回复:0|
|浏览:28|回复:0|
|浏览:65|回复:0|
|浏览:37|回复:0|
|浏览:26|回复:0|
|浏览:48|回复:0|
|浏览:58|回复:0|
|浏览:20|回复:0|
|浏览:40|回复:0|
|浏览:61|回复:0|
|浏览:22|回复:0|
|浏览:36|回复:0|
|浏览:32|回复:0|
|浏览:39|回复:0|
|浏览:48|回复:0|
|浏览:55|回复:0|
|浏览:43|回复:0|
|浏览:25|回复:0|
|浏览:27|回复:0|
|浏览:26|回复:0|
|浏览:25|回复:0|
|浏览:47|回复:0|
|浏览:34|回复:0|
|浏览:34|回复:0|
Copyright (C) 《电子产品世界》杂志社 版权所有单片机编程怎么入门?怎么快速入门单片机?单片机快速入门
查看: 3396|
摘要: 肯定是先学C51基础啊,哈工大的一本书不错的,新编MCS-51单片机应用设计。里面肯定是要教你汇编的。等到最后上工程的时候肯定是要用keil,C语言编程的,所有人走的都是这条路。劝你别一上手就学C编程,因为汇编语言会更让你了解单片 ...
肯定是先学C51基础啊,哈工大的一本书不错的,新编MCS-51应用设计。里面肯定是要教你汇编的。等到最后上工程的时候肯定是要用keil,C语言编程的,所有人走的都是这条路。劝你别一上手就学C编程,因为会更让你了解单片机寄存器等是怎么工作的,理解更透彻。
作为一个初学者,如何单片机入门?
知识上,其实不需要多少东西,会简单的C语言,知道51单片机的基本结构就可以了。一般的大学毕业生都可以了,自学过这2门课程的高中生也够条件。设备上,一般是建议购买一个仿真器,例如,目前的“双功能下载线”就具有良好的稳定性和较快的下载速度,上位机可扩展,可以下载更多的单片机及嵌入式芯片。通过实验,这样才可以进行实际的,全面的学习。&&&在错误的道路上日夜兼程,最终也无法成功。因此,方法和思路绝对是第一重要的。一些学技术的同学,往往看到这类章节会直接跳过去,因为大多数类似章节都是废话连篇。但是,今天在这里我可以很负责任的告诉你,本章节讲到的学习单片机的方法,都是我们学习单片机的无数经验和教训总结出来的瑰宝。因为我们披荆斩棘,开辟了道路,所以可以告诉你路在何方;也因为我们摸过烧红的铁块,烫了手,所以可以把教训告诉你。希望各位都能站在我们的肩膀上,成为巨人。
学什么单片机
单片机的型号那么多,如何选取一款合适的进行学习?如果身边有比较便利的学习单片机的条件,有什么条件就学习什么型号。比如,你所在的公司刚好用到某个型号单片机,那么就方便多了。开发板不用购买,直接用公司现成的板子,指导老师到处是,公司的工程师,只要你耐心虚心的不耻上问,相信他们都会帮你解答问题。如果你跟着学习的导师,正在使用某个型号开发产品,那么同样的道理,你也会有得天独厚的优势,直接跟着学就行了。其实单片机型号虽然多,但是用法大同小异,学会一种,再上手其他的就很快了。
如果你这些条件都没有,那就跟着我学吧,我建议你学习51单片机。为什么呢?现在单片机种类和型号非常多,每个型号都有一定的市场份额,但是哪个型号也没有早期51单片机那般的风光和火爆,虽然现在地位不是那么高了,但是因为51单片机资料非常多,大家学起来有很多可以参考的东西,所以上手肯定比其他型号的要快一些。如果你学习稍微偏门的单片机,可能一个简单的软件问题就要折腾你好长时间,不仅仅浪费了你的学习时间,更重要的是打击你学习单片机的信心。
那是不是我们每个单片机都要学习一遍呢?答案当然是否定的。大家跟着我来学习51单片机,必须得跟着学会举一反三和融会贯通的能力。单片机型号那么多,挨个学下来估计头发白了也学不完,所以大家跟着我学51单片机,不能仅仅当做51来学习,更重要的是要当做单片机来学,要通过我们的这个教程,把所有的单片机的内部资源都搞清楚弄明白,每个内部模块的用法理解透彻,这样当你遇到一个从没有用过的单片机,也就知道如何下手去应用开发了。
如何学习单片机
前边提到过,单片机是一门实用技术,我们学习它已经不是为了应付考试了,我给大家总结了单片机的学习方法是:一个要领,四个步骤。
学习单片机的要领就是:在实践中成长,In&Doing&We&Learn!
学射箭,你得去拉弓,整天只摆造型肯定不行;学游泳,你得下水扑腾,整天在岸上做模仿活动不行;学开车,你得坐车上去开,坐沙发上肯定学不会。同样的道理,学单片机,整天盯着单片机看肯定不行,你也必须得亲自动手去练。
没有不下水就学会游泳成为游泳健将的,没有不到车上练就能成为赛车手的,这点大家都清楚,可为什么总是那么多人学单片机的时候,总是要抱着一本书看呢。第一,我们小学中学甚至大学的学习模式都是如此,学什么东西主要都是靠看书;第二,很多人想实践不太清楚该怎么去实践。
不是不让大家看书,而是看了一点以后,要马上去实践验证,然后再回头结合实践的结果,理解书上的内容。从这个地方,大家要得出一个结论来,就是在学实际技术过程中,和应付考试不同,书上的内容不需要你去硬性记忆,书是用来查的,不是用来记忆的。遇到问题,你学会翻书,知道该去哪里找,找到相关知识点,分析明白,领悟透彻即可,包括咱这本书也是一样,大家先看完一节课,然后马上就把这节课相应的实验做了,做实验的过程中,哪里有不懂的问题,随时翻阅书籍查找,再实验,再查找,反反复复的过程就可以把本节课的内容掌握。
下面,就是我总结的跟着我学习单片机的四个步骤。
第一步,鹦鹉学舌。
刚出生的孩子叫“爸爸”“妈妈”的时候,他甚至不知道“爸爸”“妈妈”是什么意思,更不会理解这些声音是什么意思,但是我们带着孩子见到他爸爸就让他喊“爸爸”,见到妈妈就让他喊“妈妈”,见到爷爷就喊“爷爷”……慢慢的你会发现,次数多了,孩子就知道谁是爸爸,谁是妈妈,谁是爷爷,谁是奶奶了。
大家刚开始接触单片机的时候,也属于单片机行业的新生儿。单片机的样子,单片机外围的各种器件,单片机内部的各种结构,单片机用C语言的编程方法,初学者可能都没有见过。没关系,有些概念和方法你不理解也没有关系,甚至不需要你理解,你只需要跟着我去鹦鹉学舌式学习,第一遍学习某一节课的内容时,对于程序,大家就可以完全跟着抄下来,甚至抄两三遍,过一段你会发现,好多东西你也认识了,好多概念你慢慢的也理解清楚了,你也能大概看懂别人的小程序了,切忌觉得自己看会了,而简单复制粘贴。
第二步,照葫芦画瓢。
很多同学学习的时候喜欢看,看我做的视频,看我写的程序,甚至看别人的程序,都能看懂,觉得自己就会了,等到自己写程序的时候,感觉就是老鼠啃天,不知道从哪里下手了,这是初学者很容易犯的“眼高手低”这样一个毛病,所以第二步的内容就非常重要了。
我的要求是,每一位同学,在学完了当前课的内容,把第一步顺利完成以后,然后关掉视频教程,关掉源代码,自己通过看和查找非源代码的其他任何资料,把当节课我写的程序代码重新默写出来,边写边多少理解那么一点点,不是纯粹的背诵,应该说是背诵加理解的结合体。甚至学过几节课以后,可以回头把前边曾经这样实现过的课程,再按照这种方法做一遍。千万不要认为这一步没必要,这一步是你能否学会单片机的一个关键步骤,在学完本教程之前,每一课内容都要这样做,如果每一个程序你都能够完美的完成,那么可以说,当节课的内容,百分之七八十你已经掌握了。
第三步,他山之石可以攻玉。
单片机技术的最大特点就是可以通过修改程序来实现不同的功能,因此举一反三的能力就必不可少了。每一节课的例程后边,我一般都会布置一两个作业,大家尽量去独立完成这个作业。在完成这个作业的过程中,都可以参考我的程序思路,在这个基础上通过动脑思考去构建你自己的程序框架,最终将程序完成。
在我们工程师实际产品研发的时候,很多种情况下也是如此。比如一个产品,我们如果从0开始着手的话,可能会走很多弯路,所以我们通常的做法是寻找购买同类几款产品,然后先研究他们的各自优缺点,学习他们的长处,然后在同类产品基础上在来设计我们的产品,这就是他山之石可以攻玉。
初学者在学习的时候,往往遇到的问题很多,你应该想到,你遇到的问题,可能前辈们早就遇到过了,所以遇到问题后,不要慌张,首先利用谷歌或者百度这些搜索引擎搜索一下,要做什么新东西,先去网上找找相关资料了解一下,不管是编程还是硬件设计,多参考参考别人的东西,只要把别人的东西分析明白了,自己用起来,就可以成为自己的知识了。
第四步,理论实践结合,温故知新。
当大家把所有的课程都按照前边三步完成后,这个时候不妨把书打开,看看书,通过自己实战的经验,再看书的时候,很多知识点会有一种恍然大悟的感觉。甚至视频教程,书籍,都可以反复看两遍,可能有的知识点当时学习的时候不明白,过了一段时间,回过头来再学习的时候,一下就明白了。
单片机学习的准备工作
第一、足够的信心、恒心和耐心。
有同学问过我,单片机这门技术难不难。我觉得这个问题得从两个方面去分析。
首先,我们从战略上藐视它。那么多同学跟着老师学一段时间就可以做出来小车,超声波测距,甚至做出来机器人,似乎很拽的样子。那他们又不是三头六臂,我们也没有什么做不了的道理。实际上要说技术,其实就是一层窗户纸,表面看不透彻,感觉特别神秘,实际只要你稍微一努力就可以捅破它,夸张点说,单片机的逻辑上的关系,只有小学的水平,简单的很。正所谓会者不难,难者不会,大家不懂这个东西,看起来感觉很神秘。所以大家只要认真踏实坚持学下去,肯定能学好这么技术。
其次呢,我们从战术上要重视它。你说单片机这东西,如果十天八天就学会了,那么这个技术还能值钱吗?我可以这样去表达,如果一个技术很简单就被学会,那么很多人都会的这个技术,肯定也没什么前途和钱途。那究竟多久能学会呢?我给大家制定的学习方案,根据每个人的基础不同,平均每天要拿出2个小时以上的学习时间,大概一到三个月可以入门。入门的概念是给你一个单片机开发任务,你起码知道努力的方向和解决问题的方法了。技术这东西,关键是坚持做下去,有恒心和耐心,如果长时间不用的话,肯定还会生疏。所以要想成为单片机高手,起码需要一年左右的单片机开发的历练才行。成为单片机高手的概念就是你自己可以从头根据自己的想法,去设计一个电路,根据需要的功能编写代码,做一个产品出来。
第二、教材和教程。
要学习单片机这门技术,良好的教材和教程必不可少。单片机方面,大家可以直接学习我们这本《51单片机C语言开发》,我们也有精心制作了《单片机高手之路》视频教程,并且后期会进行不定期更新。本着开源、共享的理念,我们的视频教程和教程都是免费开放的,大家可以到我们的网站www.diangon.com找到下载链接,如果有条件,也可以购买我们一般纸质教材,纸质书籍查阅起来比视频教程和电子教程更方便。另外,因为我们做单片机开发使用的是C语言,所以最好能有一本纯C语言教材,我们学到一些C语言语法性质的问题的时候,大家可以方便查阅,或者你可以直接把相关语法问题通过百度和谷歌等搜索一下也可以。
第三、一台,单片机开发板一块。
电脑呢,是学习单片机必不可少的工具,因为我们编程,查资料都用得到,但是有句题外话说一下,不要把电脑当成游戏机或者影碟机,偶尔玩玩游戏看看电影是可以的,劳逸结合,但是不可沉溺其中,否则还不如不买电脑。
单片机开发板,这也是必须的。如果还上学,老师实验室有开发板,可以考虑跟老师借一个,或者使用师兄师姐用完的,这样可以省点钱。当然,如果身边有高手,比如辅导老师,会单片机的师兄,在他们的指导下做一个也可以,身边有人指导的话,不懂的问题还可以问他们。如果这些条件不具备,那么可以购买一个,先学习别人的板子设计思路,给自己以后设计电路板打下基础。在这里我推荐一下我们的51开发板,用来配套学习。我不敢说我们的设计是最好的,但是我可以很负责任的说,我们的板子是出自经验丰富的一线工程师之手,其中的设计都是根据实际项目开发的思路进行的,包括整体规划、电路设计、器件布局等等,可以为你今后的项目开发提供一个优质的参考。另外一方面,因为我们的教程是基于我们的开发板做的,所以大家用配套的话可以节省时间,提高学习效率。
当然,即使不购买我们的开发板,你想学单片机,必须要有一块开发板,不要总去用软件仿真,软件仿真是学不会单片机技术的。经常有同学过来问我,老师我用软件模拟的好用,做了硬件不好用是什么原因。在这里我提一下,如果你上课用这个软件仿真,糊弄老师应付考试可以的,但是实际开发和仿真软件差别太大,如果是学习单片机这门技术,那我只能告诉你,拿起烙铁焊电路,动手写程序,远离仿真软件,靠软件仿真永远学不到真正的技术。
单片机开发软件环境搭建
单片机开发,首要的两个软件一个是编程软件,一个是下载软件。编程软件我们用Keil&&uVision4的51版本,也叫做keil&C51,不做过多介绍,先直接讲如何安装。
1、首先准备KEIL&uVision4安装源文件,双击安装文件,弹出安装的欢迎界面,如图1所示。
图1&Keil安装欢迎界面&
2、点击“Next”按钮,弹出“License&Agreement”对话框,如图2所示,这里显示一些用户安装协议,我们在“I&agree&to&all&the&terms&of&the&preceding&License&Agreement”打勾,如图2所示
&图“”对话框
3、点击“Next”按钮,弹出“Folder&Selection”对话框,如图3所示。这里可以设置安装路径,默认安装路径在“C\Keil”文件夹下。点击“Browse”按钮,可以修改安装路径,这里建议大家用默认的安装路径,如果你要修改,也必须使用英文路径,不要使用包含有中文字符的路径。&
&图“”对话框
4、点击“Next”按钮,弹出“Customer&Information”对话框,如图4所示。大家输入用户名、公司名称以及E-mail地址即可。&&
&图用户信息
5、单击“”,就会自动安装软件,如图所示&&
&图安装过程
6、安装完成后,弹出来安装完成对话框,如图6所示,并且出现几个选项,大家刚开始把这几个选项的对号全部去掉就可以了,暂时先不用关注他有什么作用。&&
图安装完成
7、最后,点击“”,编程软件开发环境就这么装好了。&&&&Keil基本概况介绍
首先,打开一个工程项目,如图7所示
图7&工程文件
从图7我们可以很轻松的分辨出菜单栏、工具栏、工程管理区、程序代码区和信息输出窗口。这个是Keil4的英文版,网上有一些汉化版本的,我不建议用。即使你的英语不好,使用英文版本的软件也一点问题没有,刚开始大家先跟着我去使用,一共没几个单词,不需要你去翻译,用几次你就记住怎么用了。因为以后做实际开发的时候,大多数软件都是英文版的,如果现在学习的时候一直用中文软件,将来一旦换了其它的英文软件就会慌了,所以从现在开始,我们就慢慢的来熟悉英文软件,将来以后再用到其他英文软件的时候,就可以做到触类旁通、驾轻就熟了。
Keil软件菜单栏和工具栏的具体细化功能,和字典一样用来备查,所以我把它写到了附录里边,在这里只介绍一点,关于软件里边的字体大小和颜色设置。在里边,可以进行程序的颜色,字体大小的设置,如图所示&
&图字体设置一&&
& & 因为我们用的是语言编程,所以我们在栏用鼠标选择,然后在右侧栏目里可以选择要修改的内容,一般我们平时用到的,只是其中几项而已,比如,,,,,,这几项,本身也有默认设置,你如果觉得不是很适合你的感觉,你可以更换一下。
图9&字体设置(二)
&&&Keil菜单栏和工具栏的详细介绍,和字典一样,是备查的,不需要记住,所以我把它写到了附录里,如果大家对哪个工具哪里有疑问,可以随时到附录里进行查找。
很多同学经常问我一些问题,我把一些典型的,直接写出来给大家看一下,让大家了解这门技术,了解我们这个行业。
1、单片机学完了能做什么?
单片机的应用非常广泛,电子,自动化,通信等领域都能用到,至于能做什么,得看你将来以后做什么工作。如同电脑一样,电脑可以用来编程,PS图片,看电影,打游戏,你用电脑做什么是不一定的。但是掌握好这门技术,起码可以让你学会一门工具,为将来从事电子、通信、自动化等领域的工作做好准备。
2、学单片机的捷径是什么?
做技术必须得脚踏实地,没有任何捷径,如果说有的话,那我只能告诉你,拳不离手曲不离口,就是最好的捷径,我学习单片机的时候,每天早上8点半进入老师实验室,晚上10点离开实验室,曾经创下连续3个月没有休息日的记录,你如果能这样学的话,那估计很快可以学好这门技术。
3、学习单片机应该学习什么语言,有没有必要再学习汇编
相比较来说,汇编语言比较接近单片机的底层,使用汇编语言比较容易理解单片机内部结构。简单的程序,用汇编语言,程序效率也比较高,但是当程序容量达到到几千上万行以后(这时也仅能算个不太小的项目,还远没到大项目的级别),汇编语言在组织结构、修改维护等方面就会成为你的梦魇了,此时时候C语言就有不可替代的优势了。所以实际开发过程中,90%以上的工程师都在用C语言做单片机开发,只有在很低端的应用中或者是特殊要求的场合,才会用汇编语言开发,所以我建议大家还是用C语言开发比较好一些。
如果现在正好上学学到了汇编语言,我建议认真学一下,学好了肯定有益无害。但是现在如果说想直接快速学单片机技术,那我建议不要去看汇编语言了,直接学C语言就可以了,那些单片机底层的结构什么的,也可以在开发过程中慢慢理解。
4、学会单片机后能找什么样的工作
单片机是一个工具,和电脑有点类似但不完全一样,我们学会电脑,可以用来编程,可以用来画图,可以用来PS照片,可以用来看电影.......学会单片机,可以用来做通信技术,做自动控制技术等等,但是单片机本身来说仅仅是一个工具,你在用单片机的时候,慢慢接触多了,会有一个应用方向,你不仅仅要会单片机,也得对这个应用方向熟悉,比如我个人从事过扩频通信技术的算法研究,那么我就要对扩频通信熟悉,然后把这个技术用单片机实现出来,也得会用单片机。当然大家也不用担心,找工作的时候公司对这个方向问题要求也不会很高,懂的话,肯定也会提高自己的竞争力。
5、学完了这个工资待遇如何
对于技术来说,技术水平高低直接决定你的工资薪酬。技术如果学的不好,那工作都找不到,更谈不上工资了,而技术做的好的,那工资就会很高。我们不清高,我们需要足以安身立命的薪资报酬,但是我希望的是,一旦你决定从事技术,你不用把过多的精力关注在能挣多少钱上,而应该放在如何把技术提高起来,只要技术水平高,比很多人都厉害,钱自然就找上门了。有一部印度的励志片叫做《三傻大闹宝莱坞》,我推荐做技术的都可以看看,里边有一句经典台词非常适合我们技术人员:追求卓越,成功就会在不经意间追上你。
单片机学习的4个阶段
一、整体了解
要知道 单片机是什么?单片机有何用?如何系统学习单片机?单片机系统设计的流程是怎样的,需要掌握哪些辅助软件?
了解这些之后,我们的学习就有了目标和方向。
二、揭秘 单片机很难学,是因为其内部结构、编程语言抽象,且实际应用中与其他和知识相互关联,需结合起来一起设计开发产品。所以,第二阶段要了解单片机的内部结构是怎样的?单片机开发经常会用到哪些电子技术和元器件知识?如何将一条条编程指令组合成一段段有效的程序?
三、解密 之所以单片机能成为控制核心,设计出包罗万象的应用系统来,是因为开发者利用了单片机提供的种种功能及各种外设。所以,第三阶段我们要掌握单片机的各种功能,再加上诸如、模数转换、扫描显示、串行、中断的应用思维,结合更多的元器件、电子电路知识,逐个学习、体会实际的单片机系统的秘密。
四、远航 通过以上三个阶段,读者基本就可掌握单片机的应用了。但要设计出丰富的单片机系统,解决复杂的实际问题,还需要了解更多的外设知识及其与单片机的联系(如、各类存储器、、红外管等)。这些需要不断的学习和积累。有时候,接到一些开发任务,就需要你针对这个任务自觉地去搜集、学习相关知识,在实践中不断载学习和提高。
最后推荐一本经典图书:《实例解读51单片机完全学习与应用(配教学视频)》,杨欣编著(他写过多本很有口碑的电子读物,风格独特),电子工业出版社出版。
上一篇:下一篇:
Powered by &
这里是—这里可以学习 —这里是。
栏目导航:您当前的位置:&>&&>&&>&
单片机烧写是什么?什么叫单片机烧写?
为什么叫烧写呢?
早期一般是将调试好的程序写入到ROM、EPROM中,这种操作就像刻制光盘一样,实在高电压方式下写入,PROM是一次性写入,存储内部发生变化,有些线路或元件就被烧断,不可再恢复,所以叫做烧写,EPROM可以使用紫外线将原来写入的内容擦除,重新烧写,目前大量采用EEPROM,是可以电擦写的存储器。
扩展阅读:
单片机启动时会直接运行这些芯片中的程序,完成既定的功能。
所谓烧写,其实就是对单片机中的rom进行擦写。现代工艺下,rom已经可以进行多次擦写,但在早期,rom只能一次性设计好,例如早期的PLC,把二极管上的丝烧了后就永久编码出1。而我们知道,单片机程序经编译连接后传给机器便是机器语言,简而言之就是一大堆1和0。在少些过程中,我们将烧不烧一大堆MOS管和BJT的丝或连不连上通道来表示这些1和0。
烧写的三种方式:
1.把单片机当做一个ROM芯片,早期的单片机都是如此。将单片机放在通用编程上编程时,就像给28C256这样的ROM中写程序的过程一样。只是不同的单片机使用的端口,编程用的时序不一样。
2.像AT89S52或AVR单片机一样,在单片机上有SPI接口,这时用专用的下载线将程序烧写到单片机中。这时不同的是,单片机的CPU除了执行单片机本身的指令之外,还能执行对ROM进行操作的特殊指令,如ROM擦除、烧写和校验指令。在编程ROM时,下载线先通过传输这些指令给CPU执行(擦除ROM、读入数据、烧写ROM、和校验ROM),这样完成对单片机的ROM的烧写。此外,现在普遍使用的JTAG仿真器也是这样,单片机的CPU能执行JTAG的特殊指令,完成对ROM的烧写操作。
3.引导程序,即单片机中已经存在了一个烧写程序。启动单片机时首先运行这程序,程序判断端口状态,如果符合&要烧写ROM&的状态存在,就从某个端口(串口、SPI等等)读取数据,然后写入到单片机的ROM中。如果没有&要烧写ROM&的状态,就转到用户的程序开始执行。像AVR单片机的bootloader方式、STC的串口下载方式,还有其他单片机的串口编程等等都是这样。技术小站:
& 参会,互动,拿好礼
& 观看视频回放,学习最新知识
& 学习业内最热门知识,还有好礼送
& 热点行业全新解读,产品样品免费申请
张飞电子工程师速成全集
10天掌握PCB AD画板
教你高速PCB项目整体设计
如何设计STM32单片机系统?
物联网操作系统从写到用
讲师:华清远见
讲师:林超文
讲师:郑振宇
讲师:李述铜
移入鼠标可放大二维码
什么叫单片机?什么是单片机?
来源:本站整理
作者:佚名日 00:10
[导读] 什么叫单片机?什么是单片机?
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯
什么叫单片机?什么是单片机?
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。& & 可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成(如图1所示)。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。& & 单片机的应用领域 :& & 1.单片机在智能仪器仪表中的应用;& & 2.单片机在工业测控中的应用;& & 3.单片机在计算机网络和通讯技术中的应用;& & 4.单片机在日常生活及家电中的应用;& & 5.单片机在办公自动化方面。& & 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
?所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Memory)、定时器、I/0(Input/Output)接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。
单片机的内部结构
虽然单片机只是一个芯片,但从组成和功能上看,它已具有了微型计算机系统的含义。中文“单片机”的称呼由英文名称“Single Chip Microcomputer”直接翻译而来。单片机的内部结构如右图所示。??单片机把微型计算机的各主要部分集成在一块芯片上,大大缩短了系统内信号传送距离,从而提高了系统的可靠性及运行速度。因而在工业测控领域中,单片机系统是最理想的控制系统。所以,单片机是典型的嵌人式系统,是嵌入式系统低端应用的最佳选择。
一、单片机技术发展的四个阶段
??------ 单片机的发展经历了探索---完善---MCU化---百花齐放四个阶段。
1、芯片化探索阶段??20世纪70午代,美国的Fairchild(仙童)公司首先推出了第一款单片机F-8,随后Intel公司推出了影响面大、应用更广的MCS48单片机系列。MCS48单片机系列的推出标志着在工业控制领域,进入到智能化嵌入式应用的芯片形态计算机的探索阶段。参与这一探索阶段的还有Motorola、Zilog和Ti等大公司,它们都取得了满意的探索效果,确立了在SCMC的嵌入式应用中的地位。这就是Single Chip Microcomputer的诞生年代,单片机一词即由此而来。这一时期的特点是:??◆ 嵌入式计算机系统的芯片集成设计;??◆ 少资源、无软件,只保证基本控制功能。
2.结构体系的完善阶段??在MCS-48探索成功的基础上很快推出了完善的、典型的单片机系列MCS-5l。MCS-51系列单片机的推出,标志Single Chip Microcomputer体系结构的完善。它在以下几个方面奠定了典型的通用总线型单片机的体系结构。
①完善的总线结构:??◆并行总线:8位数据总线、16位地址总线及相应的控制总线,两个独立的地址空间;??●串行总线:通信总线,扩展总线。
②完善的指令系统:??◆具有很强的位处理功能和逻辑控制功能,以满足工业控制等方面的需要;??◆功能单元的SFR(特殊功能寄存器)集中管理。
③完善的MCS-51成为SCMC的经典体系结构。??日后,许多电气商在MCS-51的内核和体系结构的基础上,生产出各具特色的单片机。
3.从SCMC向MCU化过渡阶段??Intel公司推出的MCS96单片机,将一些用于测控系统的模数转换器(ADC)、程序运行监视器(WDT)、脉宽调制器(PWM)、高速I/O口纳入片中,体现了单片机的微控制器特征。MCS-51单片机系列向各大电气商的广泛扩散,许多电气商竞相使用80C51为核,将许多测控系统中使用的电路技术、接口技术、可靠性技术应用到单片机中;随着单片机内外围功能电路的增强,强化了智能控制器特征。微控制器(Microcontrollers)成为单片机较为准确表达的名词。其特点是:
①满足嵌入式应用要求的外围扩展,如WDT、PWM、ADC、DAC、高速I/0口等。②众多计算机外围功能集成,如:?◆提供串行扩展总线:SPI、I2C、BUS、Microwire;?◆配置现场总线接口:CAN BUS。③CMOS化,提供功耗管理功能。④提供OTP供应状态,利于太规模和批量生产。
4.MCU的百花齐放阶段??单片机发展到这一阶段,表明单片机已成为工业控制领域中普遍采用的智能化控制工具-----小到玩具、家电行业,大到车载、舰船电子系统,遍及计量测试、工业过程控制、机械电子、金融电子、商用电子、办公自动化、工业机器人、军事和航空航天等领域。为满足不同的要求,出现了高速、大寻址范围、强运算能力和多机通信能力的8位、16位、32位通用型单片机,小型廉价型、外围系统集成的专用型单片机,以及形形色色各具特色的现代单片机。可以说,单片机的发展进人了百花齐放的时代,为用户的选择提供了空间。这一时期的特点为:
(1)电气商、半导体商的普遍介入??MCS-48的成功,刺激了许多半导体公司竞相研制和发展自己的单片机系列。到目前为止,世界各地厂商已相继研制出大约50个系列300多个品种的单片机产品,其中较有代表性的有Motorola公司的,Zilog公司的Z-8系列,Microchip公司的PIC系列等。此外,开本的NEC公司、日立公司也都推出了各自具有特色的单片机品种。
(2)大力发展专用单片机??通用型与专用型是按某一型号单片机适用范围区分的。例如,80C51是通用型单片机,它并不是为某一种专门用途设计的单片机;而专用型单片机是针对某一类产品甚至某个产品需要而设计、生产的单片机。例如,来电显示电话中配有液晶驱动器接口的单片机和全自动洗衣机中的微控制器,都是专用单片机;特别是小家电、玩具领域的单片机,因为小封装、价格低廉一外围器件、外设接口集成度高,多数为专用单片机。
(3)提高综合品质??在体系结构(RISC)、电磁兼容性能(EMC)、开发环境(高级语言支持ISP、IAP等)、功耗管理等诸方面得到了提高。根据控制单元设计的方式与采用的技术不同,目前市场上的这些单片机可区分为两大类型:繁杂指令集结构(CISC架构)和精简指令集结构(RISC架构)。繁杂指令集结构(CISC)的特点是指夺数量多,寻址方式丰富,较适合初学者系统学习,如INTEL的80C51或80C196、MC68K;而精简指令集结构(RISC)具有较少的指令与寻址模式,结构简单,成本较低,执行程序的速度较快,成为单片机的后起之秀,如PIC、EM78XXX和Z86HCXX。??ISP(In System Programming)和IAP(In Application Programming)方式是两种先进的实时在线开发方式。它们无须传统的开发装置,借助计算机和单片机的高性能,实现了真正的在线仿真。
(4)C语言的广泛支持??◆单片机普遍支持C语言编程,为后来者学习和应用单片机提供了方便;??◆高级语言减少了选型障碍,便于程序的优化、升级和交流。
(5)多种选择下的选择原则??●寻求最简化的单片机应用系统;??◆尽可能选择专用单片机;??◆综合考虑下进行合理的选择。
二、80C51单片机的家族简介
??虽然目前单片机的品种很多,但其中最具代表性的当属Intel公司的MCS-51单片机系列。MCS-51以其典型的结构、完善的总线、SFR的集中管理模式、位操作系统和面向控制功能的丰富的指令系统,为单片机的发展奠定了良好的基础。MCS-51系列的典型芯片是80C51(CHMOS型的8051)。为此,众多的厂商都介入了以80C51为代表的8位单片机的发展,如Philips、Siemens(Infineon)、Dallas、ATMEL等公司,我们把这些公司生产的与80C51兼容的单片机统称为80C5l系列。特别是在近年来,80C51系列又有了许多发展,推出厂一些新产品,主要是改善单片机的控制功能,如内部集成了高速I/O口、ADC、PWM、WDT等,以及低电压、微功耗、电磁兼容、串行扩展总线、控制网络总线性能等。??●ATMEL公司研制的89CXX系列是将Flash Memory(EEPROM)集成在80C51中,作为用户程序存储器,并不改变80C51的结构和指令系统。??◆Philips公司的83/87C7XX系列不改变80C51结构、指令系统,省去了并行扩展总线,属于非总线的廉价型单片机,特别适合于家电产品。??◆lnfineon(原Siemens半导体)公司推出的C500系列单片机在保持与80C51兼容的前提下,增强了各项性能,尤其是增强了电磁兼容性能,增加了CAN总线接口,特别适用于工业控制、汽车电子、通信和家电领域。??鉴于80C51系列在硬件方面的广泛性、代表性和先进性以及指令系统的兼容性,初学者可以选择51系列单片机作为学习单片机的首选类型,至于其它类型的单片机,在深入学习和掌握了80C51单片机之后再去学习已不是什么难事。
三、单片机的发展趋势
1.制作工艺CMOS化(全盘CMOS化)??出于对低功耗的普遍要求,目前各大厂商推出的各类单片机产品都采用了CHMOS工艺。80C51系列单片机采用两种半导体工艺生产。一种是HMOS工艺,即高密度短沟道MOS工艺。另外一种是CHMOS工艺,即互补金属氧化物的HMOS工艺。CHMOS是CMOS和HMOS的结合,除保持了HMOS的高速度和高密度的特点之外,还具有CMOS低功耗的特点。例如8051的功耗为630mw,而80C51的功耗只有120mw。在便携式、手提式或野外作业仪器设备上低功耗是非常有意义的。因此,在这些产品中必须使用CHMOS的单片机芯片。
2.尽量实现单片化??尽管我们常说,单片机是将中央处理器CPU、存储器和I/O接口电路等主要功能部件集成在一块集成电路芯片上的微型计算机,但由于工艺和其它方面的原因,很多功能部件并未集成在单片机芯片内部。于是,用户通常的做法是根据系统设计的需要在外围扩展功能芯片。随着集成电路技术的快速发展和“以人为本”思想在单片机设计上的体现,很多单片机生产厂家充分考虑到用户的需求,将一些常用的功能部件,如A/D(模/数转换器)、D/A(数/模转换器)、PWM(脉冲产生器)以及LCD(液晶)驱动器等集成到芯片内部,尽量做到单片化;同时,用户还可以提出要求,由厂家量身定作(SOC设计)或自行设计。
3.共性与个性共存??如今的市场上为我们提供了丰富多彩的单片机产品。从宏观上讲,有RISC和CISC两大类型;从微观上说,有Intel、Motorola、Philips、Microchip、EMC、NEC等公司的相关产品。在未来相当长的时间内,都将维持这种群雄并起、共性与个性共存的局面。究其原因,主要有以下两点。首先,以80C51为代表的单片机的基础地位不会动摇。这是因为80C51的架构和指令系统为后来的单片机提供了参考基准和强大支持,凡是学过80C51单片机的人再去学用其它类型的单片机易如反掌,借梯子爬坡何乐而不为呢?有关这方面的教材建设在出版界也得到了共识,取得了斐然的成果;这足以解释为制么在课堂上大家都以80C51的教材来进行教与学了。其次,个性化的产品如专用单片机等在满足用户需求方面得到了大家的认可,在应用领域大有后来赶上的架势;它们由于先天的优势,在80C51的基础上扬长避短,以用户需要为根本,在市场上受到丁欢迎。总之,80C51作为共性的代表会与个性化的产品相互依存,共同发展,将会给用户带来更大的实惠与方便。
四、单片机的应用范围
??在说单片机应用之前,首选来谈谈我们使用的电脑(PC机),我们使用的电脑属于通用计算机,真是感叹计算机发展神速!现在个人电脑的性能比以前已经得到了极大的提高,普通PC机的运行速度就已经达到了3GB以上,拥有海量的硬盘空间,80GB、160GB甚至200G都很常见,内存普通的都有256M、512M甚至有1G内存,使用19"大屏幕液晶显示器。。。正是这些电脑的高性能,为我们海量数值计算、信息处理、多媒体和网络应用、办公、家用等的实现成为可能。
??相比之下,单片机的硬件配置就没有通用计算机那么高了,单片机运算速度一般只有几兆至几十兆,如51单片机常用的晶振频率有6MHZ、11.0592MHZ和24MHZ等;单片机内部程序空间也比较小,一般在几KB到几十KB;单片机内存RAM一般几百字节到几KB。虽然单片机微型计算机的性能无法和电脑相比,但是单片机具有高可靠性、体积小、智能性、实时性、可塑性强(只要写入不同的程序,同一片单片机能够完成不同的工作)等诸多特点,而且价格低廉,如一片89S51单片机才几块钱。正是这些特点,使单片机成为工程师们开发嵌入式应用系统和小型智能化产品的首选!
??举个单片机应用的典型例子,如老式洗衣机采用机械式定时控制器,功能单一,而故障频繁。要开发家用智能化洗衣机,采用性能强大的通用计算机(PC机)固然能够轻易实现,但是这样就大材小用了,而且其成本太高,体积庞大。。。最佳的解决方案就是采用廉价单片机了,采用“单片机+控制程序+接口电路+执行机构”的智能化洗衣机控制方案后,洗衣机就具有了智能化的特性,能够自动进行控制整个洗涤过程,从注水、加洗衣粉、洗涤、漂洗、脱水、烘干等一系列工作过程,甚至能够自动判断洗衣量及衣服材质而采用最佳的洗涤方式等,并且有多种不同的洗涤程序(方式)给你选择,你只需把衣服放进去后洗衣过程就由单片机自动控制下完成了,洗涤完后你拿出来就已经烘干可以穿了:),实实在在的全自动,智能化,这样极大地降低了我们的劳动强度。
??从上面的简单例子中,我们看到了单片机应用的现实意义了。单片机极高的可靠性,微型性和智能性(我们只要编写不同的程序后就能够完成不同的控制工作),单片机已成为工业控制领域中普遍采用的智能化控制工具,已经深深地渗入到我们的日常生活当中-----小到玩具、家电行业,大到车载、舰船电子系统,遍及计量测试、工业过程控制、机械电子、金融电子、商用电子、办公自动化、工业机器人、军事和航空航天等领域都可见到单片机的身影。以下是一些应用举例:
??1、智能产品:单片机微处理器与传统的机械产品相结合,使传统机械产品结构简化、控制智能化,构成新一代的机电一体化的产品。例如传真打字机采用单片机,可以取代近千个机械器件;缝纫机采用单片机控制,可执行多功能自动操作、自动调速、控制缝纫花样的选择。
??2、智能仪表:用单片机微处理器改良原有的测量、控制仪表,能使仪表数宁化、智能化、多功能化、综合化。而测量仪器中的误差修正、线性化等问题也可迎刃而解。
??3、测控系统:用单片机微处理器可以设计各种工业控制系统、环境控制系统、数据控制系统,例如温室人工气候控制、水闸自动控制、电镀生产线自动控制、汽轮机电液调节系统等。
??4、数控型控制机:在目前数字控制系统的简易控制机中,采用单片机可提高可靠性,增强其功能、降低成本。例如在两坐标的连续控制系统中,用805l单片机微处理器组成的系统代替Z-80组台系统,在完成同样功能的条件下,其程序长度可减少50%,提高了执行速度。数控型控制机采用单片机后口可能改变其结构模式,例如使控制机与伺服控制分开,用单片机构成的步进电机控制器可减轻数控型控制机的负担。
??5、智能接口:微电脑系统,特别是较大型的工业测控系统中,除外围装置(打印机、键盘、磁盘、CRT)外,还有许多外部通信、采集、多路分配管理、驱动控制等接口。这些外围装置与接口如果完全由主机进行管理,势必造成主机负担过重,降低执行速度,如果采用单片机进行接口的控制与管理,单片机微处理器与主机可并行上作,大大地提高了系统的执行速度。如在大型数据采集系统中,用单片机对模拟,数字转换接口进行控制不仅可提高采集速度,还可对数据进行预先处理,如数字滤波、线性化处理、误差修正等。在通信接口中采用单片机可对数据进行编码译码、分配管理、接收/发送控制等。
最常用的单片机芯片有:89C51系列等。
单片机相关文章
单片机相关下载
技术交流、积极发言! 发表评请遵守相关规定。
随着物联网技术的突飞猛进,生活中越来越多的家庭设备将会联上网络,变得“智慧”起来,智慧家庭的概念成了这几年媒体、企业、用户关注的焦点,而...
研华IoT嵌入式平台事业群总经理许杰弘表示,工业物联网 2009年就开始提出,至今缺乏临门一脚,现在是打开大门的时候了。研华WISE-PaaS物智联软件平台和...
创新实用技术专题
供应链服务
商务及广告合作
Jeffery Guo
关注我们的微信
供应链服务 PCB/IC/PCBA
版权所有 (C) 深圳华强聚丰电子科技有限公司
电信与信息服务业务经营许可证:粤B2-

我要回帖

更多关于 单片机中断程序 的文章

 

随机推荐