您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 单片机控制机器人触觉避障
机器人触觉避障任务1:查询法避障任务2:中断法避障任务描述:通过查询P3.2、P3.3的状态来判断胡须是否触到障碍物。胡须触到障碍物后如何避开障碍物。任务1:查询法避障当P3.2、P3.3为输入为低电平时,代表触到障碍物。否则为高电平。1、硬件电路设计任务1:查询法避障2、软件设计阅读流程图,分析避障过程任务1:查询法避障知识点:助记符格式机器码(B)相应操作指令说明机器周期MOVC,bit10100010CYbit位传送指令,结果影响CY标志2MOVbit,C10010010bitCY位传送指令,结果不影响PSW21.位传送指令助记符格式机器码(B)相应操作机器周期JCrel01000000若CY=1,则PCPC+rel,否则顺序执行2JNCrel01010000若CY=0,则PCPC+rel,否则顺序执行22.判CY标志指令解读程序见书P90页任务2:中断法避障中断的基本概念日常生活中断的例子单片机中的中断概念中断技术的优点日常中断的例子你正在专心看书,突然电话铃响,于是你记下正在看的书的页数,去接电话,接完电话后再回来接着看书。任务2:中断法避障计算机中的中断概念中断是指由于某种随机事件的发生,计算机暂停现行程序的运行,转去执行另一程序,以处理发生的事件,处理完毕后又自动返回原来的程序继续运行。将能引起中断的事件称为中断源。CPU现行运行的程序称为主程序。处理随机事件的程序称为中断服务子程序。任务2:中断法避障思考:调用子程序和调用中断服务程序的区别?答:调用子程序在程序中是事先安排好的,而何时调用中断服务程序是无法确定,因为,中断的发生是由外部因素决定的,程序中无法事先安排,因此,调用中断服务程序的过程开始由硬件自动完成的。中断技术的优点分时操作——CPU可以同多个外设“同时”工作实时处理——CPU及时处理随机事件故障处理——电源掉电、存储出错、运算溢出任务2:中断法避障MCS-51中断系统中断源中断标志中断允许中断优先级MCS-51中断系统结构中断寄存器任务2:中断法避障MCS-51的中断系统——中断源8051单片机有5个中断请求源:单片机INT0或外部输入中断源INT0(P3.2)INT1或外部输入中断源INT1(P3.3)T0片内定时器T0的溢出T1片内定时器T1的溢出串行口片内串行口发送或接收中断源任务2:中断法避障MCS-51的中断系统——中断标志CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断标志位每一个中断源都有相应的中断标志位;某一个中断源申请中断,相应中断标志位置1。任务2:中断法避障MCS-51的中断系统——中断允许CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断标志位EA——总中断允许位,EA=1开放所有中断,EA=0,禁止所有中断;某一个中断源还有相应的中断允许位,1允许相应中断源的中断,0禁止相应中断源的中断。中断允许ESET0EX0EX1ET1EA任务2:中断法避障MCS-51的中断系统——中断优先级CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TISI中断源中断标志位单片机中有两个中断优先级,即高优先级中断和低优先级中断,前者优先权高于后者(在程序中设置,相应位=1,为高优先级);同一优先级别的中断源按照自然优先级顺序确定优先级别(硬件形成,无法改变)。中断允许ESET0EX0EX1ET1EA自然优先级高低优先控制PSPT0PX0PX1PT1任务2:中断法避障IE0TCONSCONINT0IT0=0IT0=1INT1IT1=0IT1=1TF0IE1TF1T0T1TIRITXDRXDESET0EX0EX1ET1EA自然优先级矢量地址高级中断请求自然优先级矢量地址低级中断请求PX0PT0PX1PT1PSIEIPMCS-51的中断系统结构图中断标志位中断源允许总允许中断优先级任务2:中断法避障TCON寄存器——T0和T1控制寄存器TF1TF0IE1IT1IE0IT0TCONT1溢出中断标志(TCON.7):T1启动计数后,计满溢出由硬件置位TF1=1,向CPU请求中断,此标志一直保持到CPU响应中断后,才由硬件自动清0。也可用软件查询该标志,并由软件清0。76543210任务2:中断法避障TF1TF0IE1IT1IE0IT0TCON88H外部中断INT1中断标志位(TCON.3):IE1=1,外部中断1向CPU申请中断外部中断INT1触发方式控制位(TCON.2):IT1=0,电平触发方式IT1=1,下降沿触发方式76543210TCON寄存器——T0和T1控制寄存器注意:该寄存器可以位寻址。任务2:中断法避障TI(SCON.1)——串行发送中断标志。RI(SCON.0)——串行接收中断标志。TIRISCON寄存器——串行口控制寄存器SCON98H76543210注意:该寄存器可以位寻址。任务2:中断法避障IE寄存器——中断允许寄存器IEA8HEAESET1EX1ET0EX0例:允许定时器T0中断:SETBEASETBET0或MOVIE,#82H76543210注意:该寄存器可以位寻址。任务2:中断法避障51单片机有两个中断优先级——高级和低级专用寄存器IP为中断优先级寄存器,用户可用软件设定相应位为1,对应的中断源被设置为高优先级,相应位为0,对应的中断源被设置为低优先级系统复位时,均为低优先级该寄存器可以位寻址PSPT1PX1PT0PX0IP寄存器——中断优先级寄存器IPB8H76543210任务2:中断法避障中断处理过程中断处理过程分为三个阶段:中断响应、中断处理和中断返回。中断响应中断处理(又称中断服务)中断返回中断请求的撤除中断响应中断返回任务2:中断法避障中断响应(以外部中断0为例)中断响应:在满足CPU的中断响应条件之后,CPU对中断源中断请求予以处理。中断响应过程:保护断点地址;中断响应把程序转向中断服务程序的入口地址(通常称矢量地址)。特别注意:这些工作是硬件自动完成的!断点地址中断服务子程序的入口地址外部中断0入口地址0003ZD0AJMPORG0003HAJMPZD0ZD0任务2:中断法避障中断响应中断服务子程序入口地址又称为中断矢量或中断向量。中断响应单片机中5个中断源的矢量地址是固定的,不能改动。断点地址中断服务子程序的入口地址任务2:中断法避障程序存储器ROM0000H:复位后,程序的入口地址(PC=0000H)0023H:串行口中断入口0003H:外部中断0入口000BH:定时器0溢出中断入口0013H:外部中断1入口001BH:定时器1溢出中断入口002AH使用时,通常在这些入口地址处存放一条跳转指令,使程序跳转到用户安排的中断服务程序起始地址上去!任务2:中断法避障程序存储器ROM0000H:复位后,程序的入口地址(PC=0000H)0023H:串行口中断入口0003H:外部中断0入口000BH:定时器0溢出中断入口0013H:外部中断1入口001BH:定时器1溢出中断入口002AH包含T0中断服务子程序的程序结构:ORG0000HAJMPMAINORG000BHAJMPINTT0ORG0100HMAIN:...INTT0:...RETIENDAJMPMAINAJMPINTT0任务2:中断法避障中断处理中断服务程序从中断子程序入口地址开始执行,直到返回指令RETI为止,这个过程称为中断处理(或中断服务)。中断服务子程序一般包括两部分内容,一是保护和恢复现场,二是处理中断源的请求。中断响应入口地址RETI任务2:中断法避障中断处理INTT0:PUSHACCPUSHDPHPUSHDPLPUSHPSW中断源服务POPPSWPOPDPLPOPDPHPOPACCRETI保护现场恢复现场任务2:中断法避障中断返回中断返回是指中断服务完后,计算机返回到原来暂停的位置(即断点),继续执行原来的程序。中断返回由专门的中断返回指令RETI来实现。中断响应中断返回任务2:中断法避障中断返回RETI指令功能:把断点地址取出,送回到程序计数器PC中去。另外,它还通知中断系统已完成中断处理,将清除优先级状态触发器。特别注意:不能用RET指令代替RETI指令!中断响应中断返回任务2:中断法避障中断处理过程示意图中断源发中断请求中断响应条件是否满足?中断是否受阻?把PC断点地址压入堆栈相应中断源的中断入口地址送入PC,转向中断服务程序NYYN由硬件自动完成任务2:中断法避障关中断保护现场中断服务开中断关中断恢复现场开中断中断返回断点地址由堆栈弹入PC保护现场和恢复现场的过程中不允许中断,以免现场遭到破坏。保护和恢复现场之后的开中断是为了允许有更高级中断打断此中断服务程序。中断服务程序硬件自动完成任务2:中断法避障任务2:中断法避障作业P101简答题1、2
本文标题:单片机控制机器人触觉避障
链接地址:https://www.777doc.com/doc-3987822 .html