购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.17 定时器控制交通指示灯

Proteus内置了交通指示灯组件,图3-21用定时器控制交通指示灯按一定时间间隔切换显示。为了能够快速观察切换闪烁及切换显示效果,源程序中缩短了切换时间间隔。

图3-21 定时器控制交通指示灯电路

1.程序设计与调试

本例交通指示灯所有切换过程由定时器中断函数控制,因为指示灯切换有4种不同类型操作,程序中引入变量Operation_Type表示当前操作类型,取值1~4对应的操作如下:

① 东西向绿灯与南北向红灯亮5s;

② 东西向绿灯灭,黄灯闪烁5次;

③ 东西向红灯与南北向绿灯亮5s;

④ 南北向绿灯灭,黄灯闪烁5次。

在第4项操作后回到第1项操作继续重复。

由于延时要求为5s,定时器所设置的50ms延时无法直接完成,因而程序中用Time_Count来实现延时值的加倍,其中1,3的操作用Time_Count将延时加长100倍,形成5s延时;而2,4操作则复杂一些,因为它们不仅需要加长延时,还需要控制闪烁,除了仍用Time_Count加长延时外,还用Flash_Count来控制闪烁次数。

2.实训要求

① 调试本例后修改代码,使其实现完整的交通指示灯仿真效果。

② 改用数码管设计交通指示灯。 v3Ag+rtZbFxALd4kSHXyxD1PQj7OLdRd0s7MLxfVgQT9SpHoJhBtNqi5WZM+nT//

3.源程序代码
点击中间区域
呼出菜单
上一章
目录
下一章
×