导航:首页 > 操作系统 > 高速51单片机

高速51单片机

发布时间:2022-11-29 08:30:19

㈠ 51单片机应该掌握哪些

任何一款mcu,其基本原理和功能都是大同小异,所不同的只是其外围功能模块的配置及数量、指令系统等。对于指令系统,虽然形式上看似千差万别,但实际上只是符号的不同,其所代表的含义、所要完成的功能和寻址方式基本上是类似的。因此,对于任何一款mcu,主要应从如下的几个方面来理解和掌握:

* mcu的特点:要了解一款mcu,首先需要知道就是其ROM空间、RAM空间、IO口数量、定时器数量和定时方式、所提供的外围功能模块(Peripheral Circuit)、中断源、工作电压及功耗等等。

* 了解这些mcu Features后,接下来第一步就是将所选mcu的功能与实际项目开发的要求的功能进行对比,明确那些资源是目前所需要的,那些是本项目所用不到的。对于项目中需要用到的而所选mcu不提供的功能,则需要认真理解mcu的相关资料,以求用间接的方法来实现,例如,所开发的项目需要与PC机COM口进行通讯,而所选的mcu不提供UART口,则可以考虑用外部中断的方式来实现;

* 对于项目开发需要用到的资源,则需要对其Manua*进行认真的理解和阅读,而对于不需要的功能模块则可以忽略或浏览即可。对于mcu学习来讲,应用才是关键,也是最主要的目的。

* 明确了mcu的相关功能后,接下来就可以开始编程了。对于初学者或初次使用此款mcu的设计者来说,可能会遇到很多对mcu的功能描述不明确的地方,对于此类问题,可以通过两种方法来解决,一种是编写特别的验证程序来理解资料所述的功能;另一种则可以暂时忽略,程序设计中则按照自己目前的理解来编写,留到调试时去修改和完善。前一种方法适用于时间较宽松的项目和初学者,而后一种方法则适合于具有一定mcu开发经验的人或项目进度较紧迫的情况;

* 指令系统千万不要特别花时间去理解。指令系统只是一种逻辑描述的符号,只有在编程时根据自己的逻辑和程序的逻辑要求来查看相关的指令即可,而且随着编程的进行,对指令系统也会越来越熟练,甚至可以不自觉地记忆下来;

mcu的基本功能:

对于绝大多数mcu,下列功能是最普遍也是最基本的,针对不同的mcu,其描述的方式可能会有区别,但本质上是基本相同的:

* Timer(定时器):Timer的种类虽然比较多,但可归纳为两大类:一类是固定时间间隔的Timer,即其定时的时间是由系统设定的,用户程序不可控制,系统只提供几种固定的时间间隔给用户程序进行选择,如32Hz,16Hz,8Hz等,此类Timer在4位mcu中比较常见,因此可以用来实现时钟、计时等相关的功能;另一类则是Programmable Timer(可编程定时器),顾名思义,该类Timer的定时时间是可以由用户的程序来控制的,控制的方式包括:时钟源的选择、分频数(Prescale)选择及预制数的设定等,有的mcu三者都同时具备,而有的则可能是其中的一种或两种。此类Timer应用非常灵活,实际的使用也千变万化,其中最常见的一种应用就是用其实现PWM输出(具体的应用,后续会有特别的介绍)。由于时钟源可以自由选择,因此,此类Timer一般均与Event Counter(事件计数器)合在一起;

* IO口:任何mcu都具有一定数量的IO口,没有IO口,mcu就失去了与外部沟通的渠道。根据IO口的可配置情况,可以分为如下几种类型:

** 纯输入或纯输出口:此类IO口有mcu硬件设计决定,只能是输入或输出,不可用软件来进行实时的设定;

** 直接读写IO口:如MCS-51的IO口就属于此类IO口。当执行读IO口指令时,就是输入口;当执行写IO口指令则自动为输出口;

** 程序编程设定输入输出方向的:此类IO口的输入或输出由程序根据实际的需要来进行设定,应用比较灵活,可以实现一些总线级的应用,如I2C总线,各种LCD、LED Driver的控制总线等;

** 对于IO口的使用,重要的一点必须牢记的是:对于输入口,必须有明确的电平信号,确保不能浮空(可以通过增加上拉或下拉电阻来实现);而对于输出口,其输出的状态电平必须考虑其外部的连接情况,应保证在Standby或静态状态下不存在拉电流或灌电流。

* 外部中断:外部中断也是绝大多数mcu所具有的基本功能,一般用于信号的实时触发,数据采样和状态的检测,中断的方式由上升沿、下降沿触发和电平触发几种。外部中断一般通过输入口来实现,若为IO口,则只有设为输入时其中断功能才会开启;若为输出口,则外部中断功能将自动关闭(ATMEL的ATiny系列存在一些例外,输出口时也能触发中断功能)。外部中断的应用如下:

** 外部触发信号的检测:一种是基于实时性的要求,比如可控硅的控制,突发性信号的检测等;而另一种情况则是省电的需要;

** 信号频率的测量;为了保证信号不被遗漏,外部中断是最理想的选择;

** 数据的解码:在遥控应用领域,为了降低设计的成本,经常需要采用软件的方式来对各种编码数据进行解码,如Manchester和PWM编码的解码;

** 按键的检测和系统的唤醒:对于进入Sleep状态的mcu,一般需要通过外部中断来进行唤醒,最基本的形式则是按键,通过按键的动作来产生电平的变化;

* 通讯接口:mcu所提供的通讯接口一般包括SPI接口,UART,I2C接口等,其分别描述如下:

** SPI接口:此类接口是绝大多数mcu都提供的一种最基本通讯方式,其数据传输采用同步时钟来控制,信号包括:SDI(串行数据输入)、SDO(串行数据输出)、SCLK(串行时钟)及Ready信号;有些情况下则可能没有Ready信号;此类接口可以工作在Master方式或Slave方式下,通俗说法就是看谁提供时钟信号,提供时钟的一方为Master,相反的一方则为Slaver;

** UART(Universal Asynchronous Receive Transmit):属于最基本的一种异步传输接口,其信号线只有Rx和Tx两条,基本的数据格式为:Start Bit + Data Bit(7-bits/8-bits) + Parity Bit(Even, Odd or None) + Stop Bit(1~2Bit)。一位数据所占的时间称为Baud Rate(波特率)。对于大多数的mcu来讲,数据为的长度、数据校验方式(奇校验、偶校验或无校验)、停止位(Stop Bit)的长度及Baud Rate是可以通过程序编程进行灵活设定。此类接口最常用的方式就是与PC机的串口进行数据通讯。

** I2C接口:I2C是由Philips开发的一种数据传输协议,同样采用2根信号来实现:SDAT(串行数据输入输出)和SCLK(串行时钟)。其最大的好处是可以在此总线上挂接多个设备,通过地址来进行识别和访问;I2C总线的一个最大的好处就是非常方便用软件通过IO口来实现,其传输的数据速率完全由SCLK来控制,可快可慢,不像UART接口,有严格的速率要求。

* Watchdog(看门狗定时器):Watchdog也是绝大多数mcu的一种基本配置(一些4位mcu可能没有此功能),大多数的mcu的Watchdog只能允许程序对其进行复位而不能对其关闭(有的是在程序烧入时来设定的,如Microchip PIC系列mcu),而有的mcu则是通过特定的方式来决定其是否打开,如Samsung的KS57系列,只要程序访问了Watchdog寄存器,就自动开启且不能再被关闭。一般而言watchdog的复位时间是可以程序来设定的。Watchdog的最基本的应用是为mcu因为意外的故障而导致死机提供了一种自我恢复的能力。

mcu程序的编写:

mcu的程序的编写与PC下的程序的编写存在很大的区别,虽然现在基于C的mcu开发工具越来越流行,但对于一个高效的程序代码和喜欢使用汇编的设计者来讲,汇编语言仍然是最简洁、最有效的编程语言。对于mcu的程序编写,其基本的框架可以说是大体一致的,一般分为初始化部分(这是mcu程序设计与PC最大的不同),主程序循环体和中断处理程序三大部分(见图1 a 和 b),其分别说明如下:

* 初始化:对于所有的mcu程序的设计来讲,出世化是最基本也是最重要的一步,一般包括如下内容:

** 屏蔽所有中断并初始化堆栈指针:初始化部分一般不希望有任何中断发生;

** 清除系统的RAM区域和显示Memory:虽然有时可能没有完全的必要,但从可靠性及一致性的角度出发,特别是对于防止意外的错误,还是建议养成良好的编程习惯;

** IO口的初始化:根据项目的应用的要求,设定相关IO口的输入输出方式,对与输入口,需要设定其上拉或下拉电阻;对于输出口,则必须设定其出世的电平输出,以防出现不必要的错误;

** 中断的设置:对于所有项目需要用到的中断源,应该给予开启并设定中断的触发条件,而对于不使用的多余的中断,则必须给予关闭;

** 其他功能模块的初始化:对于所有需要用到的mcu的外围功能模块,必须按项目的应用的要求进行相应的设置,如UART的通讯,需要设定Baud Rate,数据长度,校验方式和Stop Bit的长度等,而对于Programmer Timer,则必须设置其时钟源,分频数及Reload Data等;

** 参数的出世化:完成了mcu的硬件和资源的出世化后,接下来就是对程序中使用到的一些变量和数据的初始化设置,这一部分的初始化需要根据具体的项目及程序的总体安排来设计。对于一些用EEPROM来保存项目预制数的应用来讲,建议在初始化时将相关的数据拷贝到mcu的RAM,以提高程序对数据的访问速度,同时降低系统的功耗(原则上,访问外部EEPROM都会增加电源的功耗)。

* 主程序循环体:大多数mcu是属于长时间不间断运行的,因此其主程序体基本上都是以循环的方式来设计,对于存在多种工作模式的应用来讲,则可能存在多个循环体,相互之间通过状态标志来进行转换。对于主程序体,一般情况下主要安排如下的模块:

** 计算程序:计算程序一般比较耗时,因此坚决反对放在任何中断中处理,特别是乘除法运算;

** 实时性要求不高或没有实时性要求的处理程序;

** 显示传输程序:主要针对存在外部LED、LCD Driver的应用;

* 中断处理程序:中断程序主要用于处理实时性要求较高的任务和事件,如,外部突发性信号的检测,按键的检测和处理,定时计数,LED显示扫描等。一般情况下,中断程序应尽可能保证代码的简洁和短小,对于不需要实时去处理的功能,可以在中断中设置触发的标志,然后由主程序来执行具体的事务——这一点非常重要,特别是对于低功耗、低速的mcu来讲,必须保证所有中断的及时响应。

* 对于不同任务体的安排,不同的mcu其处理的方法也有所不同。例如,对于低速、低功耗的mcu(Fosc=32768Hz)应用,考虑到此类项目均为手持式设备和采用普通的LCD显示,对按键的反应和显示的反应要求实时性较高,应此一般采用定时中断的方式来处理按键的动作和数据的显示;而对于高速的mcu,如Fosc>1MHz的应用,由于此时mcu有足够的时间来执行主程序循环体,因此可以只在相应的中断中设置各种触发标志,并将所有的任务放在主程序体中来执行;

* 在mcu的程序设计中,还需要特别注意的一点就是:要防止在中断和主程序体中同时访问或设置同一个变量或数据的情况。有效的预防方法是,将此类数据的处理安排在一个模块中,通过判断触发标志来决定是否执行该数据的相关操作;而在其他的程序体中(主要是中断),对需要进行该数据的处理的地方只设置触发的标志。——这可以保证数据的执行是可预知和唯一的。

总之,对于mcu开发来讲,必须记住一点:“条条大路通罗马”,没有做不到的事,关键是看方法是否正确!再就是多做多动手和多想。

㈡ 80C51单片机引脚图及引脚功能介绍

单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。

1、电源:

(1)VCC - 芯片电源,接+5V;

(2) VSS - 接地端;

2、时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。

3、控制线:控制线共有4根,

(1)ALE/PROG:地址锁存允许/片内EPROM编程脉冲。

ALE功能:用来锁存P0口送出的低8位地址。

PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。

(2) PSEN:外ROM读选通信号。

(3)RST/VPD:复位/备用电源。

RST(Reset)功能:复位信号输入端。

VPD功能:在Vcc掉电情况下,接备用电源。

(4)EA/Vpp:内外ROM选择/片内EPROM编程电源。

EA功能:内外ROM选择端。

Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。

(2)高速51单片机扩展阅读:

80c51单片机简介:

MCS-51具有典型的结构,完善的总线,SFR集中管理模式,位操作系统和丰富的控制功能指令统,为MCU的发展奠定了良好的基础。

MCS-51系列的典型芯片是80C51(CHMOS 8051)。出于这个原因,许多制造商已经开始以80C51为代表的8位微控制器的开发,如飞利浦,达拉斯,ATMEL等。我们将这些公司生产的80C51兼容微控制器称为80C51系列。

特别是近年来,80C51系列取得了很大的进步,并推出了一些新产品,主要是为了提高单片机的控制功能,如高速I / O口,ADCPWM,WDT,低电压,微功耗,电磁兼容性,串行扩展总线和控制网络总线。

此外,ATMEL公司开发的89CXX系列将闪存(EEPROM)集成到80C51作为用户程序存储器,不改变80C51的结构和指令系统。

㈢ 51单片机最快速度可以达到多少

单片机的速度是以MIPS(1MIPS相当于每秒钟执行1百万条指令)为单位计算的,一般的AT89S52单片机(12M晶振)的速度是1MIPS,飞利浦的单片机同样晶振下可以达到2MIPS,华邦的51可以达到3-4MIPS,STC的51可以达到12MIPS,
再考虑到晶振的影响,按照现有资料,最快的应该在STC和C8051F系列单片机之间选,STC理论上最多可以达到90MIPS(个人认为很玄乎),C8051F可以达到25-100MIPS。

㈣ 80C51单片机简介

80C51单片机属于MCS-51系列单片机,由Intel公司开发。

概述:

1、80C51有两个16位定时计数器,两个外中断,两个定时计数中断,及一个串行中断,并有4个8位并行输入口。

2、80C51内部有时钟电路,但需要石英晶体和微调电容外接,由于80C51的系统性能满足系统数据采集及时间精度的要求,而且产品产量丰富来源广,应用也很成熟,故采用来作为控制核心。

3、80C51采用40引脚双列直插式DIP,内有128Byte的RAM单元及4K的ROM。

(4)高速51单片机扩展阅读

80C51的优点及用途:

1、拥有良好的集成度;

2、自身体积较小,简易携带;

3、拥有强大的控制功能,同时运行电压比较低。

用途:

80C51主要应用于下面几种领域当中,分别是:自动化办公、机电一体化、尖端武器和国防军事领域、航空航天领域、汽车电子设备、医用设备领域、商业营销设备、计算机通讯、家电领域、日常生活和实时控制领域等。

参考资料来源:网络-80c51

㈤ 51单片机的电路算高速电路了吗

现在不能属于高速电路了。时代在发展

㈥ 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等众多品牌。

㈦ 除了cpu之外,51单片机的片内都集成了哪些外围功能部件

MCS-51单片机内部包含哪些主要逻辑功能部件有:(1)1个8位的微处理器CPU。(2)8KB的片内程序存储器Flash ROM(51子系列的Flash ROM为4KB),用于烧录运行的程序、常数数据。(3)256B的片内数据存储器RAM(51子系列的RAM为128B),在程序运行时可以随时。主要包括: 8位cpu 片内带振荡器 片内数据存储器 片内程序存储器(不一定都有) 外部程序存储器的寻址寻址功能单元 外部数据存储器的寻址寻址功能单元 布尔数据寻址单元 特殊功能寄存器寻址单元 4个8位的I/O并行接口:P0、P1、P2、P3 两个16位定时、计数器 两个优先级别的五个中断源 一个全双工的串行I/O接口,可多机通信。单片是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

㈧ 51单片机的优缺点

一、51单片机

应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。

51单片机之所以成为经典,成为易上手的单片机主要有以下特点:

特性

1、从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。

2、同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便。

3、乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘**能,作乘法时还得编上一段子程序调用,十分不便。

缺点

(虽然是经典但是缺点还是很明显的)

1、AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担

2、虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋

3、运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利

4、51单片机保护能力很差,很容易烧坏芯片

应用范围:目前在教学场合和对性能要求不高的场合大量被采用。

使用最多的器件:8051、80C51

㈨ 51单片机是什么

什么叫单片机?

答: 单片机因将其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU( Central Processing Unit)、随机存储器RAM( Random Access Memory)、只读存储器 ROM( Read Only Memory)、中断系统、定时器/计数器以及 I/O(Input/Output)接口电路等主要微型机部件集成在一块芯片上。虽然单片机只是一个芯片, 但从组成和功能上看,它已具有计算机系统的属性,为此称它为单片微型计算机 SCMC ( Single Chip Micro Computer),简称单片机。

单片机发展的历史变不长,但是单片机发展速度很快,其种类已有太多,从1位、4位、8位发展到16位、32位单片机,集成度越来越高,功能越来越强,应用也越来越广。如今高速单片机发展到300M。

单片机的分类和应用领域

1.单片机的分类

按控制应用的需要,单片机可分成为通用型和专用型两种类型。通用型单片机是一 种基本芯片,它的内部资源比较丰富,性能全面且适用性强,能覆盖多种应用需求。用户可以根据需要设计成各种不同应用的控制系统,即通用单片机有一个再设计的过程。

通过用户的进一步设计,才能组建成一个以通用单片机芯片为核心、再配以其他外部电路的应用控制系统。

2.单片机的应用领域

(1)工业自动化方面。工业生产的自动化,能使工业系统处于最佳状态、提高经济效益、改善产品质量和减轻操作人员的劳动强度。所以,自动化技术已在机械、电子、电力、石油、化工、纺织、食品等轻重工业领域中得到广泛的应用。在工业自动化技术中,无论是过程控制技术、数据采集和测控技术,还是生产线上的机器人技术,都需要有单片机的参与。在工业自动化的领域中,机电一体化技术将发挥越来越重要的作用,在这种集机械、微电子和计算机技术于一体的综合技术中,单片机将发挥越来越大的作用。

(2)仪器仪表方面。现代仪器仪表的自动化和智能化要求越来越高,对此最好使用单片机来实现。随着单片机的使用,又将加速仪器仪表向数字化、智能化、多功能化和柔

性化方向的发展。而且,单片机的使用还有助于提高仪器仪表的精度和准确度,简化结构、减小体积及质量而易于携带和使用。并具有降低成本,增强抗干扰能力,便于增 加显示、报警和自诊断等功能。

(3)家用电器方面。智能化是家用电器产品发展的趋势,而家电智能化的进一步提高就需要有单片机的参与,所以生产厂家常标榜“计算机控制”,以提高其产品的档次,例如洗衣机、电冰箱、空调、微波炉、电视机和音响视频设备等,这里所说的“计算机”实际上就是单片机。

阅读全文

与高速51单片机相关的资料

热点内容
看电视剧的免费网站下载 浏览:529
直接看的网站懂得都懂 浏览:104
夸克解压在哪个位置 浏览:522
在阿里云上开发远程服务器 浏览:570
有个人叫丧清的电影 浏览:730
androidmysql驱动 浏览:687
偷袭珍珠港国语版全部 浏览:611
美国一个电影叫什么汉 浏览:673
叔嫂外遇电影 浏览:736
露点外国电影 浏览:197
镇江服务器做棋牌游戏怎么样 浏览:855
uni小游戏源码 浏览:116
母乳在线母乳中出 浏览:783
鸿蒙为什么没有安卓彩蛋 浏览:997
可乐老师创意编程 浏览:28
七日杀如何设置专用服务器 浏览:28
主机怎么打开加密文件 浏览:19
重生收母系统小说 浏览:691
韩国电影静华 浏览:415
女的参加女儿运动会,下体塞了性爱玩具的电影 浏览:249