授课日期 班次 授课时数2 课题:任务八LED显示电路( 教学目的:掌握子程序调用和保护现场的问题 熟悉两条专门的查表指令 重点:子程序调用和保护现场的问题以及查表指令 难点:现场保护的问题 教具:多媒体 作业:4234.24 自用参考书:《单片机应用技术》耿长清主编、《单片机应用技术》刘守义主编 教学过程:一、复习提问 描述任务LED显示电路 2分支程序和循环程序的设计 二、新授 由任务八LED显示电路的控制程序引入本次课内容 子程序的概念(由实际应用中遇到带有通用性的问题引出子程序的概念) 2子程序的结构 3如何保护现场?(根据生活中的具体实例提岀现场保护的问题) 4参数的传递方法 可利用累加器或寄存器、利用存储器、利用堆栈指针 5两条专门的查表指令 用DPTR作基地址的查表步骤、用PC内容作基地址的查表步骤 6程序设计举例 7课堂小结 课后小结
授课日期 班次 授课时数 2 课题: 任务八 LED显示电路(二) 教学目的:掌握子程序调用和保护现场的问题 熟悉两条专门的查表指令 重点: 子程序调用和保护现场的问题 以及查表指令 难点: 现场保护的问题 教具: 多媒体 作业: 4.23 4.24 自用参考书:《单片机应用技术》耿长清主编、《单片机应用技术》刘守义主编 教学过程:一、复习提问 1.描述任务LED显示电路 2.分支程序和循环程序的设计 二、新授 由任务八LED显示电路的控制程序引入本次课内容 1.子程序的概念(由实际应用中遇到带有通用性的问题引出子程序的概念) 2.子程序的结构 3.如何保护现场?(根据生活中的具体实例提出现场保护的问题) 4.参数的传递方法 可利用累加器或寄存器、利用存储器、利用堆栈指针 5.两条专门的查表指令 用DPTR作基地址的查表步骤、用PC内容作基地址的查表步骤 6.程序设计举例 7.课堂小结 课后小结:
4.2任务八L示电路 4.2.4相关知识 子程序的概念 通常把这些基本操作功能编制为程序段作为独立的子程序,以供不 同程序或同一程序反复调用。在程序中需要执行这种操作的地方放置 条调用指令,当程序执行到调用指令,就转到子程序中完成规定的操 作,并返回到原来的程序继续执行下去。 子程序结构 能供调用的子程序,其结构应具备: ◆必须标明子程序的入口地址,又称首地址,以便程序调用 ◆必须以返回指令RET结束子程序
4.2 任务八 LED显示电路 4.2.4 相关知识 ➢子程序的概念 通常把这些基本操作功能编制为程序段作为独立的子程序, 以供不 同程序或同一程序反复调用。在程序中需要执行这种操作的地方放置 一条调用指令, 当程序执行到调用指令, 就转到子程序中完成规定的操 作, 并返回到原来的程序继续执行下去。 ➢子程序结构 能供调用的子程序,其结构应具备: ❖必须标明子程序的入口地址,又称首地址,以便程序调用 ❖必须以返回指令RET结束子程序
4.2任务八L示电路 4.2.4相关知识 参数传递 在使用调用指令不附带任何参数时,参数的互相传递要由设计者通过 程序安排。一般可采用以下方法: 令传递数据。将需传递的参数通过工作寄存器R或累加器A传递给子程 序。即在主程序调用子程序前将参数差额主选定的工作寄存器组RR7 累加器A中,供子程序读取或者将参数在调用前先压入堆栈,进入子程 序后再从堆栈中读出。 ◆传递地址。将要传递的参数存放在数据存储器中,将其地址通过工 作寄存器R0、R或数据指针DPTR传递,供子程序读取参数
4.2 任务八 LED显示电路 4.2.4 相关知识 ➢参数传递 在使用调用指令不附带任何参数时,参数的互相传递要由设计者通过 程序安排。一般可采用以下方法: ❖传递数据。将需传递的参数通过工作寄存器Rn或累加器A传递给子程 序。即在主程序调用子程序前将参数差额主选定的工作寄存器组R0~R7、 累加器A中,供子程序读取或者将参数在调用前先压入堆栈,进入子程 序后再从堆栈中读出。 ❖传递地址。将要传递的参数存放在数据存储器中,将其地址通过工 作寄存器R0、R1或数据指针DPTR传递,供子程序读取参数
4.2任务八L示电路 4.2.4相关知识 现场保护 主程序的现场保护和恢复。子程序(包括中断服务程序)是个独 立的程序段,在子程序执行过程中常需用到通用单元,例如:工 作寄存器RR、累加器A、数据指针DPTR,以及有关标志、状 态位等。而这个单元中的原内容在调用子程序结束之后的主程 序中仍有用,需进行保护,称现场保护。在执行完子程序并返回 继续执行主程序前应恢复其原内容,称现场恢复。一般有两种现 场保护/恢复方式
4.2 任务八 LED显示电路 4.2.4 相关知识 ➢现场保护 主程序的现场保护和恢复。子程序(包括中断服务程序)是个独 立的程序段,在子程序执行过程中常需用到通用单元,例如:工 作寄存器R0~R7、累加器A、数据指针DPTR,以及有关标志、状 态位等。而这个单元中的原内容在调用子程序结束之后 的主程 序中仍有用,需进行保护,称现场保护。在执行完子程序并返回 继续执行主程序前应恢复其原内容,称现场恢复。一般有两种现 场保护/恢复方式:
4.2任务八L示电路 4.2.4相关知识 ☆调用前保护、返回后恢复。这种方式是在主程序逻辑的调节器 用指令前进行现场保护,在调用指令之后,即返回原断点处进行 恢复现场。其程序结构如下所示: 主程序 PUSH PSW 将PSW、A、DPTR等入栈保护 PUSH A PUSH B PUSH DPL PUSH DPH PUSH PSW,#10H;选用工作寄存器组2,将0组保护
4.2 任务八 LED显示电路 4.2.4 相关知识 ❖调用前保护、返回后恢复。这种方式是在主程序逻辑的调节器 用指令前进行现场保护,在调用指令之后,即返回原断点处进行 恢复现场。其程序结构如下所示: 主程序 PUSH PSW ;将PSW、A、DPTR等入栈保护 PUSH A PUSH B PUSH DPL PUSH DPH PUSH PSW,#10H ;选用工作寄存器组2,将0组保护