51单片机基础入门学习教程ppt课件.ppt
《51单片机基础入门学习教程ppt课件.ppt》由会员分享,可在线阅读,更多相关《51单片机基础入门学习教程ppt课件.ppt(256页珍藏版)》请在三一办公上搜索。
1、云龙51单片机教程 作者:王云,单片机有什么用应该学什么样的单片机学习单片机需什么基础如何学好单片机学前准备,单片机学习开发环境的建立,第一课 初识单片机,单片机有什么用?,工业控制系统数据采集系统智能化仪器仪表通讯设备. .,应该学什么样的单片机?,在我们这个课程中,我们将选用51系列单片机作为讲解。,51单片机同时也是学习,ARM、DSP、FPGA等,高端应用的基础知识。,学习单片机要什么基础?1.有信心,有恒心;2.只要撑握最基本的数电模电知识;3.对各种器件的认识大家都是从0开始;4.单片机编程,只要会简单的C语言基础知识。,如何学好单片机1.要领:理论与实践并重,实践先行;2.学习总
2、是从模仿开始;3.举一反三;,学前准备,1电脑一台,2单片机C语言书一本,3. 开发板一块,51单片机C语言程序设计教程,本视频配套书籍:,王云 编著,课程内容安排,基础篇,基于单片机最小系统,介绍单片机的基础知识;及单片机C语言基础知识。,实战篇,以YL-51开发板为平台,逐个讲解开发板上各个模块的使用,把各器件模块讲解清楚。通过实践深化理解数字电路的概念、C语言的基本应用以及C语言如何同实际电路发生联系。,提高篇,讲解单片机应用的扩展知识,及编程技巧。讲授单片机项目开发的流程及方法。,课后作业安装以下两个软件:1、STC-ISP下载软件2、KEIL编程软件,第二课 点亮一个发光二极管,什么
3、是单片机?,如何选择单片机?,单片机能做什么?,单片机,指以8051为核心的单片机,统称为MCS51单片机。,是在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,简称单片机。,MCS51单片机,如8031,8751,8032,8052,8752等该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的。,1.1 什么是单片机?,8051是美国INTEL公司,生产的一系列单片机中最早最典型的产品。,1.2 近年来推出MCS51的主要产品有:,ATMEL公司的89C51、89C52系列; Philips公司的80C51、80C52系列; 华邦公司的W7
4、8C51、W77C51高速低价系列; LG公司的GMS90/97低压高速系列; 宏晶公司的STC89C51、STC89C52系列。,1.3 80C51的引脚封装,总线型,非总线型,2.单片机内部资源三大指标1、FLASH (程序存储空间ROM)2、RAM(数据存储器)3、SFR(特殊功能寄存器),单片机内集成了一些常用的I/O接口电路,如并行的I/O端口、串行口、定时器/计数器、中断控制器等,这些I/O接口单元电路,统称为特殊功能寄存器(SFR)。,单片机的选择STC89C52: 8K FLASH,512字节RAM,32个I/O口, 3个定时器,1个UART,8个中断源。SST89E516:
5、64K FLASH,1024字节RAM,32个I/O口, 3个定时器,1个UART,10个中断源。支持与KEIL连线进行在线仿真。,单片机最小系统,特点:用最少的元件组成的单片机工作系统。,由四大硬件组成:单片机、电源电路、晶振电路、复位电路。,31脚是内部程序存储器和外部程序存储器选择端。为高电平时,访问内部程序存储器;为低电平时,则访问外部程序存储器。,点亮一个LED发光二极管,发光二极管:通常红色贴片LED:正向压降1.6-2.4V ,电流2-20mA。2-5mA亮度有明显变化,5mA以上亮度基本没变化。RV/I一般应用取I35mA,则R?。LED与单片机,成为一个最小的控制单元,实现控
6、制发光二极管的亮灭。,特殊功能寄存器声明 语法: sfr sfr_name=int_constant 例:sfr P0 = 0 x80; sfr SCON = 0X98;,特殊功能位声明 例:sbit CY =PSW7; sbit LED=P10;,Main 函数格式:void main()特点:无返回值,无参。任何一个C程序有且仅有一个main函数,它是整个程序开始执行的入口。例:void main() 总程序从这里开始执行; 其他语句; ,三、建立独立的KEIL工程: 1.点亮第一个发光管 2.点亮最后一个发光管 3.点亮一、三、五、七,二、理解单片机单片机最小系统的组成。,一、了解发光二
7、极管参数及限流电阻计算方法。,作业,4.点亮二、四、五、六,第三课 C51基础知识及流水灯设计,电平特性单片机的数制C51的特点C51基础知识,C51简介,关于电平特性,1、数字电路中只有两种电平 (本课程中)定义单片机为TTL电平 高电平:+5V 低电平:0V,2、RS232电平:计算机串口 高电平:-12V 低电平:+12V 所以计算机串口与单片机进行通信时,需加电平转 换芯片MAX232。,单片机的数制,1、单片机内部的数制:二进制2、单片机编程常用的数制:十六进制,二进制数字电路中的两种电平特性决定了它 0 0 6110 1 1 7111 2 10 8 1000 3 11 91001
8、4 100 101010 5 101 111011,十六进制数,是二进制的简短表示形式。 十进制中的0-15在十六进制数中分别表示为0、 1、2、3、 4、5、6、7、8、9、A、B、C、 D、E、F,熟练掌握二进制与十六进制之间的转换。 规律:一般把四个二进制数放在一起转换成一 个十六进制数,转换时先把二进制数转换成十 进制数,再把十进制数转换成十六进制数。,如:0001B11HB表示为二进制,H为十六进制1001B99H1010B10 AH1001 10101549AH,各种进制的对应关系,二进制数的逻辑运算1.与运算 与运算是实现“必须有,否则就没有”这种逻辑关系的一种运算。运算符为“
9、”其运算规则如下: 00=0; 01=10=0; 11=1,2.或运算或运算是实现“只要其中之一有,就有”这种逻辑关系的一种运算,其运算符为“ + ”“或”运算规则如下:0+0=0; 0+1=1+0=1; 1+1=1,3.是“非”运算 “非”运算是实现“求反”这种逻辑的一种运算,如变量A的“非”运算记作“ A ”其运算规则如下:1=0;0=1,4“异或”运算“异或”运算是实现“必须不同,否则就没有”这种逻辑的一种运算。运算符为“”。其运算规则是:00=0;01=10=1;11=0,C51的特点,C语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,C语
10、言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。使用C语言进行程序设计已成为软件开发的一个主流。用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。因此,用C语言进行单片机程序设计是单片机开发与应用的必然趋势。,C-51的优点:1、对单片机的指令系统不要求了解,仅要求对8051的 存贮器结构有初步了解。2、寄存器分配,不同存贮器的寻址及数据类型等细节可由编译器管理。3、程序有规范的结构,可分成不同的函数,这种方式可使程序结构化。4、提供的库包含许多标准子程序,具有较强的数据处理能力
11、。5、由于具有方便的模块化编程技术,使已编好程序可容 易地移植。,C-51的基本数据类型,类型,符号,关键字,数的表示范围,所占位数,整型,字符型,实型,有,无,(signed) int,16,-3276832767,(signed) short,16,-3276832767,(signed) long,32,-21474836482147483647,16,unsigned int,065535,32,04294967295,unsigned long int,unsigned short int,16,065535,有,float,32,3.4e-383.4e38,有,double,64,
12、1.7e-3081.7e308,有,char,8,-128127,无,unsigned char,8,0255,+ - * / ( 加 减 乘 除) = (位右移 位左移) & | (按位与 按位或) (按位异或 按位取反),C-51的运算符:(与C语言基本相同),C-51的基本语句,与标准C语言基本相同: if 选择语言 switch/case 多分支选择语言 while 循环语言 do-while 循环语言 for 循环语言,常用的延时方法 一.非精确延时方法1.for(i=0;i)2.利用定时器进行定时(后边的课程进行介绍),流水灯实验8个发光二极管,分别对应单片机I/O口的P1.0到P
13、1.7,8个单片机IO口组成一个字节,在程序编写过程中,可以直接用P1来进行操作。C语言的8位二进制数代表了8个I/O口P1=0XFE;它是二进制11111110的简短表示形式,它分别表示P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 1 1 1 1 1 1 1 0,1.了解单片机C语言都有哪方面的内容。2.掌握延时语句的用法及运行时间计算。3.用3个LED小灯做一个交通灯的程序。4.根据原理图,独立完成流水灯反方向流动,和全部点亮到一个个熄灭。,作业,第四课 数码管结构及静态显示原理,数码管的结构和显示原理数码管静态显示数组的定义及调用子程序调用、带参数子程序
14、设计,数码管,根据内部结构,可分为共阴极数码管和共阳极数码管。七段发光管加上一个小数点,共计8段。因此我们对它编码时,刚好是用一个字节。,共阴极,共阳极,共阴极,共阳极,共阴数码管真值表,数码管的显示方法,(2)动态显示。,(1)静态显示。,静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是占用I/O口多,增加了电路的复杂性。,(1)静态显示。,(2)动态显示。,动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。这样一来
15、,就没有必要每一位数码管配一个锁存器,从而大大地简化了硬件电路。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。,数组,二.数组定义:类型说明符 数组名 表达式;三.数组赋值:int a5=A,B,C,D,E int a =A,B,C,D,Ea0=A; a1=B; a2=C; a3=D; a4=E;,
16、一.数组需满足三个条件:1. 元素具有相同的数据类型2. 用不同的下标来区分数组中的元素3. 在存储器中是被连续存放的,函数定义的一般形式,1.无参函数的定义形式类型标识符 函数名()声明部分 语句2.有参函数的定义形式类型标识符 函数名(形式参数列表)声明部分 语句,中断概念单片机中断的应用单片机的定时器应用,第五课 中断与定时器,单片机的中断系统,一、中断的概念 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断产生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A中断的地方继续处理事件A(中断返回),这一
17、过程称为中断。,MCS-51单片机的中断系统结构,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,引起CPU中断的根源叫做中断源。中断源向CPU的请求,叫做中断请求。CUP暂时中断原来的事件A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。,随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点:,分时操作。CPU可以分时为多个I/O设备服务,提高了计算机的利用率;实时响应。CPU能够及时处理应用系统的随机事件,系统
18、的实时性大大增强;可靠性高。CPU具有处理设备故障及掉电等突发性事件能力。从而使系统的可靠性提高。,8051中断系统的结构 8051的中断系统有5个中断源,2个优先级,可实现二级中断嵌套。,8051中断系统的结构图,当中断源满足条件产生中断请求时,中断请求标记志位会置1。向CPU申请中断。CPU响应中断时,TCON的中断请求标记位由硬件自动清除; SCON则须为软件清零。,中断源与标记位关系,8051中断系统的结构图,IT0外部中断0(INT0)触发方式选择位,由软件设置。1、低电平触发方式,INT0(P3.2)引脚上低电平可引起中断。2、下降沿触发方式,INT0(P3.2)引脚上电平由高变低
19、负跳变可引起中断。,中断允许控制位在IE特殊功能寄存器上的分布,中断优先级控制位在IP特殊功能寄存器上的分布,在8051单片机中有两个定时器/计数器,分别称为定时器/计数器0和定时器/计数器1。(在本课程中)将采用:T/C0:表示定时器/计数器0T/C1:表示定时器/计数器1T0:表示定时器0T1:表示定时器1C0:表示计数器0C1:表示计数器1如果是对内部振荡源12分频的脉冲信号进行计数(即对每个机器周期计数),它是定时器(T0,T1)。如果是对单片机引脚T0(P3.4)或T1(P3.5)输入的外部脉冲信号进行计数,则它是计数器(C0,C1)。,定时器/计数器的概念,定时/计数器(T/C)的
20、结构图,一、定时/计数器的结构 :1、由两个加1计数寄存器(由高8位和低8位两个寄存器组成,共16位),分别对应 T/C0和T/C1.2、TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能。3、TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。,加1计数寄存器输入的计数脉冲有两个来源:1、一个是由系统的时钟振荡器输出脉冲经12分频后送来;2、一个是从单片机引脚T0(P3.4)或T1(P3.5)输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零;且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时/计数器中断允许
21、时)。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。,二、控制寄存器TCON TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:,TF1(TCON.7):T/C1溢出中断请求标志位。T/C1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T/C1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或 清0,同硬件置1或清0的效果一样。TR1(TCON.6):T/C
22、1运行控制位。TR1置1时,T/C1开始工作;TR1置0时,T/C1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。TF0(TCON.5):T/C0溢出中断请求标志位,其功能与TF1类同。TR0(TCON.4):T/C0运行控制位,其功能与TR1类同。,三、工作方式寄存器TMOD,工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T/C0,高四位用于T/C1。其格式如下:,GATE:门控位。GATE0时,只要使TCON中的TR0或TR1为1,就可以启动定时/计数器(T/C)工作。(其中:TR0对应T/C0;TR1对应T/C1)GATA1时,要满足两个
23、条件,才能启动定时/计数器(T/C)工作:使TR0或TR1为1。同时外部中断引脚INT0/1也为高电平时。(INT0对应T/C0;INT1对应T/C1) :定时/计数模式选择位。 0为定时模式; =1为计数模式。,M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。,方式1:常用的16位定时器/定数器。(本节课主要讲:方式1定时器模式)方式2:主要用在串口波特率发生器。(在串口通信里再作详细讲解)方式0和方式3:几乎不用。,四、方式1 (定时器0模式)方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器 。,16位定时器0装初值的计算公式
24、:假设要计的个数是n,TH0=(65536-n)/256TL0=(65536-n)%256,8051的基本时序周期,振荡周期:为单片机提供振荡源的周期(是指振荡源的两个相邻同方向峰值之间的时间)机器周期:1个机器周期等于12个振荡周期若:fosc=12M,则8051的各周期参数如下:振荡周期=1/12 us;机器周期=1us;,初始化程序应完成如下工作:1、对TMOD赋值,以确定T0和T1的工作方式。2、计算初值,并将其写入TH0、TL0或TH1、TL1。3、使TR0或TR1置位,启动定时/计数器定时或计数。4、中断方式时,则对IE赋值,开放中断。,定时/计数器应用举例,作业,1、利用定时/计
25、数器T1从P1.0输出周期为1s的方波,让 发光二极管以1HZ闪烁,设晶振频率为12MHz。试设 计程序。2、利用定时/计数器T0产生定时时钟,由P1口控制8个发光 二极管。编一个程序,使8个指示灯依次一个一个闪动, 闪动频率为10次/秒(8个灯依次亮一遍为一个周期)。3、用定时器以间隔500MS在6位数码管上依次显示0、1、 2、3.C、D、E、F,重复。,第六课 数码管动态显示及定时器应用,三、工作方式寄存器TMOD,工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T/C0,高四位用于T/C1。其格式如下:,GATE:门控位。GATE0时,只要使TCON中的TR0或TR1为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片机 基础 入门 学习 教程 ppt 课件
链接地址:https://www.31ppt.com/p-1955245.html