0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >基础知识 > 51单片机学习总结

51单片机学习总结

来源: elecfans
2020-09-17
类别:基础知识
eye 67
文章创建人 拍明

原标题:51单片机学习总结

  51单片机学习总结-不喜勿喷

  1、什么是单片机

  在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 Intel公司推出了MCS-51系列单片机:集成 8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。

  2、单片机的作用

  用到单片机的项目经验介绍

  手持粮库温度寻检设备

  毕设答辩打分器

  电话台灯

  自动感应水龙头

  凡是与控制或简单计算有关的电子设备都可以用单片机来实现,再根据具体实际情况选择不同性能的单片机,如:atmel,stc,pic,avr,凌阳,80C51,arm等

  工业自动化:数据采集、测控技术。

  智能仪器仪表:数字示波器、数字信号源、数字万用表、感应电流表等。

  消费类电子产品:洗衣机、电冰箱、空调机、电视机、微波炉、手机、IC卡、汽车电子设备等。

  通讯方面:调制解调器、程控交换技术、手机、小灵通等。

  武器装备:飞机、军舰、坦克、导弹、航天飞机、鱼雷制导、智能武器等。

  等等…..

  3、学习单片机之前预备知识

  (1)数字电路中只有两种电平:高和低

  定义单片机为TTL电平:

  高 +5V 低 0V

  (2)RS232电平:计算机的串口

  高 -12V 低+12V

  所以计算机与单片机之间通讯时需要加电平转换芯片

  (3)进制转换与逻辑、算术运算

  (4)C语言基础

  (5)80C51了解

  80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的 CMOS工艺单片机产品统称为80C51系列。

  (6)

  总线(BUS)是计算机各部件之间传送信息的公共通道。微机中有内部总线和 外部总线两类。内部总线是CPU内部之间的连线。外部总线是指CPU与其它部件之间 的连线。 外部总线有三种: 数据总线DB(Data Bus), 地址总线 AB(Address Bus) 和控制总线 CBControl Bus)。

  (7)

  CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;

  RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;

  ROM:用以存放程序、一些原始数据和表格;

  I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;

  T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;

  五个中断源的中断控制系统;

  一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;

  片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率取决于单片机型号及性能。

  (8)

  C51数据存储类型

  例:

  数据类型 变量名

  char var1;

  bit flags;

  unsigned char vextor[10];

  int wwww;

  注意:变量名不能用C语言中的关键字表示。

  (9)

  包含的头文件(可以在安装目录下INC目录下查看)

  通常有:reg51.h reg52.h math.h ctype.h stdio.h stdlib.h absacc.h

  常用有:reg51.h reg52.h

  (定义特殊功能寄存器和位寄存器);

  math.h (定义常用数学运算);

  (10)中断服务程序的格式

  函数名()interrupt n using m

  {

  函数内部实现 ….

  }

  (11)I/O口定义

  sbit beep=P2^3;

  (12)单片机的基本时序

  机器周期和指令周期

  (1) 振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的 周期,TX实验板上为11.0592MHZ。 

  (2) 状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后 得到的。 

  (3) 机器周期: 一个机器周期包含 6 个状态周期S1~S6, 也就是 12 个时 钟周期。 在一个机器周期内, CPU可以完成一个独立的操作。 

  (4) 指令周期: 它是指CPU完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。MCS - 51 系统中, 有单周期指令、双周期指令和四周期指令。

  4、学习单片机目标

  最小系统能够运行起来的必要条件。

  1.电源 2.晶振3.复位电路

  对单片机任意IO口的随意操作

  1.输出控制电平高低2.输入检测电平高低。

  定时器:重点掌握最常用的方式2

  中断:外部中断、定时器中断、串口中断

  串口通信:单片机之间、单片机与计算机间

  51单片机

  51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。

  主要产品

  *Intel(英特尔)的:80C31、80C51、87C51,80C32、80C52、87C52等;

  *ATMEL(爱特梅尔)的:89C51、89C52、89C2051,89S51(RC),89S52(RC)等;

  *Philips(飞利浦)、华邦、Dallas(达拉斯)、Siemens(西门子)等公司的许多产品;

  STC(国产宏晶)单片机:89c51、89c52、89c516、90c516等众多品牌。

  

功能

  

·8位CPU·4kbytes程序存储器(ROM) (52为8K)

  ·128bytes的数据存储器(RAM) (52有256bytes的RAM)

  ·32条I/O口线·111条指令,大部分为单字节指令

  ·21个专用寄存器

  ·2个可编程定时/计数器·5个中断源,2个优先级(52有6个)

  ·一个全双工串行通信口

  ·外部数据存储器寻址空间为64kB

  ·外部程序存储器寻址空间为64kB

  ·逻辑操作位寻址功能·双列直插40PinDIP封装

  ·单一+5V电源供电

  CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;

  RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;

  ROM:用以存放程序、一些原始数据和表格;

  I/O口:四个8位并行I/O口,既可用作输入,也可用作输出

  T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;

  五个中断源的中断控制系统;

  一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;

  片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最佳振荡频率为6M—12M。

  学习

  作为一个初学者,如何单片机入门?

  

实际上,其实不需要多少东西,会简单的C语言,知道51单片机的基本结构就可以了。一般的大学毕业生都可以了,自学过这2门课程的高中生也够条件。设备上,一般是建议购买一个仿真器,例如,的“双功能下载线”就具有良好的稳定性和较快的下载速度,上位机可扩展,可以下载更多的单片机及嵌入式芯片。通过实验,这样才可以进行实际的,全面的学习。日后在工作上,仿真器也大有用处。还有,一般光有仿真器是不行,还得有一个实际的电路,即学习板,如图,即为,单片机最小系统。

  学习板以强大的接口为主,单片机的学习分两方面,一方面是单片机的原理及内部结构,另一方面是单片机的接口技术。这些都是需要平时多积累,多动手,多思考,这样才能学好单片机技术。

  注:“双功能下载线”在百度文库里有详细的使用说明,并且上位机会定期更新以支持更多的单片机。

  单片机学习的4个阶段

  一、整体了解

  要知道 单片机是什么?单片机有何用?如何系统学习单片机?单片机系统设计的流程是怎样的,需要掌握哪些辅助软件?

  了解这些之后,我们的学习就有了目标和方向。

  二、揭秘 单片机很难学,是因为其内部结构、编程语言抽象,且实际应用中与其他电子技术和元器件知识相互关联,需结合起来一起设计开发产品。所以,第二阶段要了解单片机的内部结构是怎样的?单片机开发经常会用到哪些电子技术和元器件知识?如何将一条条编程指令组合成一段段有效的程序?

  三、解密 之所以单片机能成为控制核心,设计出包罗万象的应用系统来,是因为开发者利用了单片机提供的种种功能及各种外设。所以,第三阶段我们要掌握单片机的各种功能,再加上诸如传感器、模数转换、扫描显示、串行、中断的应用思维,结合更多的元器件、电子电路知识,逐个学习、体会实际的单片机系统的秘密。

  四、远航 通过以上三个阶段,读者基本就可掌握单片机的应用了。但要设计出丰富的单片机系统,解决复杂的实际问题,还需要了解更多的外设知识及其与单片机的联系(如电动机、各类

存储器、继电器、红外管等)。这些需要不断的学习和积累。有时候,接到一些开发任务,就需要你针对这个任务自觉地去搜集、学习相关知识,在实践中不断学习和提高。

  最后推荐几本经典图书:

  《实例解读51单片机完全学习与应用(配教学视频)》,杨欣编著(他写过多本很有口碑的电子读物,风格独特),电子工业出版社出版。

  《爱上单片机》,杜洋著,全新风格,使用面包板入门,人民邮电出版社。

  《手把手教你学51单片机》,宋雪松编著(很经典),清华大学出版社出版。

  仿真

  电脑仿真

  Proteus 自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。 keil是一种先进的单片机集成开发系统。它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程/仿真/调试/写入/加密等所有过程一气呵成,中间不须任何编译或汇编。

  功能特性

  1,可以仿真63K程序空间,接近64K 的16位地址空间;

  2,可以仿真64Kxdata 空间,全部64K 的16位地址空间;

  3,可以真实仿真全部32 条IO脚;

  4,完全兼容keilC51 UV2 调试环境,可以通过UV2 环境进行单步,断点, 全速等操作;

  5,可以使用C51语言或者ASM汇编语言进行调试 ;

  6,可以非常方便地进行所有变量观察,包括鼠标取值观察,即鼠标放在某 变量上就会立即显示出它此的值;

  7,可选 使用用户晶振,支持0-40MHZ晶振频率;

  8,片上带有768字节的xdata,您可以在仿真时选 使用他们,进行xdata 的仿真;

  9,可以仿真双DPTR 指针;

  10,可以仿真去除ALE 信号输出. ;

  11,自适应300-38400bps 的所有波特率通讯;

  12,体积非常细小,非常方便插入到用户板中.插入时紧贴用户板,没有连接电缆,这样可以有效地减少运行中的干扰,避免仿真时出现莫名其妙的故障;

  13,仿真插针采用优质镀金插针,可以有效地防止日久生锈,选择优质园脚IC插座,保护仿真插针,同时不会损坏目标板上的插座. ;

  14,仿真时监控和用户代码分离,不可能产生不能仿真的软故障;

  15,RS-232接口不计成本采用MAX202集成电路,串行通讯稳定可靠,绝非一般三极管的简易电路可比。

  功能限制

  仿真器占用单片机串口及定时器2,与Keil C(PC)通讯,故不支持串口及定时器2 的仿真功能。全速运行时单片机串口及定时器2 可供用户使用。

  使用方法

  1.将仿真器插入需仿真的用户板的CPU插座中,仿真器由用户板供电;

  2.将仿真器的串行电缆和PC机接好,打开用户板电源;

  3.通过Keil C 的IDE 开发仿真环境UV2 下载用户程序进行仿真、调试。

  硬件说明

  1、使用用户板的晶振:仿真器晶振旁有两组跳线用来切换内部晶振和用户板晶振,当两个短路块位于仿真器晶振一侧时,默认使用仿真板上的晶振(11.0592MHz), 当两个短路块位于电容一侧时,使用用户板的晶振。

  2、为便于调试带看门狗的用户板,仿真器的复位端未与用户板复位端相连;故仿真器的复位按钮只复位仿真器,不复位用户板;若要复位用户板,请使用用户板复位按钮。

  区别

  同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS,和WINBOND等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

  不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。89S51就是在这样的背景下取代89C51的,89S51已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel公司已经停产AT89C51,将用AT89S51代替。89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX可以向下兼容89CXX等51系列芯片。同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。

  89S51相对于89C51增加的新功能包括:

  -- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!

  -- ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。

  -- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。

  -- 具有双工UART串行通道。

  -- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。

  -- 双数据指示器。

  -- 电源关闭标识。

  -- 全新的加密算法,这使得对于89S51的盗版变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。

  -- 兼容性方面:向下完全兼容51全部字系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。

  比较结果:就如同INTEL的P3向P4升级一样,虽然都可以跑Windows98,不过速度是不同的。从AT89C51升级到AT89S51 ,也是同理。和S51比起来,C51就要逊色一些,实际应用市场方面技术的进步是永远向前的。




责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯