8086中断类型号为40H的中断服务程序入口地址存放在中断向量表的起始地址是 (8086中断向量表位于内存的什么区域)
本文目录导航:
- 8086中断类型号为40H的中断服务程序入口地址存放在中断向量表的起始地址是:
- const struct PIE_VECT_TABLE PieVectTableInit什么意思?
- 一个基于单片机精确计时的电源开关程序的设计与实现,各位大哥,我的论文如题0.988304039923616
8086中断类型号为40H的中断服务程序入口地址存放在中断向量表的起始地址是:
答案为C. 因为中断向量是放在从 0000H 起始的地址中的, 与 DS 寄存器无关 (DS一般存放数据段的地址). 每个向量为 4 字节 (前两个字节为段地址, 后两个字节为偏移值), 40H 的就是40H*4=100H

const struct PIE_VECT_TABLE PieVectTableInit什么意思?
定义了一个结构体类型为PIE_VECT_TABLE的结构体常量PieVectTableInit(不可更改),并给元素赋初值。
其元素数值为其对应的默认的中断服务程序的起始地址(函数名)。
在InitPieVectTable初始化函数中PieVectTableInit的值都赋值给PieVectTable,完成初始化。
一个基于单片机精确计时的电源开关程序的设计与实现,各位大哥,我的论文如题0.988304039923616
一个基于单片机精确计时的电源开关控制程序的设计与实现摘要由于精确计时在当前工业控制,日常生活等领域有广泛应用,本设计采用MCS-51系列单片机为核心器件,辅以相应的外围电路,设计制作出了基于单片机的精确计时控制硬件系统,并通过继电器外接被控制端,可以实现用较小的电流去控制较大电流的目的。
在硬件系统的基础之上进行软件的设计,以进行精确延时。
在硬件方面,除了单片机外,使用四个七段LED数码管来进行显示,LED采用的是动态扫描显示,使用74LS14芯片进行驱动。
软件方面采用汇编语言编程,使用SLISP软件进行的程序烧写,涉及了单片机的定时和中断的使用。
关键词:单片机;精确计时;继电器;电路TheDesignandImplementationofaPowerSwitchControlProcedureBasedonaPreciseTimeControlofMCUAbstractPrecisetimecontroliswidelyappliedintheindustrialcontrol,-51microcontrollerasthecorecomponents,,,;:MCU;precisetimecontrol;Relay;circuit目录论文总页数:22页1.引言11.1.课题背景11.1.1.单片机概述11.1.2.单片机的产生和发展历史11.1.3.单片机的发展趋势11.1.4.单片机的主要特点11.1.5.单片机的应用11.1.6.单片机的主要生产厂家和机型-51系列单片机介绍31.2.1.基本特性31.2.2.引角功能51.2.3.汇编语言简介72.系统硬件设计82.1.设计方案82.2.硬件设计电路框图82.3.机型及器件选择92.3.1单片机的选择92.3.2时钟电路的设计92.3.3复位电路的设计102.3.4LED显示电路设计与器件选择102.3.5按键电路设计与器件选择122.3.6蜂鸣器电路的设计132.3.7继电器电路的设计142.4.硬件设计电路原理图142.5.硬件的调试153.软件设计153.1.程序流程图153.2.程序设计具体实现163.3.编译软件的使用和编译过程183.4.烧片183.5.系统测试19结论19参考文献20致谢21声明22图14程序流程图3.2.程序设计具体实现程序的内容包括:主程序的起始地址,中断服务程序的起始地址,有关内存单元及相关部件的初始化和一些子程序调用等。
1.程序的起始地址MCS-51系列单片机复位后,=0000H,而0003H为外部中断0的入口地址,000BH为计数器0中断服务程序入口地址,001BH为计数器1中断服务程序入口地址,0023H为串行中断服务程序入口地址。
所以编程时应在0000H处写一跳转指令。
当CPU接收到中断请求信号并予以响应后,CPU会把当前的PC内容压入堆栈进行保护,然后转入相应的中断服务程序入口处执行。
一般应在相应的中断服务程序入口处写一条跳转指令,并以跳转指令的目标地址作为中断服务程序的起始地址进行编程。
2.主程序的初始化内容所谓初始化,是对将要用到的MCS-51系列单片机内部部件或扩展芯片进行初始工作状态设定。
MCS-51系列单片机复位后,非凡功能寄存器IE,IP的内容均为00H,所以应对IE,IP进行初始化编程,以开放CPU中断,答应某些中断源中断和设置中断优先级等。
在本程序中,使用了定时器1的中断,中断服务程序入口地址为001BH,用来产生40ms的单位时间。
同时还要对一些存储单元进行初始化。
3.T1中断服务子程序的实现本设计中所用晶振为12MHz,计时器1的计时初值为63C0H,计时为40ms。
本设计的软件中设定为40ms的255倍。
程序如下所示:TIMER40ms:;计时中断程序CLREA;关中断PUSHACC;将A累加器和缓存器库存入堆栈内PUSHPSWMOVPSW,设定缓存器库为第二个,以免改变原来的R~R7值MOVTH1,设定定时时间usMOVTL1,清除计时溢出位标志,以进行下一次的计时中断MOVR0,判定定时时间倍数是否为零JZLAB3DEC@R0;不是,将定时时间倍数减1LAB3:POPPSW;恢复原来年A累加器和缓存器库POPACCRETI;中断指令返回