指示灯数码管的中断控制.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
指示灯数码管的中断控制 一、实验综述 本实验的目的是掌握外部中断原理,学习中断编程与程序调试方法。实验要求熟悉 uvision3 的软件调试方法,完成 c51 语言编程,练习 uvision3 与 ISIS 的联机仿真方法。在编程软件配合下,要现如下功能:程序启动后,D1 处于熄灯、LED1 处于黑屏状态;单击 K1,可使 D1 亮灯状态反转一次;单击 K2,可使 LED1 显示值加 1,并按十六进制数显示,达到 F 后重新从 1 开始。 二、实验原理 在中断编程中,K1 和 K2 的按键动作分别作为 INT0 和 INT1 的中断请求,在中断函数中进行指示灯与数码管的信息处理。初始化后,主函数处于无限循环状态,等待中断请求。 三、实验仪器、设备或软件 实验所需仪器、设备或软件包括电脑、Keil uVision4、Proteus7 等。 四、实验过程 实验过程包括以下几个步骤: 1. 在 Keil uVision4 中编写和编译 C51 程序,生成可执行文件。 2. 在 uVision4 中启动 ISIS 的仿真运行,并进行联机调试。 五、实验代码 实验代码包括以下几个部分: 1. led_mod 数组用于存储数码管的显示数据。 2. count 变量用于记录当前的数码管显示值。 3. INT_0SRV 函数用于处理 INT0 中断请求,实现 D1 亮灯状态反转。 4. INT_1SRV 函数用于处理 INT1 中断请求,实现 LED1 显示值加 1。 5. main 函数用于初始化系统,设置中断请求和启动主循环。 六、实验结论 实验结果表明,程序能够正确地实现指示灯和数码管的控制。单击 K1 可以使 D1 亮灯状态反转一次,单击 K2 可以使 LED1 显示值加 1,並按十六进制数显示,达到 F 后重新从 1 开始。 七、实验应用 本实验的应用前景广泛,例如在智能家居系统、工业控制系统、自动化控制系统等领域中都可以应用中断控制技术来实现实时控制和数据处理。 八、实验心得 通过本实验,我学会了中断编程的基本原理和方法,掌握了 uvision3 的软件调试方法和 c51 语言编程技巧,并且了解了 ISIS 的联机仿真方法。这些知识和技能将有助于我在未来的学习和工作中更好地应用中断控制技术。
- 粉丝: 77
- 资源: 5万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助