⑴ 什么是51系列单片机
51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,
后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。51单片机即是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是52系列的单片机一般不具备自编程能力。 当前常用的51系列单片机主要产品有: *Intel的:80C31、80C51、87C51,80C32、80C52、87C52等; *ATMEL的:89C51、89C52、89C2051等; *Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品。
⑵ C51单片机与MCS51单片机一样吗
都是51系列的单片机,严格意义上都应该叫MCS51,至于C51一般应该是指51单片机的C语言编译环境。
⑶ 单片机牛人请进!!8051 ,80C51 ,MCS-51这三者的区别是什么
8051,80C51,MCS-51区别为:包含不同、存储格式不同、组成不同。
一、包含不同
1、8051:8051属于MCS-51系列单片机,由Intel公司开发,是8048的延伸。
2、80C51:80C51属于MCS-51系列单片机,由Intel公司开发,是8051的延伸。
3、MCS-51:MCS-51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括8031,8051,80C51,8751,8032,8052,8752等。
二、存储格式不同
1、8051:8051的存储格式为4KB ROM、128BRAM。
2、80C51:80C51的存储格式为4KB EEPROM、128BRAM。
3、MCS-51:MCS-51的存储格式为把4kROM换为EEPROM就是51系列的结构,如去掉ROM/EEPROM部分即为31系列,如果将ROM置换为Flash存贮器或EEPROM,或再省去某些I/O,即可得到51系列的派生品种。
三、组成不同
1、8051:8051包括运算器和控制器两部分。
2、80C51:80C51包括运算器、控制器、工作寄存器及特殊功能寄存器(SFR)。
3、MCS-51:MCS-51包括运算器、控制器、片内振荡器、特殊功能寄存器、定时器、计数器位处理器等。
⑷ 什么是MCS-51单片机
……这个从何说起?简单点说:是一个控制芯片、能对其编程、使其进行逻辑工作。51单片机有40个引脚、每一个引脚都有他的功能。上别的地方查资料去……因为我用的手机回答的问题……实在记不清哪几个脚是干什么的了……也不标准、祝你成功。
⑸ 51单片机是什么
是型号MCS-51系列.所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Memory)、定时器、I/0(Input/Output)接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。虽然单片机只是一个芯片,但从组成和功能上看,它已具有了微型计算机系统的含义。中文“单片机”的称呼由英文名称“Single Chip Microcomputer”直接翻译而来。单片机把微型计算机的各主要部分集成在一块芯片上,大大缩短了系统内信号传送距离,从而提高了系统的可靠性及运行速度。因而在工业测控领域中,单片机系统是最理想的控制系统。所以,单片机是典型的嵌人式系统,是嵌入式系统低端应用的最佳选择
⑹ 51单片机与mcs51单片机什么关系
1、51单片机和mcs51单片机是一个概念,MCS51是指由美国INTEL公司生产的一系列单片机的总称,INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,关于这个疑问你可以到网上搜一下就明白了。
2、至于你说51开发板有没有买的必要?我认为如果你有时间自己去买元件自己焊接一个玩,这对你的提高会很大很大;当然自己去买个开发板学习也行,现在应该不贵;学51单片机就是不断的去编程实践。
3、不知你是大几的学生,不过你刚接触单片机就能提出这些问题,说明你真的不错,相信你能学好。
⑺ mcs 51系列单片机
1.coms工艺
2.利用编程器将用户程序送人单片机的存储器,检查程序,修改程序,监视单片机的工作状态。
3.51有5个中断源
4.Mcs-51是8位单片机;I/O的特点有具有双向通道,数据锁存,输入缓冲;P3.0和P3.1分别是串行输入口和WR串行输出口;作为输入时应该注意*****。
5.Mcs-51单片机中振荡电路,片内有一个高增益反向放大器,用于构成振荡器。外接晶振,反相器的输入端和输出端跨接石英晶体和两个电容就构成了稳定的自激振荡器。
6.51单片机的封装引脚有三种类型:40脚DIP,44脚PLCC,48脚DIP,52脚PLCC,68脚PLCC。引脚定义:1--8:P0.0--0.7,9:RST/Vpd,10--17:P3.0-P3.7,18:XTAL2,19:XTAL1,20:Vss,21--28:P2.0-P2.7,29:~PSEN ,30:ALE/~PROG,31:~EA/pp,32--39:P0.7-P0.0,40:Vcc。
7.单片机片内,片外存储器的选择:(程序存储器)由硬件控制信号~EA/Vpp决定,(数据存储器)由软件指令是MOVX还是MOV决定;
8.MCS-51的程序存储器用于存放运算中间结果。
9.PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。
10.决定程序执行顺序的寄存器是程序计数器PC。
11.ALE引脚的特点:(访问外部存储器时)信号上升沿可作16为地址低8位的所存信号,信号在两个机器周期中出现一次;(不访问时)向外输出振荡频率1/6的脉冲信号,可作其他外部接口的时钟信号。通过该信号可以判断 CPU是否正常工作
12.MOVC的功能:用于读取程序存储器表格的数据传送
13:51的指令寄存器是对指令寄存器中的指令进行译码,将指令转变为执行此指令所需的电信号。
完整的指令格式:由操作码和操作数组成
DAC0832的输入电平与TTL电平兼容。
AD与DA的作用是:AD的作用是把模拟信号转换成数字信号,DA的作用是把数字信号转换成模拟信号。 0809是8位的AD转换器及有11个模拟输入通道,4位地址输入选择。17. DAC0832是电流输出型数模转换芯片,分辨率8位,三种工作方式:直通,单缓冲,双缓冲。
单片机的复位电路的特点:简单而重要,上电复位靠电容充电,按键复位靠RC微分电路产生正脉冲和电阻与VCC电源接通。是第9引脚复位。单片机开始工作前需要复位,单片机受到干扰后程序跑飞需要复位。
单片机最小系统硬件设计图。由复位电路、晶振电路和单片机组成,单片机~EA端一般接高。
MCS—51单片机最小系统的振荡周期,机器周期,时钟周期的关系:12个振荡周期=1个机器周期=6个时钟周期。
8051在存储结构上采用哈佛结构。
串行通信中按数据流的方向分成哪三种基本的传送方式,
8051与8031的区别是:有无ROM存储器。
程序状态字寄存器PSW的特点:保存指令执行结果的特征信息。由硬件自动生成。
计算机总线的分类:数据总线,地址总线,控制总线。或片内总线,片外总线。
80C51单片机的程序存储器最大寻址范围256B。
编程:跑马灯程序编写:8个发光二极管流水灯程序编写
LED跑马灯(从右至左)
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<255;i++);
}
}
void main()
{
P1=0xfe;
while(1)
{ if(P1==0x7f)
P1=0xfe;
else
P1=_crol_(P1,1);
DelayMS(80);
}
}
LED跑马灯(从左至右)
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<255;i++);
}
}
void main()
{
P1=0x7f;
while(1)
{ if(P1==0xfe)
P1=0x7f;
else
P1=_cror_(P1,1);
DelayMS(40);
}
}
LED跑马灯(左右循环)
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<255;i++);
}
}
void main()
{
uchar i;
P1=0x7f;
while(1)
{
for(i=0;i<7;i++)
{P1=_cror_(P1,1);
DelayMS(40); }
for(i=0;i<7;i++)
{P1=_crol_(P1,1);
DelayMS(40); }
}
}
单个LED的闪烁
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit LED = P1^0;
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
while(1)
{
LED = ~LED;
DelayMS(150);
}
}
连绵灯
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<255;i++);
}
}
void main()
{
P1=0x0e;
while(1)
{ if(P1==0xc1)
P1=0x0e;
else
P1=_crol_(P1,1);
DelayMS(80);
}
}
/* 花样流水灯程序 间隔300ms先奇数亮再偶数亮,循环三次;一个灯上下循环三次;两个分别从两边往中间流动三次;再从中间往两边流动三次;8个全部闪烁3次;关闭发光管,程序停止。*//*********************************************************/#include<reg52.h> //52单片机头文件#include <intrins.h> //包含有左右循环移位子函数的库#define uint unsigned int //宏定义#define uchar unsigned char //宏定义void delay(uint z) //延时函数,z的取值为这个函数的延时ms数,如delay(200);大约延时200ms.{ //delay(500);大约延时500ms. uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }void main() //主函数{ uchar a,i,j; for(j=0;j<3;j++) //寄偶交替 { P1=0x55; //点亮小灯 delay(300); //延时300毫秒 P1=0xaa; delay(300); //延时300毫秒 } for(j=0;j<3;j++) //流水灯 { a=0xfe; for(i=0;i<8;i++) { P1=a; //点亮小灯 delay(300); //延时300毫秒 a=_crol_(a,1); } } P1=0xff; for(j=0;j<3;j++) //从两边往中间流 { P1=0x7e; //点亮小灯
delay(300); //延时300毫秒 P1=0xbd; delay(300); //延时300毫秒 P1=0xdb; //点亮小灯 delay(300); //延时300毫秒 P1=0xe7; delay(300); //延时300毫秒 } P1=0xff; for(j=0;j<3;j++) //从中间往两边流 { P1=0xe7; //点亮小灯 delay(300); //延时300毫秒 P1=0xdb; delay(300); //延时300毫秒 P1=0xbd; //点亮小灯 delay(300); //延时300毫秒 P1=0x7e; delay(300); //延时300毫秒 } P1=0xff; for(j=0;j<6;j++) //全部闪烁 { P1=~P1; //点亮小灯 delay(300); //延时300毫秒 } P1=0xff; while(1);} a=_crol_(a,1); } } for(j=0;j<3;j++) { a=0xfa; for(i=0;i<5;i++) { P1=a; delay(300); a=_crol_(a,1); } } P1=0xff; for(j=0;j<3;j++) //从两边往中间流 { P1=0x7e; //点亮小灯 delay(300); //延时300毫秒 P1=0xbd; delay(300); //延时300毫秒 P1=0xdb; //点亮小灯 delay(300); //延时300毫秒 P1=0xe7; delay(300); //延时300毫秒 } P1=0xff; for(j=0;j<3;j++) //从中间往两边流 { P1=0xe7; //点亮小灯 delay(300); //延时300毫秒 P1=0xdb; delay(300); //延时300毫秒 P1=0xbd; //点亮小灯 delay(300); //延时300毫秒 P1=0x7e; delay(300); //延时300毫秒 } for(j=0;j<5;j++) { P1=0x66; delay(300); P1=0x99; delay(300); } P1=0xff; for(j=0;j<6;j++) //全部闪烁 { P1=~P1; //点亮小灯 delay(300); //延时300毫秒 } P1=0xff; while(1);}
⑻ MCS51和8051和C51单片机什么联系
MCS-51单片机是美
国INTE公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。
有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。
其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如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前期生产的巨量库存而以。
⑼ MCS-51单片机的概念我搞不清
一、MCS-51单片机有一个8位的CPU。(根据我在微机原理课中学的,应该可寻址:2的8次方=256B。)
二、可是书本上的片内为128B的ROM,8051是4KB的ROM,8751是4KB的ERROM,这个又是什么意思,很困惑,理不清。一会儿数据存储器,一会程序存储器的。拥有8位的CPU作何解释?
答:
一、你的说法,混淆了一个东西:CPU不是用来寻址的,它只负责运算,寻址有另外的组件去完成,所以8位的CPU并不妨碍单片机16位的寻址宽度。
二、通常理解ROM为程序存储器,因为它一旦烧录就不可更改。理解RAM为数据存储器,因为单片机运行时产生的临时数据经常会发生变化,存取的频率很高,故要求存储器为可读可写的。
但是在一些特殊情况下,我们需要程序也是可修改的,那么要求程序存储器为可读可写的,于是就应运而生EPROM和EEPROM,它们只是可擦得存储器而已,只不过要特殊的擦除方法。一般8751中的“7”表示内部ROM为EPROM,8951中的“9”表示内部ROM为EEPROM。