51单片机_51单片机中断 - CSDN
51单片机 订阅
51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。 展开全文
51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。
信息
外文名
mcu
始    祖
Intel公司始创的8004单片机
定    义
兼容Intel 8031系统的单片机统称
用    途
工业测控系统
中文名
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等众多品牌。
收起全文
精华内容
参与话题
  • 51单片机 - - 简介

    千次阅读 2018-07-21 17:11:14
    产品公司: Intel(英特尔)的:80C31、80C51、87C51,80C32、80C52、87C52等; *ATMEL(艾德梅尔)的:89C51、89C52、89C2051,89S51(RC),89S52(RC)等;...STC(国产宏晶)单片机:89c51、89c52、89c51...

     

    产品公司:

    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。

     

    一、AT89S51单片机引脚介绍
      AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin封装的双列直接PDIP封装,外形结构下图。

      芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4。。。40,其中芯片的1脚顶上有个凹点(见右图)。在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。

    1、主电源引脚(2根)
    VCC(Pin40):电源输入,接+5V电源
    GND(Pin20):接地线

    2、外接晶振引脚(2根)
    XTAL1(Pin19):片内振荡电路的输入端
    XTAL2(Pin20):片内振荡电路的输出端

    3、控制引脚(4根)
    RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
    ALE/PROG(Pin30):地址锁存允许信号
    PSEN(Pin29):外部存储器读选通信号
    EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。

    芯片实物图片

    芯片引脚功能

    4、可编程输入/输出引脚(32根)
      AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。每一根引脚都可以编程,比如用来控制电机、交通灯、霓虹灯等,开发产品时就是利用这些可编程引脚来实现我们想要的功能,尽情发挥你的想象力吧,实现你想要的:) 强大无比。。。

      PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7
      P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7 
      P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7 
      P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7

    p0 口:

    分址复用,地址/数据分时复用引脚。先有地址再有输出。

    P1口:准双向口,作为通用i/o口使用:1直接输出,2输入:区分引脚和端口,锁存器写入“1”,使输出级的FET截止

    P2口:

    P3口:

    展开全文
  • 51单片机开发流程

    万次阅读 2018-06-14 23:30:41
    第一步:首先拿出我们的开发板,开发板整机如图1所示:图1 开发板整机 第二步:我们在给单片机下载程序的时候,需要做一些准备事项。1、打开开发板的时候,请首先看下板子的相关的配件。我们需要用到的是USB的数据...

    第一步:首先拿出我们的开发板,开发板整机如图1所示:

    开发板整机

     

    第二步:我们在给单片机下载程序的时候,需要做一些准备事项。

    1、打开开发板的时候,请首先看下板子的相关的配件。我们需要用到的是USB的数据线,配的其余配件在相关的实验需要用到:如图2所示:

    2 Mini USB数据线

    2、把Mini USB连接到单片机开发板上。如图3所示:

    3 USB数据线连接单片机开发板

     

    3、我们下载的时候,单片机开发板上需要做一些跳线帽的设置。如图4上标记的红色框框所示。

    跳线帽功能设置

    1. USB线链接到开发板上

    2. 电源的跳线帽短接到右边5V处。若是想用3.3V的,跳线帽可以短接到左边,注意单片机可能不能正常工作。

    3. 在使用51单片机的时候,跳线帽短接到右边。若使用ARM模块的时候,则短接到左边(板子上有51ARM的标注)。

    4. 单片机工作和下载需要把晶振接上。

    5. 在用到USB线下载的时候,这两个跳线帽需要短接到左边。若是使用9针串口的,请短接到右边(9针串口下载,不能使用普中的,只能使用官方STC-ISP)。

    6. 复位按键。跳线帽短接到下面,高电平处。若是使用avr单片机的,需要短接到上面低电平出。(开发板有标记HL)。

    7. 单片机安装上。注意,单片机安装时候,要注意缺口朝上。若安装反了,则会短路烧毁板子。

    第三步:打开我们板子的开关电源按钮:如图5所示。

    开发板工作状态

     

    注意:若是打开开关按钮无反应,请自行检查跳线帽是否正确,看回上一个步骤。

     

    第四步:这个时候我们板子的配置已完成。现在我们需要安装开发板ch340的驱动,安装驱动成功才能下载程序。打开我们光盘。光盘资料\步骤2安装单片机开发相关软件\开发板USB转串口CH340驱动。如图6所示:

    6 CH340驱动软件

    然后,双击打开我们ch340的软件(不要在乎ch340ch341的区别,本质是一致的)。跳出的安装界面:如图7所示:

    7 CH340安装界面

     

    接下来,我们点击安装ch340。安装成功后会出现提示,如图8所示:

    驱动安装成功界面

     

    驱动安装成功后。我们可以在我们的电脑设备管理器---端口号查询到。如图9所示:

         图9 CH340的驱动端口号显示

     

    注意:如出现安装驱动失败的,解决方法。

    提示预安装成功

    1.请看回步骤2,跳线帽的配置是否正确。

    2.板子未连接到电脑上,安装ch340驱动时候,软件需要检测不到ch340驱动芯片。解决方法:板子链接到电脑上,再安装驱动。

    3.板子已经链接,还是安装失败的。 精简的电脑系统可能缺少驱动文件,不兼容,使用其他的ch340驱动软件。该软件在步骤2软件打开工具里有。

    4.安装其他的ch340驱动还不行的,请换台电脑试下。

    5.若更换操作系统还是不行的,请联系售后或技术人员。

    提示安装失败

    1.请看回步骤2,跳线帽的配置是否正确。

    2.板子已经链接,还是安装失败的。 精简的电脑系统可能缺少驱动文件,不兼容,使用其他的ch340驱动软件。该软件在步骤2软件打开工具里有。

    3.安装其他的ch340驱动还不行的,请换台电脑试下。

    4.若更换操作系统还是不行的,请联系售后或技术人员。

     

     

     

    到这一步为止,我们的配置方面已经成功了,80%。剩下怎么下载程序了,下面我们会详细的教大家操作。

    打开我们的光盘资料,找到光盘资料\步骤2安装单片机开发相关软件\烧录软件,烧录软件如图10所示:

    10 PZ自动下载软件

     

    双击点开我们的普中自动下载软件:如图11所示:

    11 普中自动下载软件界面

     

    然后,在这个软件上,我们需要选择配置。如图12所示:

    12 配置界面设置

     

    1. 选择对应的芯片类型。因为我们使用的是51单片机,所有这里我们选择STC90C5XX系列的,若使用stm32的,则选择stm32。若是使用其他型号的,没有选择的,则要使用其支持的下载软件。

    2. 打开所需要下载的hex文件,这里我们选择实验内容的第一个例程,LED例程。该hex文件的路径在 光盘资料下:光盘资料\步骤3 51单片机例程\1LED\左右跑马灯\C版。如图13所示:

    13 选择hex文件

     

    3. 打开所需要下载的hex文件之后,我们点击下载。如图14所示:

    14 下载成功界面

    注意:出现下载失败的,如何解决?

      1)跳线帽是否连接好

      2)擦除下载失败-------波特率调低一点

      3) 波特率超时----------低速下载

         4)单片机芯片重新安装下

      5) 无法打开文件------管理员身份运行普中自动下载软件。

      6)若按照上述情况还不行的,则使用STC-ISP官方下载软件。该软件在步骤2单片机开发工具中,使用方法按照里面的操作说明文档教程操作。

     

    大家按照我们步骤到这里已经下载成功了。但是,大家不要心急,我们下载完成后,其实还没有成功。我们的板子需要接线到对应的模块上。

    因为我们的板子是模块是组合型的,大家需要手动的接线。如图15所示:

           图15 开发板接线图

    接好线之后,大家就可以看到 LED实验里 跑马灯的效果了。

    其它的实验步骤跟这个是一致的,需要手动接线到对应的模块。

    展开全文
  • 51单片机之串口通信

    万次阅读 多人点赞 2018-05-15 15:59:13
    好记性不如烂笔头,以前总以为自己记性比较好,但事实总是一次一次的打我脸,刚开始学习单片机的时候在串口通信这一块发了一段时间,才将这一块弄懂了个七七八八,这几天回头想一下那一方面的知识,感觉忘得差不多了...

        好记性不如烂笔头,以前总以为自己记性比较好,但事实总是一次一次的打我脸,刚开始学习单片机的时候在串口通信这一块发了一段时间,才将这一块弄懂了个七七八八,这几天回头想一下那一方面的知识,感觉忘得差不多了,现在重新理一遍,里面的程序大部分都是以前抄袭大佬的,但具体是哪一位大佬的博客现在也找不到了,希望大佬见谅。

        首先了解串口通信先要熟悉SCON,PCON,TMOD三个寄存器

        串口工作方式寄存器SCON,

    D7D6D5D4D3D2D1D0
    功能SM0SM1SM2RENTB8RB8TIRI

    RI:接收中断标志位,数据接收结束时,标志位会自动置1,需要通过程序将其置0

    TI:发送中断标志位,数据发送结束时,标志位会自动置1,需要通过程序将其置0

    RB8:存放发送数据的第9位

    TB8:存放接收数据的第9位

    REN:串行接收允许位,0允许串行接收,1禁止串行接收

    SM2:多机控制位

    SM1,SM0:串行工作方式

    SM0SM1方式说明波特率
    000移位寄存器fosc/12
    01110位异步收发器(8位数据)可变
    10211位异步收发器(9位数据)fosc/64或fosc/32
    11311位异步收发器(9位数据)可变

        PCON寄存器

    D7D6D5D4D3D2D1D0
    功能SMOD-------

    SOMD:波特率是否加倍选择位,0波特率不加倍,1波特率加倍

        定时器工作方式寄存器TMOD

    D7D6D5D4D3D2D1D0
    功能GATEC/TM1M0GATEC/TM1M0

    高四位为定时计数器1的设置,低四位是定时计数器0设置,串口通信波特率设置占用定时计数器1,这里主要说串口通信,不过多说定时计数器,只需要设置定时计数器1的工作方式即可

    振荡周期:也称时钟周期(频率的倒数),单片机提供时钟信号的振荡源周期,频率一般有11.0592MHz,12MHz等

    状态周期:是时钟周期的2倍,

    机器周期:是包含6个状态周期,机器周期=1/单片机时钟频率

    单片机时钟频率:是外部时钟的12分频,如果是12MHz的晶振,机器周期=1/单片机时钟频率=1/(12MHz/12)=12/12M=1us

    这里一个机器周期为1us,若定时时间为1ms,则需要1000个机器周期,计算出初值;如果机器周期为2us,则只需要500个机器周期。

    定时器初值计算:初值=(65536-机器周期数量)


    波特率计算:

    当串口工作在工作方式0和2是,波特率固定,方式0时fosc/12;方式2时fosc/32或fosc/64(根据SMOD判断)。

    当串口工作在方式1时,波特率=(2^SMOD/32)*(单片机时钟频率/(256-X)),X是初值

    C/T:定时器和计数器选择位,0为定时器,1为计数器

    M1M0工作方式
    00

    工作方式0:为13位定时/计数器

    01工作方式1:为16位定时/计数器
    10工作方式2:8位初值自动重装定时/计数器
    11工作方式3:仅适用于T0,分成两个8位计数器,T1停止计数

    下面是程序结构和代码:


    mian.c

    #include "main.h"
    uchar UartRxBuffer[ 64 ] = { 0 };			//uart串口接收数据
    uchar	TX_Cnt = 0;		//发送计数
    uchar	RX_Cnt = 0;		//接收计数
    bit TX_Busy = 0;	  //发送忙标志
    void main()
    {
    	uart_init();
    	while(1)
    	{
    		if((TX_Cnt!=RX_Cnt)&&(!TX_Busy))
    		{
    			//将数组中的数据放入到发送缓冲区
    			SBUF=UartRxBuffer[TX_Cnt];			
    			if(++TX_Cnt>=64)
    			{
    				TX_Cnt=0;
    			}
    			TX_Busy==1;
    		}	
    	}
    }
    
    /*************************************************
    函数:串口程序
    功能:将接收到的数据存入到UartRxBuffer
    *************************************************/
    void UART_INT (void) interrupt 4
    {
    	if(RI)
    	{
    		RI = 0;
    		UartRxBuffer[RX_Cnt] = SBUF;//将数据写入数组
    		//防止溢出,当计数=16时,将计数清零
    		if(++RX_Cnt >= 64){
    			RX_Cnt = 0;
    		}
    	}
    	if(TI)
    	{
    		TI = 0;
    		TX_Busy = 0;
    	}
    }

    mcu_uart.c

    #include "mcu_uart.h"
    
    /*************************************************
    函数:uart_init
    功能:初始化串口
    出口:void
    入口:void
    *************************************************/
    void uart_init()
    {
        SCON = 0x50;//设置串口工作方式1
        TMOD = 0x20;//设置计数器工作方式2
        PCON = 0x00;//即SMOD=1,波特率不加倍
        TH1 = 0xFD;//计数器初值,波特率是9600,晶振为11.0592MHz
        TL1 = 0xFD;
        ES = 1;//打开接收中断
        EA = 1;//打开总中断
        TR1 = 1;//打开计数器		
    }
    
    /*************************************************
    函数:uart_tx_byte
    功能:串口发送一个字节
    出口:void
    入口:一个字节
    *************************************************/
    void uart_tx_byte(uchar str)
    {
    	SBUF=str;
    	while(!TI);
    	TI==0;
    }
    /*************************************************
    函数:uart_tx_string
    功能:串口发送一个字符串
    出口:void
    入口:字符串数组
    *************************************************/
    void uart_tx_string(uchar *str)
    {
    	while(*str!='\0')
    	{
    		uart_tx_byte(*str++);
    	}
    }
    
    /*************************************************
    函数:uart_rx_string
    功能:串口接收一个字符串
    出口:字符串的长度
    入口:字符串数组
    *************************************************/
    uchar uart_rx_string( uchar* RxBuffer )
    {
    	uchar rxLength = 0;
    	uint uartRxTimOut = 0x7FFF;	
    	while( uartRxTimOut-- )
    	{
    		if( 0 != RI )
    		{
    			RI = 0;	
    			*RxBuffer = SBUF;
    			RxBuffer++;
    			rxLength++;
    			uartRxTimOut = 0x7FFF;
    		}
    	}	
    	return rxLength;
    }

    mian.h

    #ifndef __MAIN_H__
    #define __MAIN_H__
    
    #include "mcu_uart.h"
    
    #endif

    mcu_uart.h

    #ifndef __MCU_UART_H__
    #define __MCU_UART_H__
    
    #include "mcu_type.h"
    
    void uart_init();
    #endif

    mcu_type.h

    #ifndef __MCU_TYPE_H__
    #define __MCU_TYPE_H__
    
    #include <reg52.h>
    /*无符号*/
    typedef unsigned char 			uchar;
    typedef unsigned int 				uint;
    
    #endif

    展开全文
  • 51单片机——51单片机入门基础知识

    万次阅读 多人点赞 2018-07-20 19:38:07
    MSC-51单片机指以8051为核心的单片机,由美国的Intel公司在1980年推出,80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列。 单片机:在一片集成电路芯片上集成...

    第一部分。单片机简介

    MSC-51单片机指以8051为核心的单片机,由美国的Intel公司在1980年推出,80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列。

    单片机:在一片集成电路芯片上集成微处理器(CPU)、存储器(ROM和RAM)、I/O接口电路,从而构成了单芯片微型计算机,即单片机(single chip Microcomputer)也叫微控制器(MCU)。

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

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

    ROM (Read-Only Memory):用以存放程序、一些原始数据和表格;

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

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

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

    单片机为TTL电平: +5V       0V

    RS232电平:计算机的串口    -12V     +12V

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

    数字电路的点评特性据定了他只能用二级制:

    二进制逻辑运算,与或非和异或

    数据类型:

    因为51单片机是8位的,所以他的数据类型一般用unsigned char 

    第二部分。引脚简介

    1.  电源引脚:Vcc (40脚):电源端,接+5V电源。

    Vss(Gnd) (20脚):接地端,接+5V电源地端

    2. 外接晶体引脚:XTAL1和XTAL2

    89C51内部有一个振荡器和时钟产生电路。

    XTAL1(19脚):   片内振荡电路反相放大器输入

    XTAL2(18脚):片内振荡电路反相放大器输出 当采用内部时钟时,片外连接石 英晶体和微调电容,产生原始 的振荡脉冲信号。

    采用外部时钟时, XTAL1输入 外部时钟脉冲信号, XTAL2悬空.

    3. 控制信号引脚:RST、ALE、PSEN、EA

    RST (9脚) : 复位信号输入端,高电平有效。

              保持两个机器周期高电平时,完成复位操作。

    ALE/PROG (30脚) :

    地址锁存允许输出端/编程脉冲输入端

    正常时,连续输出振荡器频率的1/6正脉冲信号。

    访问片外存储器时:

    作为锁存P0口低8位地址的控制信号。

    对8751片内 ROM编程写入时:作为编程脉冲输入端。

    PSEN (29脚): 外部程序存储器读选通输出信号

    访问片外ROM时,输出负脉冲作为读ROM选通.

    常连接到片外ROM芯片的输出允许端(OE)作外部ROM的读选通信号。

    EA/Vpp (31脚):

    外部程序存储器地址使能输入/编程电压输入端.   平常,接“1”时,CPU访问片内4KB的ROM,当地址超4KB时,自动转向片外ROM中的程序。当接“0”时,CPU只访问片外ROM。 第2功能Vpp              对8051编程时,编程电压输入端。

    4. 输入/输出端口引脚 P0、P1、P2、P3

    4个8位的并行输入/输出端口,共32个引脚。作为通用输入/输出端口

    通用输入/输出端口

         准双向口:  作输入时要先对锁存器写“1”。默认启动初始化为高电平

    P0端口(P0.0—P0.7,第39—32脚):

          漏极开路的准双向口, 内部没有上拉电阻,为搞阻状态,不能正常输出高低电平,做I/O时需要接上拉电阻(10K)

    P1端口(P1.0—P1.7,第1—8脚):

          内部带上拉电阻的准双向口,在做输入时要先1

    P2端口(P2.0—P2.7,第21—28脚):

          内部带上拉电阻的准双向口,与P1相似

    P3端口(P3.0—P3.7,第10—17脚):

          内部带上拉电阻的准双向口,做I/O时与P1相似,另外有第二功能

    P3口的第二功能

     

    展开全文
  • 电子设计从这开始——51单片机25个小作品

    万次阅读 多人点赞 2020-02-18 20:00:08
    这是大二我做某实验室管理员,为了方便自己管理整理,都是一些51单片机的小作品,适合给刚学完51单片机的新手练手 一目录 1基于51单片机的火灾温度烟雾报警器 2基于51单片机的声光电子琴 3基于51单片机的音乐喷泉 4...
  • 51单片机【一】背景 计时器

    千次阅读 2018-11-17 18:39:04
    单片机(Microcontrollers)MCU 是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示...
  • 51单片机汇编教程

    万次阅读 多人点赞 2018-03-23 18:59:28
    很多电子爱好者,都想学习单片机这门技术。下面的这一系列教程是 www.51hei.com 专门为初学者入门而准备的,从底层硬件入手基于汇编和c两种语言,详细的介绍了单片机的原理,指令,寄存器,以及接口等,后面还为你...
  • 巫妖王51单片机开发板配套视频课程

    万人学习 2020-02-28 19:26:33
    本课程是巫妖王51单片机开发板的配套视频课程,本课程的目标是用少的时间带大家初级入门51单片机。配合巫妖王51单片机开发板,让大家花费少的时间少的钱就能轻松开启单片机学习之路。
  • 下载地址: 郭天祥 新概念51单片机C语言教程.入门、提高、开发.pdf下载地址
  • STM32单片机和51单片机区别

    万次阅读 多人点赞 2018-04-16 20:13:04
    单片机简介单片微型计算机简称单片机,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件,在我们自己...51单片机和STM32单片机...
  • 51单片机最小系统的制作和程序烧录

    万次阅读 2017-09-06 13:18:57
    这篇博客就来分享一下51单片机最小系统的制作以及怎么下载程序 首先准备的材料有:一块板子,一块89c51/52的芯片,一个51芯片插座,12MHZ的晶振,一个10的电阻,一个10uf的电解电容 两个20-33pf的瓷片电容,线...
  • ESP8266 AT指令设置及51单片机的控制

    万次阅读 多人点赞 2020-09-09 08:39:23
    ESP8266 AT指令设置及51单片机的控制 (献给正在学习路上的兄弟姐妹们) 对于ESP8266模块好多刚接触的朋友们第一感觉就是价格的确很便宜,然而初次接触它时你也许会对它束手无策,因为关于怎样使用它,官方给出的...
  • 【单片机】 51单片机与STM32的区别

    千次阅读 2019-04-25 09:00:07
    51单片机是对所有兼容Intel 8031指令系统的单片机的统称。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。  STM32系列基于专为要求高性能、低成本、低...
  • 51单片机无法烧录程序的N种解决办法 有没有掉电!!!如果没有自动掉电的电路时,需要手动掉电; 单片机的晶振有没有安装好,是否有缺失,晶振的负载电容是否合适; CH340的TXD,RXD要与单片机的TXD,RXD反接,CH...
  • 51单片机蜂鸣器程序

    万次阅读 2020-08-06 16:06:51
    #include"reg52.h" typedef unsigned char u8; typedef unsigned int u16; sbit beep=P1^5; void delay(u16 i) { while(i--); } void main() { while(1) { beep=~beep; delay(1000);//控制音调频率 beep=~be
  • 51单片机闪烁LED灯程序

    万次阅读 2020-08-06 15:32:36
    #include"reg52.h" typedef unsigned char u8; typedef unsigned int u16; sbit led=P2^0; void delay(u16 i) { while(i--); } void main() { while(1) { led=0; delay(50000);... le...
  • 基于51 单片机的串口收发数据

    万次阅读 热门讨论 2018-10-23 20:43:00
    大多数51单片机用的都是11m晶振而只有少部分用的是奇葩的12m(楼主的就是),在12m晶振进行串口通信时切忌要将波特率设置为4800以下,应为12m晶振的波特率在9600以上误差很大容易丢失数据,动手能力强的可以折腾一下用...
  • 51单片机引脚详解

    万次阅读 2016-09-22 21:14:21
    一、51单片机引脚图  图 1 二、引脚说明 主电源引脚(2根) VCC(Pin40):电源输入,接+5V电源 GND(Pin20):接地线 2、外接晶振引脚(2根) XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内...
  • 最近有同学在51单片机的学习过程中困扰如何使用单片机串口在上位机串口助手上输出显示的问题,其实很多开发环境都支持使用C语言里面最常用的printf函数,Keil中也不例外,不仅仅是C52、keil下其他51系列单片机如STC...
  • 基于51单片机的LCD1602电子时钟

    千次阅读 2020-06-07 06:54:17
    (2)基于51单片机用LCD1602实现分秒的计时; (3)按键控制分秒的调整(两个按键分别控制分和秒的增加); (4)能实现整时报时的功能(蜂鸣器响); (5)了解下载模块、下载原理; (6)基本上了解并使用DXP...
1 2 3 4 5 ... 20
收藏数 48,472
精华内容 19,388
关键字:

51单片机