单片机入门_单片机入门教程 - CSDN
精华内容
参与话题
  • 单片机入门知识

    万次阅读 多人点赞 2017-10-26 12:43:20
    作为一个大三老狗,才开始单片机入门,晚是晚了点,但是由于知识体系比大一大二稍加完善,所以看问题也相对于更加全面,所以写下学习笔记作为分享,当然,知识水平有限,希望大神们能够给出修改意见。学习参考书:51...

    作为一个大三老狗,才开始单片机入门,晚是晚了点,但是由于知识体系比大一大二稍加完善,所以看问题也相对于更加全面,所以写下学习笔记作为分享,当然,知识水平有限,希望大神们能够给出修改意见。

    学习参考书:51单片机C语言教程(郭天祥)
    学习芯片:STC89C52

    第一篇
    单片机入门知识:
    基础知识整合:

    1. 单片机概念:
      单片机就是指的一块集成芯片,上面集成了微处理器、存储器及各种输入/输出接口。

    2. 单片机的控制原理:
      通过控制单片机的40个引脚输出的高低电平进行控制,最后达到控制内外资源的运行的目的,因为其中为一些晶体管,可以通过控制晶体管的导通状态而组成不同的逻辑电路,达到不同功能。

    3. 单片机的标号及代表意义:

    STC–前缀,表示芯片的生产公司
    8–表示芯片为8051内核
    9–(可不掌握)
    C–该器件为CMOS器件
    5–
    2–芯片内部的存储空间,1=4KB 2=8KB……
    40–芯片外部晶振最高可接入40MHz
    C–商业级 (0~70℃)
    PDIP–双列直插式
    图中为经典的PDIP封装的引脚图

    4.引脚分类:

    I/O口:P0,P1,P2,P3均为8位I/O口
    

    电源和时钟引脚:Vcc、GND、XTAL1、XTAL2
    编程控制引脚:RST、PSEN、ALE/PROG、EA/Vpp
    注意:四组I/O口的区别和常见用法
    P3每一个引脚都有第二功能!
    第二功能定义

    5.电平特性
    在我们想将编写的C程序放在单片机上执行需要几个步骤:
    1):编写C程序
    2):用keil生成.hex文件
    3):烧录程序到单片机
    在其中的第二步,需要安装keil软件
    在其中的第三步,不仅需要STC-ISP烧录软件,还需要CH340/CH341转USB串口驱动,其中就牵涉到了RS-232C的电平转换。RS232C为负逻辑电平,高电平为-12V,低电平为+12V。电脑与单片机的通信必须要有这个转USB的驱动才能成功烧录程序完成计算机和单片机的通信。

    展开全文
  • 单片机入门基础篇(一):Keil基本操作

    万次阅读 多人点赞 2018-03-28 09:38:57
    Keil uVersion 4.0(后文简称为Keil 4.0)是单片机程序开发的集成开发环境(IDE),集成了C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器。 本节以点亮一个LED为例,演示如何通过Keil新建工程、添加...
    Keil基本操作 
        文/阿丘  2018/3/28


    一、概述
        工欲善其事必先利其器。Keil uVersion 4.0(后文简称为Keil 4.0)是单片机程序开发的集成开发环境(IDE),集成了C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器。
         本节以点亮一个LED为例,演示如何通过Keil新建工程、添加源文件、编译等基本操作。

    二、Keil基本操作——以点亮一个LED项目为例
         本项目通过8051单片机的P2.0管脚控制一个红色LED, 支持两种控制模式:长亮模式和闪烁模式。电路图如下图所示,由图可知,P3.0输出低电平时,LED点亮;输出低电平时,LED熄灭。
          项目程序由一个.c和一个.h组成,其中,LedCtrl.c为主程序,演示LED的两种控制模式;led.h为LED控制实现,定义了长亮函数LED_lit(bit flag)、闪烁函数LED_flash(unsigned int interval)和软件延时函数LED_delayMS(unsigned int ms)。
          下面演示基于Keil完成本项目的开发过程。
            1. 新建工程。
            (1) 运行Keil uVision4。
            (2)选择菜单【Project>New μVersion Project】,打开Create New Project对话框。
              

             (3)设置工程保存路径和工程名称。注意,建议一个工程对应一个文件夹,方便管理。 
              
        (4)设置单片机型号。 在Select a CPU Data Base File对话框选择Generic Data Base,然后弹出的对话框中选择ATMEL>AT89C51,单击【OK】按钮。
          (5)单击【否 】按钮,选择不复制8051启动代码到工作文件。
        
     
       到此,空白工程已经建好,如下图所示。

    1.  编写代码
       (1)选择菜单【File>New】(快捷键Ctrl+N)新建一个空白文件,则进入文件编辑状态。
       (2)选择菜单【File>Save As】(快捷键Ctrl+S)将新建文件存储到工程目录LEDCtrl下,命名为led.h。
       (3)重复步骤(1)~(2),新建文件LedCtrl .c,存储路径为工程目录LEDCtrl 下。
       (4)编写led.h,代码如下:
        
    #include <reg51.h>   //导入8051特殊功能寄存器定义及其可寻址位定义
    sbit led_red = P3^0; //定义led_red变量控制P3.0引脚:
                         //输出0时(低电平),LED亮,输出1时,LED灭。

    /******************************
    *函数:LED_lit
    *功能:点亮/熄灭led_red
    *参数:bit flag: flag = 1, 点亮;flag = 0,熄灭
    *返回:无
    *****************************/
    void LED_lit(bit flag)
    {
       led_red = ~flag;  //不用if语句,控制输出与flag为相反,直接取反操作即可。
    }

    /******************************
    *函数:delayMS
    *功能:ms级延时函数@12MHz晶振
    *参数:unsigned int: 延时时间,单位ms
    *返回:无
    *****************************/
    void LED_delayMS(unsigned int ms)
    {
       unsigned int i,j;
       for(i=0;i<ms;i++)
         for(j=0;j<150;j++);
    }


    /******************************
    *函数:LED_flash
    *功能:led_red闪烁:亮->灭>亮>灭...
    *参数:unsigned int: 闪烁间隔,单位ms
    *返回:无
    *****************************/
    void LED_flash(unsigned int interval)
    {
       lit(1);
       delayMS(interval);
       lit(0);
       delayMS(interval);
    }


        (5)编写LEDCtrl.c,代码如下:
         
    #include "led.h"
    /******************************
    *函数:main
    *功能:程序入口,演示:1. LED长亮10s; 2. LED闪烁10次.
    *参数:无
    *返回:无
    *****************************/
    void main()
    {
      unsigned char flash_times = 10;
      unsigned char i;
      while(1)
        {
          LED_lit(1);
          LED_delayMS(10000);
          for(i=0;i<flash_times;i++)
            {
              LED_flash(1000);
            }
        }  
    }

     (6)添加LEDCtrl.c和led.h到当前工程。
       a. 在工程浏览区双击Target 1下的Source Group1,打开添加对话框。 
      
    b. 再添加对话框中先选择文件类型(.h或.c),再双击要添加的文件即可。
    添加的文件会出现在工程资源浏览区下,如下图所示。

    1. 编译程序。 
       (1)设置输出.hex选项,输出目录默认为工程路径的根目录。
          选择菜单【Project>Options for Target 'Target1'...】(快捷键ALT+F7或快捷图标),在弹出的对话框的Output页签中勾选Create Hex File选项,单击【OK 】按钮。。

       (2)单击工具栏的快捷图标或按快捷键F7,编译程序。
    在编译信息输出区域显示编译结果,如下图所示。
        若有错误(error),双击错误提示即可。
        如将LEDCtrl.c里的LED_lit函数调用改为lit,则错误提示如下,表示lit函数缺少原型,即没有定义ing。
        
    至此,整个工程从创建到编译已经介绍完成,以上就是Keil最基本的操作。
    至于程序调试功能,属于高级功能,不作介绍。

    本文PDF版本及源程序(包括Proteus仿真文件)获取路径:github: mcu8051
    https://github.com/happyicefish/mcu8051.git
    https://github.com/happyicefish/mcu8051.git










    展开全文
  • 51单片机经典入门教程(非常棒的教程).适合初学者详细的学习单片机
  • 51单片机入门详细教程 郭天祥完整单片机入门教程 使使用者一周能 入门
  • 单片机入门到精通高清PDF(单片机精华资料),从根本上让你学会单片机的原理,再扩展到具体的应用,很不错的资料。
  • 单片机:基础知识

    千次阅读 多人点赞 2019-07-20 08:43:19
    单片机内部结构 单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、...

    单片机内部结构

    单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统

    分类:

    • 1、通用型
      按单片机(Microcontrollers)适用范围来区分。例如,80C51式通用型单片机,它不是为某种专门用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。
    • 2、总线型
      按单片机(Microcontrollers)是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。
    • 3、控制型
      按照单片机(Microcontrollers)大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。 显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。

    51单片机的结构与功能

    基本功能:
    1.8位数据总线,16位地址总线的CPU;
    2.具有布尔处理能力和位处理能力;
    3.采用哈佛结构,程序存储器与数据存储器地址空间各自独立,便于程序设计;
    4.相同地址的64KB程序存储器和64KB数据存储器;
    5.0-8KB片内程序存储器(8031无,8051有4KB,8052有8KB,89C55有20KB);
    6.128字节片内数据存储器(8051有256字节);
    7.32根双向并可以按位寻址的I/O线;
    8.两个16位定时/计数器(8052有3个);
    9.一个全双工的串行I/O接口;
    10.多个中断源的中断结构,具有两个中断优先级;
    11.片内时钟振荡器 。

    特点:
    1.以微处理器(CPU)为核心;
    2.CPU与其他部件间通过三总线连接。
    总线: 指能为多个部件服务的信息传送线 。

    内部结构
    在这里插入图片描述
    在这里插入图片描述

    单片机外部结构

    在这里插入图片描述

    一共40根外部引脚如图:

    在这里插入图片描述
    引脚功能介绍

    引脚号 引脚名称 说明
    1~8 P1.0~P1.7 端口P1
    9 RST 复位信号输入端
    10~17 P3.0~P3.7 端口P3,该端口具备第二功能
    18 XTAL2 时钟震荡器输出端,内部震荡器输出段
    19 XTAL1 时钟震荡器输入端,内部震荡器输入段
    20 GND 电源地
    21~28 P2.0~P2.7 端口P2
    29 PSEN(低) 外部程序存储器从程序存储器中取指令或读取数据时,该信号有效
    30 ALE/PROG(低) 地址锁存信号访问外部存储器时,该信号锁存低8位地址;无RAM时,此引脚输出晶振的6分频信号
    31 EA(低)/VPP 程序存储器有效地址,EA=1时从内部开始执行程序;EA=0时从外部开始执行程序
    32~39 P0.7~P0.0 端口P0
    40 VCC 电源正

    1、P0口的结构

    P0口字节地址为80H,位地址80H~87H。
    如图,一个端口由锁存器、输入缓冲器、多路开关、一个非门、一个与门及场效应管驱动电路构成。

    P0位结构:
    在这里插入图片描述

    • 输入缓冲器
      在P0口中,有两个三态的缓冲器,三态门有3个状态,即在其输出端可以是高电平、低电平,同时还有一种高阻状态(或称为禁止状态),要读取D锁存器输出端Q的数据,需要使读锁存器中这个缓冲器的三态控制端有效,下面一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为“读引脚”的三态缓冲器的控制端有效,引脚上的数据才会传输到单片机的内部数据总线上。
    • D锁存器
      构成一个锁存器,通常要用一个时序电路,一个触发器可以保存一位二进制数(即具有保持功能),在51单片机的32根I/O口线中,都是用一个D触发器来构成锁存器的。图1-4中的D锁存器,D端是数据输入端,CP是控制端(即时序控制信号输入端),Q是输出端,Q非是反向输出端。
      对于D锁存器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(即时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端的。如果时序控制端CP的时序脉冲到达,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来)。如果下一个时序控制脉冲信号到来,这时D端的数据才再次传送到Q端,从而改变Q端的状态。
    • 多路开关
      在51单片机中,当内部的存储器够用时(即不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器),P0口可以作为通用的输入/输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机,或者编写的程序超过了单片机内部的存储器容量需要外扩存储器时,P0口就作为地址/数据总线使用。那么这个多路选择开关就是用于选择是作为普通I/O口使用还是作为地址/数据总线使用的选择开关了。从图1-4可知,当多路开关与下端接通时,P0口作为普通的I/O口使用;当多路开关是与上端接通时,P0口作为地址/数据总线使用。

    利用P0口进行扩展外部存储器和I/O时,P0口将作为地址和数据分时复用,CPU发控制信号,打开与门,使MUX打向上边,形成推拉式结构,数据信号可直接读入或输出到内部总线。利用P0作为通用I/O时,此时P0口是一个准双向口,CPU发控制信号,封锁与门,使上拉管截止,MUX打向下边,与D触发器Q连接。

    2、P1口的结构

    P1口字节地址为90H,位地址为90H~97H。

    P1位结构:
    在这里插入图片描述

    与P0不同,P1口只能作为I/O口使用,无MUX,但其内部有一个上拉电阻,所以连接外围负载时不需要外接上拉电阻,这一点P1、P2、P3都一样。

    3、P2口的结构

    P2口字节地址为A0H,位地址为A0H~A7H

    P2位结构:
    在这里插入图片描述

    P2口作为I/O口线时用法与P0口一样,当内部开关拨向另一个方向,即作地址输出时,可以输出程序存储器或外部数据存储器的高8位地址,并与P0口输出的低地址一起构成16位的地址线。

    4、P3口的结构

    P3口字节地址为B0H,位地址为B0H~B7H。

    在这里插入图片描述

    P3口作为I/O口线用时同其他的端口相同,也是准双向口,不同的是,P3口的每一位都有另一种功能,也叫第二功能,具体作用在用到时将详细解释。当P3口作为通用I/O口时,准双向口第二功能端保持高电平。

    当P3口作为第二功能时,锁存器输出Q=1,如图为P3口第二功能列表:
    在这里插入图片描述

    5、注意

    • (1)在无片外扩展存储器的系统中,这4个端口的每一位都可以作为准双向通用I/O端口使用。在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口作为双向总线,分时作为低8位地址和数据的输入/输出线。
    • (2)P0口作为通用双向I/O口使用时,必须外接上拉电阻。
    • (3)P3口除了作通用I/O口使用外,各位还具有第二功能。当P3口某一位用于第二功能作输出时,则不能再作通用I/O口使用。
    • (4)当P0~P4端口用作输入时,为了避免误读,都必须先向对应的输出锁存器写入1,使FET截止,然后再读端口引脚,例如以下程序:
      MOV P1, #0FFH
      MOV A, P1

    51的程序存储器和数据存储器是独立分开的,数据寄存器除内部数据寄存器外,还可以扩展数据寄存器,并存但访问指令不同

    程序寄存器

    当EA引脚接高电平,CPU将使用内部程序寄存器,若程序超过内部程序存储器空间时,则CPU会自动从外部程序存储器重读取超过部分的程序代码

    数据寄存器

    0000H ~ 007FH
    1、寄存器组区
    0000H~001FH共有32个地址位寄存器组区
    每组寄存器组都包括R0、R1、R2、R3、R4、R5、R6、R7等8个寄存器,任何一个时间,都只能使用其中一个寄存器组。
    寄存器组的切换,可由程序状态字(PSW)中的RS1、RS0来决定
    RS0 RS1 寄存器组 位址
    0 0 RB0 0000H~0007H
    0 1 RB1 0008H~000FH
    1 0 RB2 0010H~0017H
    1 1 RB3 0018H~001FH

    2、可位寻址区
    0020H~002FH 共16字节的存储区为可位寻址区
    设置20H存储器地址的位5设置为1:SETB 20H.5
    设置20H存储器地址的位5设置为0:CLR 20H.5

    3、一般数据与堆栈区
    0030H~007FH的80字节为一般数据访问及堆栈区
    0080H~00FFH之间的128B位特殊功能寄存器(SFR)
    特殊功能寄存器
    P0、P1、P2、P3
    它们是51的4个输入/输出端口,其地址分别为80H、90H、A0H及B0H。
    P0口:该8位都为漏级开路输出,每个引脚可以驱动8个LS型TTL负载;且内部没有上拉电阻,执行输出功能时,外部必须接上拉电阻(10千欧即可);若要执行输入功能,必须先输出高电平,方能读取该端口所连接的外部数据;若系统连接外部存储器,则P0可作为地址总线(A0A7)及数据总线(D0D7)的多功能引脚。
    P1口:内部有30千欧上拉电阻,执行输出功能时,不必连接外部上拉电阻;该8位都为漏级开路输出,每个引脚可以驱动4个LS型TTL负载;若要执行输入功能,必须先输出高电平,方能读取该端口所连接的外部数据;
    P2口:内部有30千欧上拉电阻,执行输出功能时,不必连接外部上拉电阻;该8位都为漏级开路输出,每个引脚可以驱动4个LS型TTL负载;若要执行输入功能,必须先输出高电平,方能读取该端口所连接的外部数据;若系统连接外部存储器,而外部存储器的地址线超过8条时,则P0口可作为地址总线(A8~A15)引脚。
    P3口:内部有30千欧上拉电阻,执行输出功能时,不必连接外部上拉电阻;该8位都为漏级开路输出,每个引脚可以驱动4个LS型TTL负载;若要执行输入功能,必须先输出高电平,方能读取该端口所连接的外部数据;
    P3口其他功能:
    P3 其它功能 说明
    P3.0 RXD 串行口的接收引脚
    P3.1 RTD 串行口的传送引脚
    P3.2 INT0 INT0中断输入
    P3.3 INT1 INT1中断输入
    P3.4 T0 timer 0输入
    P3.5 T1 Timer 1输入
    P3.6 WR 写入外部存储器控制引脚
    P3.7 RD 读取外部存储器控制引脚

    SP
    SP为堆栈指针寄存器,其地址为81H。

    DPL、DPH
    DPL与DPH均为8位的数据指针寄存器,其地址分别为82H、83H。若以DPL为低8位、DPH为高8位,即可组成一个16位的数据指针寄存器,简称DPTR,如此将可寻址到64KB的数据地址。

    PCON
    PCON作为电源控制寄存器,其地址位87H,其功能是设定CPU的电源方式。
    它是一个不可位寻址的寄存器。如图所示:
    SMOD ― ― ― GF1 GF0 PD IDL
    Bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
    其中各位说明如下:
    SMOD位为比特率倍增位。当串行端口工作于模式1、模式2、模式3,且使用定时器1为其比特率产生器时,若其为1,这比特率加倍,若为0,这比特率正常。
    GF1、GF0位为一般用途标志位,用户可自行设定或清除这两个标志。通常使用这个两个标志作为有中断唤醒闲置模式中的8051系统。
    PD位为功率下降模式位。为1时,进入功率下降模式;为0时,结束功率下降模式。
    IDL位为闲置模式位。为1时,进入闲置模式;为0时,结束闲置模式。

    TCON
    TCON为定时器/计数器控制寄存器,其地址为88H

    TMOD
    TMOD为计数器/计数方式控制寄存器,其地址为89H,其功能是设置它的方式

    TL0、TL1、TH0、TH1
    TL0、TH0为第一组定时器、计数器的计量寄存器,其地址为8AH、8CH,将TL0与TH0组合即可进行16位的定时/计数。TL1、TH1为第二组定时器、计数器的计量寄存器,其地址为8BH、8DH,将TL1与TH1组合即可进行16位的定时/计数。

    SCON
    SCON为串行端口控制寄存器,其地址为98H,其功能是设定串行端口工作方式与标志。

    SBUF
    SBUF为串行端口缓冲器,其地址为99H, 这是由使用同一个地址的两个寄存器所构成,其中一个寄存器作为传送数据用的缓冲器,另一个寄存器作为接收数据用的缓冲器。至于如何分辨同一个地址的两个寄 存器,则视指令而定,若是数据传送指令,则自动定位到传送数据用的缓冲器;若是接受数据指令,则自动定位到接收数据用的缓冲器。详细以后再讲咯。IE
    IE为中断使能寄存器,其地址为A8H。

    IP
    IP为中断优先级寄存器。

    T2CON
    T2CON为Timer 2的定时器/计数器控制寄存器,其地址为C8H,其功能死设定Timer 2的启动、记录定时/计数溢出,以及外部中断触发方式等。

    RCAP、RCAP2H
    RCAP、RCAP2H为捕捉寄存器,其地址为CAH、CBH。当Timer 2在捕捉方式时,若T2EX(P1.1)引脚上的输入信号有高电平转为低电平时,TL2与TH2的内容将被载入RCAP与RCAP2H,就像是把Timer 2的内容捉进RCAP寄存器一样。

    TL2、TH2
    TL2、TH2为第三组定时器、计数器的计量寄存器,其地址为CCH、CDH,将TL2与TH2组合即可进行16位的定时/计数。

    PSW
    PSW为CPU的程序状态字寄存器,其地址为D0H,其内容如下:
    7 6 5 4 3 2 1 0
    PSW CY AC F0 RS1 RS0 OV P
    PSW.7:本位为进位位(CY),加减法时产生进位或错位,将自行设定为1,否则为0。
    PSW.6:本位为辅助进位位(AC),进行加减法运算产生进位或错位,将自行设定为1,否则为0。
    PSW.5:本位为用户标志位,用户自行设定。
    PSW.4与PSW.3:这两个位为寄存器组选择位(RS1、RS0),其功能如下表所示。
    RS1 RS0 寄存器组
    0 0 RB0
    0 1 RB1
    1 0 RB2
    1 1 RB3
    PSW.2:本位为溢出标志位(OV),运行时,若发生溢出,为1,否则为0。
    PSW.1:本位为保留位,没有提供服务。
    PSW.0:本位位奇偶位(P),8051采用偶同位,若ACC中奇数个1,则为1,偶数个1,则为0。

    ACC
    ACC累加器又称为A寄存器,其地址为E0H。
    B
    B寄存器的地址为F0H,主要功能是配合A寄存器进行乘法或除法运算。进行乘法运算时,乘数放在B寄存器,而运算结果,高8位放在B寄存器;进行除法运算时,除数放在B寄存器,而运算的结果,余数放在B寄存器。若不进行乘/除法运算,B寄存器也可当成一般寄存器使用。

    门电路

    • 与门
    • 或门
    • 非门
    • 同或门
    • 异或门
    • 门间的组合电路

    在这里插入图片描述

    门电路的实现TTL和MOS集成门电路

    寄存器和锁存器

    • 触发器分类:
      1、基本R-S触发器
      2、同步RS触发器、同步D触发器
      3、主从R-S触发器、主从JK触发器
      4、边沿触发器:
      上升沿触发器(D触发器、JK触发器)
      下降沿触发器(D触发器、JK触发器)

    • 触发器逻辑功能表示方法:
      特性表、卡洛图、特性方程、状态图、时序图

    • 各种触发器介绍
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    展开全文
  • 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单片机入门教程,讲解通俗易懂非常适合初学者,千万不要错过。
  • 单片机入门

    2020-10-13 21:12:44
    单片机(Single-Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括...
  • 51单片机入门教程(0)—— 开发环境配置

    万次阅读 多人点赞 2018-10-06 09:55:15
    51单片机入门教程(0)—— 开发环境配置 本教程包含51单片机开发环境Keil_C51的安装、破解和汉化,以及51单片机仿真环境proteus的安装、破解。 (说明:本教程仅供学习交流之用,禁止任何商业用途!请在24小时之内...
  • 51单片机入门 - 基础知识汇总

    千次阅读 2020-07-21 23:14:21
    关注【电子开发圈】微信公众号,一起学习吧!...电子DIY、Arduino、51单片机、STM32单片机、FPGA…… 电子百科、开发技术、职业经验、趣味知识、科技头条、设备拆机…… 点击链接,免费下载100G+电子设计学习资料! ...
  • 单片机基础汇总

    千次阅读 多人点赞 2018-10-30 11:50:30
    单片机基础教程     一、单片机概念   1、单片机:在一片集成电路芯片上集成微处理器(CPU)、存储器(ROM和RAM)、I/O接口电路,从而构成了单芯片微型计算机,即单片机...
  • 51单片机学习历程(一)单片机入门

    万次阅读 多人点赞 2018-07-19 11:42:24
    单片机入门 什么是单片机 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器...
  • 巫妖王51单片机开发板配套视频课程

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

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

    万次阅读 多人点赞 2018-05-23 14:48:12
    单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。由C51产生的目标代码短,运行速度高,存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,而且可与A51汇编语言...
  • 由于每天都有很多很多的网友问我问题,有一些简单的问题,或者类型一样的问题,一个个回答台耗时间,通过这一套高质量的最新版本软件实战视频,可以帮助新手或者基础不好的朋友快速入门,快速理清一些设计的概念,...
  • MicroPython以微控制器作为目标,从而使得Python可以用来控制硬件。说到MicroPython,也许有人会感到陌生。...MicroPython顾名思义就是运行在MCU的Python,换句话说Python可以让单片机行动起来了。MicroP...
  • 本文旨在介绍单片机入门的基础知识,为初接触或即将接触单片的新手提供一个入门指导。本文章会陆续推出,隔几天一个章节。所使用单片机为ATMEL公司的AT89C52,软件为PROTEUS和KEIL;只提供原理图和KEIL环境下的注释,...
1 2 3 4 5 ... 20
收藏数 16,008
精华内容 6,403
关键字:

单片机入门