欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    片机内部资源的编程.ppt

    • 资源ID:6313282       资源大小:480KB        全文页数:45页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    片机内部资源的编程.ppt

    第6章 单片机内部资源的编程,教学要求,理解中断的概念及中断系统功能;掌握外部中断的应用、外部中断的扩展以及编写外部中断服务程序的方法;熟悉定时器/计数器的结构与工作方式;掌握定时器/计数器的应用及编写定时器/计数器中断服务程序的方法;掌握相关的特殊功能寄存器在外部中断、定时器/计数器中断中的应用。,1.单片机应用系统使用中断技术的优点,(1)能实现单片机与多个外围设备并行工作,提高了单片机的利用率及数据的输入/输出效率。(2)能对单片机运行过程中某个事件的出现或突然发生的故障做到及时发现并进行自动处理,即实现实时处理。(3)能使我们通过键盘发出请求,随时对运行中的计算机进行干预,即可以实现人机联系。(4)能实现多道程序的切换运行。(5)能在多机系统中实现各处理机之间的信息交换和任务切换。,2.中断的概念,所谓中断就是当单片机执行主程序时,系统中出现某些急需处理的异常情况或特殊请求(中断请求),单片机暂时中止现行的程序,而转去对随机发生的更紧迫的事件进行处理(中断响应),在处理完毕后,单片机又自动返回(中断返回)原来的主程序继续运行,如图6.1所示。,图6.1 中断处理过程,执行主程序,主程序,继续执行主程序,断点,中断请求,中断响应,执行中断处理程序,中断返回,3.中断处理流程,CPU响应中断请求后,就立即转入执行中断服务程序。不同的中断源、不同的中断要求可能有不同的中断处理方法,但它们的处理流程一般都如下所述。,1)现场保护和现场恢复,2)中断打开和中断关闭,3)中断服务,4)中断返回,4.MCS-51的中断源,8051有5个中断源,它们是两个外中断INT0(P3.2)和INT1(P3.3)、两个片内定时/计数器溢出中断TF0和TF1,一个是片内串行口中断TI或RI,这几个中断源由TCON和SCON两个特殊功能寄存器进行控制。,例题,P3.2引脚接有按钮或开关,按下此按钮式开关P1.0引脚所接的LED点亮,再次按下后该LED熄灭,由此反复。,参考程序:,#include Sbit LED=P00;void main()LED=1;EA=1;EX0=1;/IE=0X81;TCON=0X01;/IT0=1;While(1);,/INT0中断函数void external_interrupt_0()interrupt 0 LED=!LED;,MCS-51的对中断的开放和屏蔽是由中断允许寄存器IE(A8H)控制来实现的,IE的结构格式如下。,EA:中断总控制位,EA=1,CPU开放中断。EA=0,CPU禁止所有中断。EX1:外中断1中断控制位,EX1=1,允许外中断1中断,EX1=0,禁止外中断1中断。EX0:外中断0中断控制位,EX0=1,允许外中断0中断,EX0=0,禁止外中断0中断。,TCON 88H,IE0:外部边沿触发中断0请求标志,其功能和操作类似于TF0。IT0:外部中断0类型控制位,通过软件设置或清除,用于控制外中断的触发信号类型。IT0=1,边沿触发。IT0=0是电平触发。IE1:外部边沿触发中断1请求标志,其功能和操作类似于IE0。IT1:外部中断1类型控制位,通过软件设置或清除,用于控制外中断的触发信号类型。其功能和操作类似于IE0。,PX1:外中断1优先级控制位。PX1=1,声明外中断1为高优先级中断,PX1=0定义外中断1为低优先级中断。PX0:外中断0优先级控制位。PX0=1,声明外中断0为高优先级中断,PX0=0定义外中断0为低优先级中断。,IP B8H,怎样编制单片机中断程序?,从上面的任务程序中,我们来体会以下中断服务程序的编制方法。(1)首先必须对中断系统进行初始化,包括:1)开中断,即设定IE寄存器。2)设定中断优先级,即设置IP寄存器。如上面程序中的PX0=1;设外中断0为高优先级3)如果是外部中断,还必须设定中断响应方式,即设定IT0、IT1位。中断服务函数采用扩展属性的函数进行语法定义,格式:返回值 函数名 interrupt n其中:n对应中断源的编号,其值04分别对应外中断0,定时器0中断,外中断1,定时器1中断和串行口中断,课堂练习,参考单片机C语言程序设计实训100例59页例3.24,编程实现以下功能:每按一下计数键,数码管显示数字加1,当按下清零键时,数码管显示清零。,#include#define uchar unsigned char#define uint unsigned intuchar code dsy_code=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x00;/最后一位为黑屏uchar display_buffer3=0,0,0;uint count=0;sbit clear_key=P36;,void show()display_buffer2=count/100;display_buffer1=count%100/10;display_buffer0=count%10;if(display_buffer2=0)display_buffer2=0 x0a;if(display_buffer1=0)display_buffer1=0 x0a;/注意if语句的嵌套 P0=dsy_codedisplay_buffer0;P1=dsy_codedisplay_buffer1;P2=dsy_codedisplay_buffer2;,void main()P0=0 xff;P1=0 xff;P2=0 xff;/补充。while(1)if(clear_key=0)count=0;show();/INT0中断函数void external_interrupt_0()interrupt 0/补充。,课外作业1,基于下图,编程实现下列功能:用K1键控制D0D5发光,用K2键控制D0D5熄灭。按一次K1键,D0D5发光;按一次K2键,D0D5熄灭;再按一次K1键,D0D5又发光,如此重复。,课外作业2,P1口做输出口,正常时控制八只灯(P1口输出低电平时灯被点亮)每隔0.5秒全亮全灭一次;按下开关1后八只灯从右向左依次点亮,按下开关2后八只灯从左到右依次点亮。要求两只灯先后按下时能体现出优先级别。,定时器/计数器相关知识,在单片机应用系统中,往往需要实现定时或延时控制、对外部事件计数的功能。在满足控制系统要求的情况下,应优先选用单片机内部的定时器/计数器来实现这些功能。,51系列单片机内部有两个16位的定时器/计数器(T/C),可用于定时控制、延时、对外部事件计数和检测等场合。通过编程可以设定任意一个或两个T/C工作,并使其工作在定时或计数方式。以T/C 0为例,其内部结构如图所示。,T1由TH1、TL1构成,字节地址为8DH、8BH,T0由TH0、TL0构成,字节地址为8CH、8AH,TCON则用于控制定时计数器T0和T1的启动和停止计数,同时管理定时器T0和T1的溢出标志等。,特殊功能寄存器TMOD控制定时计数器的工作方式,怎样编制定时程序?,例题:用定时器实现P1.0引脚所接的LED每60ms亮或灭一次,设系统晶振频率为12Hz。,TMOD 89H,M1M0 工作模式选择位(编程可决定四种工作模式)0 0 13位定时/计数器 模式00 1 16位定时/计数器 模式1 0 8 位定时/计数器(自动重装初值)模式21 1 T0 8位定时/计数 模式31 1 T1 停止工作 模式3,TCON 88H,TF0、TF1 分别是定时、计数器T0、T1的溢出标志位。,1)工作方式0,T0的等效逻辑结构,在计数工作方式下,计数器的计数值范围是:18192(2的13方)当为定时工作方式时,定时时间的计算公式为:(8192-计数初值)晶振周期12或(8192-计数初值)机器周期其时间单位与晶振周期或机器周期相同。如果单片机的晶振选为6.000MHz,则最小定时时间为:8192(81921)1/610-612=210-6(s)=2(us)最长定时时间为:(81920)1/610-612=1638410-6(s)=16384(us)。,2)工作方式1,T0的等效逻辑结构,在工作方式1下,计数器的计数值范围是:165536(2的16方)当为定时工作方式1时,定时时间的计算公式为:(65536计数初值)晶振周期12或(65536计数初值)机器周期其时间单位与晶振周期或机器周期相同。如果单片机的晶振选为6.000MHz,则最小定时时间为:65536(655361)1/610-612=210-6(s)=2(us)最长定时时间为:(655360)1/610-612=13107210-6(s)=131072(us)。,3)工作方式2,T0的等效逻辑结构,方式2与方式0、1的区别:工作方式0和工作方式1的最大特点就是计数溢出后,计数器为全0,因而循环定时或循环计数应用时就存在反复设置初值的问题,这给程序设计带来许多不便,同时也会影响计时精度。工作方式2就具有自动重装载功能,即自动加载计数初值,所以也有的文献称之为自动重加载工作方式。在这种工作方式中,16位计数器分为两部分,即以TL0为计数器,以TH0作为预置寄存器,初始化时把计数初值分别加载至TL0和TH0中,当计数溢出时,不再象方式0和方式1那样需要“人工干预”,由软件重新赋值,而是由预置寄存器TH以硬件方法自动给计数器TL0重新加载。方式2在串口通讯时,常用作波特率发生器。,4)工作方式3,如果定时/计数器0工作于工作方式3,那么定时/计数器1的工作方式就因为自己的一些控制位已被定时/计数器0借用,只能工作在方式0、方式1或方式2下,等效电路参见下图:,2.怎样编制计数程序?,例题1:计数到预定值即报警,例题2:将T0口计数值显示出来,小结:,1.定时计数器的基本结构及其四种工作方式?,2.定时计数程序的编制方法?,实验实训项目8 定时器控制流水灯课题 项目9 计数器课题要求:课外完成编程、相关硬件安装、仿真与调试,思考与练习:5.3 5.5,串行口编程相关知识,1.单片机如何能收、发数据?,MCS-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。,(1)基本概念,【并行通信和串行通信】,并行通信:数据的各位同时送出。串行通信:数据的各位逐位送出。,1)数据通信的传输方式,【单工方式】数据仅按一个固定方向传送。,【半双工方式】数据可实现双向传送,但不能同时进行,实际的应用采用某种协议实现收/发开关转换。,【全双工方式】允许双方同时进行数据双向传送,但一般全双工传输方式的线路和设备较复杂。,2)串行数据通信两种形式,【异步通信】在这种通信方式中,接收器和发送器有各自的时钟,它们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:一个起始位,仅接着是若干个数据位。,【同步通信】发送器和接收器由同一个时钟源控制,同步传输方式去掉了起始位和停止位,只在传输数据块时先送出一个同步头(字符)标志即可。,这两种方式各有何优劣?,3)串行数据通信的传输速率,串行数据传输速率有两个概念,即每秒转送的位数bps(Bit per second)和每秒符号数波特率(Band rate),在具有调制解调器的通信中,波特率与调制速率有关。,举例:设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为每秒240个字符。求波特率。解:(181)240=2400 b/s=2400波特。,(2)MCS-51的串行口和控制寄存器,1)串行口数据缓冲器SBUF,在物理结构上,有一个串行口接收缓冲器SBUF、一个发缓冲器SBUF,但这两个寄存器具有同一地址(99H)。,只允许写,只允许读,2)串行通信控制寄存器,3)电源管理寄存器PCON,字节地址87H,不可位寻址。它的D7位SMOD为串行口波特率控制位,可由软件置位或清零。若SMOD=1,则使工作在方式1、2、3时的波特率加倍。,4)中断允许寄存器IE,EA、ES位控制串口中断的开启。,2.单片机怎样通过程序控制收发数据?,P1口接8只发光二极管,P3.2P3.5接有K1K4共4个按键,使用串行口编程。要求(1)由PC机控制单片机的P1口,将PC机送出的数以二进制形式显示在发光二极管上;(2)按下K1向主机发送数字0 x55,按下K2向主机发送数字0 xAA值得注意的是,由于串行发送、接收标志不能硬件自动清除,所以,不管是中断方式还是查询方式编程时都必须用软件方式清除TI、RI。,小结:,1.串行口的四种工作方式各有何特点?,2.怎样编制串口通讯程序?,实验实训项目14 串口通讯课题要求:课外完成编程、相关硬件安装、仿真与调试,

    注意事项

    本文(片机内部资源的编程.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开