首页 理论教育实现LED灯闪烁控制

实现LED灯闪烁控制

【摘要】:图4-2 8位LED灯闪烁电路图4.源程序设计本项目的源程序如下:5.Keil uVision调试本项目理论部分重点介绍如何使用Keil uVision的“Debug”功能,通过程序的调试来确定延时参数。

1.任务要求

项目3中利用74HC245扩展单片机I/O功能时,如果直接用P0端口来驱动,会发现不能实现LED灯的闪烁,试分析原因并找出解决方法。

2.任务目的

(1)通过不同I/O端口控制LED灯的闪烁,深入了解单片机并行I/O端口及其应用。

(2)认识C语言的程序结构和特点。

(3)熟悉在Keil uVision环境中调试程序的方法。

(4)进一步学习在Proteus环境中实现仿真的应用。

3.任务分析

通过对比图3-25和图4-1,两者唯一不同的是图3-25中74HC245接P2口,图4-1中74HC245接P0口,其余都没有发生变化,导致不能控制8位LED灯闪烁的主要原因应该是P0口引起的,根据项目1中对单片机内容结构的描述,P0口作为输入/输出端口使用时要外接上拉电阻,图4-1中并没有外接上拉电阻,现在在图4-1的基础上给P0口外接上拉电阻,发现问题便解决。电路图如图4-2所示。

图4-2 8位LED灯闪烁电路图(74HC245直接接P0口,加上拉电阻)(www.chuimin.cn)

4.源程序设计

本项目的源程序如下:

5.Keil uVision调试

本项目理论部分重点介绍如何使用Keil uVision的“Debug”功能,通过程序的调试来确定延时参数。

6.Proteus的设计与仿真

在Proteus环境下,进行硬件的设计,结合Keil uVision进行软件仿真。

7.制作实物

在项目3的基础上增加74HC245芯片,按图4-2所示的电路图重新调整。