C51单片机程序设计题,要求用C语言做,模拟交通灯控制单片机电路,答案要详细具体。

核心提示晚上随手写,也未调试,权当看看程序有不严谨地方还得调试修改#include <REGX51H>#define STATUS_1S1#define STATUS_2S2#define STATUS_3S3#define STATUS_4S4#

晚上随手写,也未调试,权当看看

程序有不严谨地方还得调试修改

#include <REGX51H>

#define STATUS_1S 1

#define STATUS_2S 2

#define STATUS_3S 3

#define STATUS_4S 4

#define STATUS_5S 5

#define STATUS_15S 15

#define STATUS_28S 28

#define STATUS_29S 29

#define STATUS_30S 30

unsigned char flag,status,status_temp=1,status_temp_;

sbit K1 = P0^0;

sbit K2  = P0^1;

sbit RLED = P0^2;

sbit YLED = P0^3;

sbit GLED = P0^4;

void Init(void)

{

ET0=1;

TR0=1;

RLED=0;  //亮

YLED=0;

GLED=0;

while(status_temp)

{

switch (status)

{

case STATUS_1S: //1S

{

RLED=1; //灭,闪一次

YLED=1;

GLED=1;

} break;

case STATUS_2S: //1S

{

RLED=0; //亮,闪一次

YLED=0;

GLED=0;

} break;

case STATUS_3S: //1S

{

RLED=1;    //灭

YLED=1;

GLED=1;

status_temp=0;

} break;

}

}

status_temp=1;

ET0=0;

TR0=0;

}

void Init_Timer0(void)  

{

TMOD=0x01;

// ET0=1;

// TR0=1;

EA=1;

TH0=0X3C;

TL0=0XB0;    // 未计算,偷楼上的

}

void M_Start(void)

{

TH0=0X3C;

TL0=0XB0;

ET0=1;

TR0=1;

RLED=0;  //红亮

while(status_temp)

{

switch (status)

{

case STATUS_1S:

{

if(status_temp_==1)

{

YLED=0;

}

} break;

case STATUS_2S:

{

if(status_temp_==1)

{

YLED=1;

}

} break;

case STATUS_3S:

{

if(status_temp_==1)

{  

YLED=0;

status_temp_=0;

}

} break;

case STATUS_15S: //15S灭,绿亮

{

RLED=1;

GLED=0;

} break;

case STATUS_28S:

{

GLED=1;

} break;

case STATUS_29S:

{

GLED=0;

} break;

case STATUS_30S:

{

GLED=1;

status=0;

status_temp_=1;

} break;

}

}

ET0=0;

TR0=0;

status=0;

status_temp=1;

YLED=1;

}

void M_End(void)

{

TH0=0X3C;

TL0=0XB0;

ET0=1;

TR0=1;

RLED=0;  //亮 1次

YLED=0;

GLED=0;

while(status_temp)

{

switch (status)

{

case STATUS_1S: //1S

{

RLED=1; //灭一次

YLED=1;

GLED=1;

} break;

case STATUS_2S: //1S

{

RLED=0; //亮二次

YLED=0;

GLED=0;

} break;

case STATUS_3S: //1S

{

RLED=1;    ////灭二次

YLED=1;

GLED=1;

} break;

case STATUS_4S: //1S

{

RLED=0;    ////亮三次

YLED=0;

GLED=0;

} break;

case STATUS_5S: //1S

{

RLED=1;    ////灭三次

YLED=1;

GLED=1;

status_temp=0;

} break;

}

}

status_temp=1;

ET0=0;

TR0=0;

}

main()

{

Init();//单片机初始化

Init_Timer0();//定时器初始化

while(1)

{

if(K1==0)

M_Start();//模拟开始

if(K2==0)

M_End();//模拟结束

    }

}

void interrupt_time0() interrupt 1   //核对头文件,一致就好

{

TH0=0X3C;

TL0=0XB0;

flag++;

if(flag==20)

{

status++;

flag=0;

}

}

8086交通灯设计 按照已给的8086仿真电路图编程实现8086控制交通灯。

交通灯方面的研究论文

 交通灯方面的研究对于交通管理的发展有着重要的影响。下面就随我一起去阅读交通灯方面的研究论文,相信能带给大家启发。

交通灯方面的研究论文一

 摘要:

 该文引入了交通灯的系统设计和系统控制计划,此计划设计的交通灯控制系统是基于单片机的。本系统采用MSC-51系列单片机AT89S51为中心器件来设计交通灯控制器。本系统具有适用性强、操作简单、扩展功用强等优点。

 关键词:

 单片机;交通灯

 1 控制器软件设计

 11 交通管理计划概述

 设在十字路口,分为东西向和南北向,在任一时辰只要一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。

 经过详细的路口交通灯状态的演示剖析我们能够把这四个状态归结如下:

 1)东西方向红灯亮,同时绿灯灭,南北方向黄灯灭,同时绿灯亮,倒计时10秒。此状态下,东西向制止通行,南北向允许通行。

 2)东西方向红灯亮,南北方向黄灯闪亮,倒计时5秒。此状态下,除了曾经正在通行中的其他所以车辆都需等候状态转换。

 3)南北方向红灯亮,同时绿灯灭,东西方向黄灯灭,同时红灯亮,倒计时10秒。此状态下,东西向允许通行,南北向制止通行。

 4)南北方向绿灯灭,同时黄灯闪亮,东西方向红灯亮,倒计时5秒。此状态下,除了曾经正在通行中的其他所以车辆都需等候状态转换。

 为了满足车流的变化该设计能够人为的增加或者减少红绿交通灯通行时间,由此设置了两个按钮。P20口用来增加通行时间(在10秒的根底上),P21口用来减少通行时间(在10秒的根底上)。这个功用极大地增加了此交通系统在应用中的适用性同时也在很大水平上俭省了在交通灯系统更新中的破费。

 而为了应对紧急状况,如救护车,消防车,警车以及严重交通事故,该交通灯系统设置了三个人为强迫转换按钮。三个按钮开通时,分别会输出高电平到P22,P23,P24口;P22口信号设定为东西口为红灯,南北向为绿灯,制止东西向交通流,准许南北向交通流经过;P23信号会设定东西口为绿灯,南北口为红灯,制止南北向交通流,准许东西向交通流经过;P24口信号设定为东西向及南北向均为红灯,制止一切交通流,以应对十字路口严重交通事故。当启动人为强迫功用时,倒计时数码管不再显现倒计时,而是全部熄灭以警示众人。

 12 系统工作原理

 121 普通形式工作原理

 在没有强迫按钮按下,系统处于普通形式。普通形式总共有四个状态,以东西口为例,四个状态分别为红灯、黄灯、绿灯及左转、黄灯。普通形式工作原理就是以这四个状态为周期,循环工作。以东西向为例,经过P0口输出先给东西口亮红灯,再给P1及P3口输出,动态显现红灯倒计时,之后不时调用显现子程序,直到红灯倒计时为零;接着经过P0口输出,使东西向黄灯亮起,同样动态显现黄灯倒计时,直到零;然后经过P0口输出,使东西向绿灯以及左转灯亮起,显现倒计时到零;最后经过P0输出,使东西向黄灯亮起,再倒计时到零;这样,就完成了一个周期的显现控制,程序将跳转回到给东西向亮红灯处,循环执行。同时,由于交通流一日千里的发作着改动,能够依据需求来改动通行时间,经过P2口输出经过P0口,从而改动显现的时间。

 122 紧急形式工作原理

 可供选择的紧急形式有三种。当十字路口发作严重交通事故时,需求把两边交通都关断,这时,可开启开关5,就会输出高电平到P24,单片机处置后,会输出信号到P0口,使东西向与南北向均亮起红灯,同时调用显现程序,使显现数码管全部熄灭。当事故解除,开启返回开关7时,程序会回到主程序,重新进入普通形式。开关4会使P23输入为高电平,单片机处置后,会使东西向亮起红灯,南北向亮绿灯,只准许南北向通行,同样数码管会全部熄灭,危殆状况解除后,同样回到主程序,继续执行普通形式。开关3会使P22输入为高电平,单片机处置后,会使南北向亮起红灯,东西向亮绿灯,只准许东西向通行,同样数码管会全部熄灭,危殆状况解除后,同样回到主程序,继续执行普通形式。

 在单片机不时执行主程序,以普通形式控制交通流的时分,它会不时的扫描P22,P23以及P24口,以检查能否有紧急状况发作,当三个端口有紧急信号呈现,单片机就会跳出主程序,执行相应的紧急信号程序。

 2 系统硬件衔接电路

 系统硬件电路局部将分为以下几局部来引见,分别是主面板电路,供电电源电路,单片机系统的时钟电路,单片机系统的复位电路,数码管显现电路,信号灯控制电路,车辆检测电路等。

 21 主面板电路

 系统采用5V直流稳压电源供电,供电电压为+5V。

 系统复位电路采用的是开关复位的方式,能够人工对单片机停止复位操作。同时,单片机上电时,电容的存在会使得复位引脚的电压维持在高电位超越两个周期,系统会自动复位;而按下复位开关,系统就可人工复位。

 振荡电路运用的是12MHz的石英晶振,即单片机的主频为12MHz,一个机器周期为12个时钟周期,所以它的机器周期为1s,这位定时器初值的计算带来了便当。

 两个路口的12个发光二极管每六个为一组,作为东西向,南北向的两组交通灯,每个发光二极管串联一个1kΩ电阻,以灌电流方式,衔接到单片机P3口和P1口,当单片机P3和P1口的某个口输出为低电平常,相应的发光二极管亮起,表示相应的信号灯亮起。

 22 5V直流稳压电源电路

 该单片机由5V直流稳压电源停止供电。

 5V直流稳压电压工作原理:220V交流电经变压器,从副边输出为9V交流电。9V交流经整流桥整流,电容滤波,被加到三端集成稳压器7805上,经7805后输出5V直流,直流输出后经电容滤波,滤去其中高频重量以及低频重量,最后输出5V直流电用于单片机系统供电。

 23 单片机系统时钟复位电路

 ATMEL公司消费的AT89S51单片机它是硬件电路的中心局部,时钟电路晶振运用12MHz,复位电路采取按键复位方式。

 24 单片机数码管显现电路

 显现电路采用8个共阳数码管,P1口作为数码管的输入,P04、P05、P06 P07分别控制东西南北四路数码管的位选端C1,C2,C3,C4。

 3 结论

 本设计的重点在于处理交通灯时间固定、缺乏灵敏性不能依据一日千里的车流变化适时改动以及缺乏紧急情况应对才能这两项缺陷。

 传统交通灯时间固定,不能依据车流量的变化来调理时间,只能经过不时的改换系统来完成,这样做不但耗时耗力、还会糜费大量的财力物力。

 另一方面,传统交通灯缺乏紧急情况应对才能。当交通路口发作交通事故时,交通灯不能第一时间做出反响来处置交通流;此外,关于紧急车辆,交通灯也无法停止反响来应对紧急状况。这样是很致命的,由于缺乏紧急状况应对才能,极有可能使得紧急状况变得复杂以至可能危及生命。

 本设计主要处理的是交通灯上述两项缺陷。

 针对交通灯时间固定的问题,本系统能够经过手动调理来增加或者是减少红绿灯时间以满足车流量不时变化的需求,从而不但延长了此系统的运用寿命对工作人员的运用请求很低,而且还俭省大量的财力物力。

 针对交通灯缺乏紧急状况应对才能的问题,该系统增设了紧急形式。当交通路口发作严重交通事故或者路口有消防、救护等紧急车辆时,交通灯能够做出相应的响应,让紧急车辆优先经过,从而尽可能将可预见的损失减小到最小的水平。于此同时,在停止一系列的紧急操作时,相应的系统的数码管显现局部会全部熄灭,来通知路口的司机,路口有紧急状况发作。

 本系统以一块AT89S51单片机为中心,充沛应用单片机I/O口,来完成对交通灯路口的交通流控制。

 系统有两种工作形式:普通形式与紧急形式。

 普通形式每个路口一个周期的显现状态依次为为:红灯10s,绿灯5s,黄灯5s,红灯10s,绿灯5s如此重复。红绿灯所设置的初始时间并不是不能够改动的,它能够依据实践需求来改动以满足实践的需求。在每个状态,数码管都会显现信号灯倒计时,以提示司机信号灯转换剩余时间。

 紧急形式下,能够做出三种以为强迫措施:东西向,南北向都亮红灯,该交通路口制止通行;东西向亮红灯,南北向亮绿灯,东西向制止通行,南北向车辆通行;东西向亮绿灯,南北向亮红灯,东西向车辆通行,南北向车辆制止通行。紧急形式下,数码管会恒定全部熄灭,以提示司机紧急状况的发作。直到紧急状况解除,数码管才会回到普通形式。

 该系统充沛思索到传统交通灯信号灯时间固定,应对紧急状况性能不佳等问题,并对这些问题停止了处置。因而,在交通控制效率以及紧急状况处置等方面,该交通灯控制系统要优于当前的传统交通灯控制系统。

交通灯方面的研究论文二

 摘 要:

 本文分析了现代交通控制与管理问题的现状,根据城市交通的实际情况,阐述了交通灯数字控制系统的工作原理,给出了一种简单实用的城市交通灯数字控制系统的电路设计方案

 关键词:

 交通灯论文

 路口的交通灯是城市用于缓解交通秩序的重要手段之一,同时它还可以监测城市交通状况,实现实时监控。当前的交通灯控制和交通管理的综合管理系统是现代交通指挥控制的重要组成部分,对于提高交通的流通度发挥着重要的作用。要想加强交通灯的自动化控制,实现数字化监控和管理,就必须具有一个科学的交通灯控制电路设计。无论是哪个地区或城市,红灯亮表示该道路禁止通行,黄灯亮表示停车,绿灯亮表示允许通行。交通控制灯的主要作用就是实现十字路口红、黄、绿三色交通信号灯的自动化控制,从而指挥十字路口各个车量个行人的正常通行。

 一、交通灯的工作原理

 本次电路设计的核心采用AT89C51,采用CD4511译码器控制数码管显示数字,再加上一块74LS14反相器防止按键过抖影响监测的准确程度。而该设计采用AT89C51芯片,使得线路更加趋向于智能化、自动化、准确化,同时还可以降低设计成本,提高线路的可靠性。为了形象的模拟出交通灯的`实际效果,我们采用三基色发光管代替交通灯,更加简单,容易实现,而且不需要采用另外的扩展I/O口。当核心AT89C51上电复位之后,首先要给它进行重置,使得该核心的四周指示灯全亮,同时LED上应该显示为0当准备工作完毕之后,准备开始。当按下开始键之后,系统将会开始运行,并运行相关程序。当南北方向时红灯亮,东西绿灯亮持续5S,紧接着南北绿灯亮,东西绿灯闪亮2S,在紧接着南北红灯亮,东西黄灯持续亮2S,延时1S后东西红灯亮,这时候东西向交通灯同先前的南北交通灯,然后系统将会重复此过程。当按下停止按钮之后,交通灯将会全部熄灭,等待其他的命令或是再次开始。

 (1)如果按一下开始按键,那么信号灯就会开始循环工作;

 (2)如果按一下停止按键,那么信号灯就会停止工作,信号灯也会全部熄灭;

 (3)三基色发光管的连接如上图所示,图中的奇数口代表的是红色交通灯,相反偶数则代表绿色交通灯,而二者同用的时候则指示灯显示为**。如果只有奇数的接口显示为1的时候,交通灯显红色;如果只有偶数的接口显示1的时候,交通灯显示为绿色;当两个接口都显示1的时候,则交通灯显示为**。

 (4)本次设计的交通灯,红灯亮的时间是9S,绿灯持续5S,闪亮2S,黄灯持续2S。

 二、系统电路主要模块分析

 1消抖电路

 在单片机系统运行的过程中,按键是主要操作工具,通过按键操作还可以实现单片机的数据收集处理以及命令的下达。当松开或是按下按钮之后,只需要向单片机的CPU输入0或是1电平,则单片机会受到相应的信号进行以下的操作。二无论怎样操作都会使得按钮发生稍微抖动,尽管抖动的时间很短,但是如果对于抖动不进行有效处理的话,那么就会影响系统运行的准确程度。因此,需对按钮进行去抖动处理。为了有效消除抖动我们经常是利用反相器集成电路来进行按扭的抖动消除的。

 2振荡、时钟电路

 振荡、时钟电路时单片机运行的核心,也是交通灯电路系统的具有重要作用的模块之一。为了保证时钟模块频率的稳定准确,保证其有条不紊的工作,提高单片机的运行效率,一定要保证时钟电路的质量。本次交通灯将通过利用AT89C51,确保放大器输入、输出端的正常运转。另外要严格控制对外接电容的电容大小,否则将会影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度和温度稳定性。

 3复位电路

 根据电路的应用要求和设计的方案,对于交通灯的电路设计必须配有复位电路,方便复位操作的进行。通常状况下,复位操作主要有两种基本形式,一种是上电复位,一种是上电或开关复位。而本设计则将采用上电或开关复位。当上电或开关复位的电源接通之后,单片机以及交通灯电路设计系统就会复位,而在系统运行期间也会让单片机进行复位。

 4LED驱动显示电路

 为了更好的使得交通灯的灯光显示更加明显,本次交通灯电路设计将采用LED数码管进行显示,一般状况下,我们采用的是8字型的数码管,数码管上的数字与LED管的发光程度有着密切的关系,为了使交通灯和数码进行准确的结合,我们将实行亮暗组合。本次设计我们将采用七段码译码器CD4511BCD码来驱动LED显示器,这种译码器既可以实现BCD转换,消除一些锁存的控制,还可以实现显示器的正常运行,直接对于显示器进行驱动。

 三、结语

 加强交通控制的主要目的无非是努力使道路的交通运行处于最佳的状态,为了实现这个目的,就应该制定出科学高效的交通控制系统,最大限度的保证交通流运动的连续性。加强交通控制,实行交通灯控制可以有效的改善原有的交通秩序,提高交通的安全性,还可以减少交通的延误,降低污染程度,从而降低能耗,保护环境。

;

大学数字电子技术的课程设计:数字式电子钟的设计或交通灯控制电路设计

CODE SEGMENT

FLASHTIME EQU 01H

;黄灯闪烁三次

OUT 00H,AL

MOV 03H,BL

START:

OUT 12h,AL;点亮黄灯

MOV AX,02H

CALL Delay

OUT 00h,AL;熄灭所有灯

MOV AX,02H

CALL Delay

OUT 12h,AL;点亮黄灯

MOV AX,02H

CALL Delay

OUT 00h,AL;熄灭所有灯

MOV AX,02H

CALL Delay

OUT 12h,AL;点亮黄灯

MOV AX,02H

CALL Delay

OUT 00h,AL;熄灭所有灯

MOV AX,02H

CALL Delay

MAIN:

OUT 21h,AL

MOV AX,0AH

CALL Delay

OUT 22H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 20H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 22H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 20H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 22H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 20H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 0CH,AL

MOV AX,10H

CALL Delay

OUT 14H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 04H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 14H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 04H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 14H,AL

MOV AX,FLASHTIME

CALL Delay

OUT 04H,AL

MOV AX,FLASHTIME

CALL Delay

JMP MAIN

CODE ENDS

Delay:

CALL Delay1S

DEC AX

CMP AX,0

JNZ Delay

RET

Delay1S:

MOV CX,04FFFH

Delayloop:

DEC CX

CMP CX,0

JNZ Delayloop

RET

END

设计题目:

数字钟的设计与仿真

二.设计要求:

(1)设计一个有“时”、“分”、“秒”(12小时59分59秒)显示,且有校时功能的电子钟;

(2)显示采用六只LED数码管分别显示时分秒;

(3)时间的小时、分可手动调整;

(4)采用+5V电源供电。

三.题目分析:

根据题目,我们可以分析出:数字电子钟是由多块数字集成电路构成的,其中有振荡器,分频器,校时电路,计数器,译码器和显示器六部分组成。振荡器和分频器组成标准秒信号发生器,不同进制的计数器产生计数,译码器和显示器进行显示,通过校时电路实现对时,分的校准。

1)振荡器又包括由集成电路555与RC组成的多谐振荡器,用石英晶体构成的振荡器和由逻辑门与RC组成的时钟源振荡器。三种方案如下图所示:

方案一:由集成电路定时器555与RC组成的多谐振荡器作为时间标准信号源。

555与RC组成的多谐振荡器图

方案二:振荡器是数字钟的核心。振荡器的稳定度及频率的精确度决定了数字钟计时的准确程度,通常选用石英晶体构成振荡器电路。石英晶体振荡器的作用是产生时间标准信号。因此,一般采用石英晶体振荡器经过分频得到这一时间脉冲信号。

石英晶体振荡器图

方案三:由集成逻辑门与RC组成的时钟源振荡器。

门电路组成的多谐振荡器图

集成电路555与RC组成的多谐振荡器电路:如果精度要求不高,则可以采用由集成电路定时器555与RC组成的多谐振荡器。如上图所示。设振荡频率f=1KHz,R为可调电阻,微调R1可以调出1KHz输出。

石英晶体振荡电路:采用的32768晶体振荡电路,其频率为32768Hz,然后再经过15分频电路可得到标准的1Hz的脉冲输出R的阻值,对于TTL门电路通常在07~2KΩ之间;对于CMOS门则常在10~100MΩ之间。

由门电路组成的多谐振荡器的振荡周期不仅与时间常数RC有关,而且还取决于门电路的阈值电压VTH,由于VTH容易受到温度、电源电压及干扰的影响,因此频率稳定性较差,只能用于对频率稳定性要求不高的场合。

综上所述,因为本电路对精度没有较高的要求,因此,我们选用由集成电路555与RC组成的多谐振荡器。

2)校时器的方案有如下两种:

方案一:通常,校正时间的方法是:首先截断正常的计数通路,然后再进行人工出触发计数或将频率较高的方波信号加到需要校正的计数单元的输入端,校正好后,再转入正常计时状态即可。根据要求,数字钟应具有分校正和时校正功能,因此,应截断分个位和时个位的直接计数通路,并采用正常计时信号与校正信号可以随时切换的电路接入其中。图1所示为所设计的校时电路。

图 1方案一校正电路图

方案二:校准电路由基本RS触发器和“与”门组成,基本RS触发器的功能是产生单脉冲,主要作用是起防抖动作用。未拨动开关K时,“与非”门G2的一个输入端接地,基本RS触发器处于“1”状态,这是数字钟正常工作,“分”进位脉冲能进入“分”计数器。拨动开关K时,“与非”门G1的一个输入端接地,于是基本RS触发器转为“0”状态。秒状态可以直接进入“分”计数器,而“分”进位脉冲被阻止进入,因而能较快地校准分计数器的计数值。校准后,将校正开关恢复原位,数字钟继续进行正常计时工作。

图 2 方案二校正电路

通过比较可知,方案一和方案二相比,防抖动措施更好,更完备,但电路也更为复杂,成本也更高,通过比较选择方案一,既能实现防抖动功能,做出事物也更经济一些。

四.总体方案:

本电路是以555定时器组成多谐振荡器作为频率发生器,多谐振荡器产生1000HZ的振荡波,经过分频器分频,分解成1HZ的脉冲波,随后经过秒计数器,秒计时器是60进制计数器,当计数器计数到60时产生进位脉冲,到分计数器。分计数器也是60进制计数器,当分计数器计数到60时,再次产生更高一级的进位脉冲,脉冲送到时计数器,实现了分向时的进位。当需要进行校时时,打开对应的开关,进行对应位置上的校时,此时计数进位脉冲无效。

而计数器的工作是通过外接时钟脉冲CP的作用下,秒的个位加法计数器开始记数,通过译码器和数码显示管显示数字即计数器。当经过10个脉冲信号后,秒个位计数器完成一次循环,秒十位计数器的CP与秒个位计数器的CP同步,秒个位计数器的Qcc使得秒十位的P和T端同时为1,从而秒十位开始计数,秒十位计数器工作1次,通过译码器和数码显示管,秒十位数字加1。当经过60个脉冲信号,秒部分完成一个周期,分钟个位计数器的CP通过秒十位计数器的Q2Q1与非得到脉冲,分钟个位计数器工作一次,通过译码器和数码显示管,分钟的个位数字加1。分部分的工作方式与秒部分完全相同。当经过3600个脉冲信号,分钟部分完成一个周期,小时个位计数器的CP通过分十位计数器的Q2Q1与非得到脉冲,小时个位计数器工作一次,通过译码器和数码显示管,小时的个位数字加1。当小时个位部分完成一个周期,小时十位计数器的CP与小时个位计数器的CP同步, 小时个位计数器的Qcc使得小时十位的P和T端同时为1,从而小时十位开始计数,小时十位计数器工作1次,通过译码器和数码显示管,小时的十位数字加1。当小时十位部分计数到2同时小时的个位部分计数到4,小时个位计数器的清零端和十位计数器的清零端通过小时个位计数器的Q2和小时十位计数器的Q1与非得到信号,小时部分清零,从而完成了1次24小时计时。

五.具体实现:

(1) 数字时钟基本原理的逻辑框图如下图3所示:

由图3我们可以看出,振荡器产生的信号经过分频器作为产生秒脉冲,秒脉冲送入计数器,计数结果经过“时”、“分”、“秒”,译码器,显示器显示时间。其中振荡器和分频器组成标准秒脉冲信号发生器,由不同进制的计数器,译码器和显示电路组成计时系统。秒信号送入计数器进行计数,把累计的结果以“时”,“分”、“秒”的数字显示出来。“时”显示由二十四进制计数器,译码器,显示器构成;“分”、“秒”显示分别由六十进制的计数器,译码器,显示器构成;校时电路实现对时,分的校准。

(2)数字钟的原理图如附一图所示,其功能原理均与系统方框图的一致。

六.各部分定性说明以及定量计算:

1振荡器

秒发生电路---振荡器是计时器的核心,振荡器的稳定度和频率的精确度决定了计时器的准确度。一般来说,振荡器的频率越高,计时精度就越高,但耗电量将越大。所以,在设计电路时要根据需要而设计出最佳电路。

在此设计中,我采用的是精度不高的,由集成电路555与RC组成的多谐振荡器。其具体电路如下图4所示:

图4 振荡器电路图

555定时器是一个模拟与数字混合型的集成电路。555定时器是一种应用极为广泛的中规模集成电路。该电路使用灵活、方便,只需外接少量的阻容元件就可以构成单稳、多谐和施密特触发器。因而广泛用于信号的产生、变换、控制与检测。

目前生产的定时器有双极型和CMOS两种类型,其型号分别有NE555(或5G555)和C7555等多种。它们的结构及工作原理基本相同。通常,双极型定时器具有较大的驱动能力,而CMOS定时器具有低功耗、输入阻抗高等优点。555定时器工作的电源电压很宽,并可承受较大的负载电流。双极型定时器电源电压范围为5~16V,最大负载电流可达200mA;CMOS定时器电源电压范围为3~18V,最大负载电流在4mA以下。

555的引脚图如下图5所示:

图5

555的内部电路和功能如下图6所示:

图6

上面图6 是555定时器内部组成框图。它主要由两个高精度电压比较器A1、A2,一个RS触发器,一个放电三极管和三个5KΩ电阻的分压器而构成。

它的各个引脚功能如下:

1脚:外接电源负端VSS或接地,一般情况下接地。

8脚:外接电源VCC,双极型时基电路VCC的范围是45 ~ 16V,CMOS型时基电路VCC的范围为3 ~ 18V。一般用5V。

3脚:输出端Vo

2脚: 低触发端

6脚:TH高触发端

4脚: 是直接清零端。当 端接低电平,则时基电路不工作,此时不论 、TH处于何电平,时基电路输出为“0”,该端不用时应接高电平。

5脚:VC为控制电压端。若此端外接电压,则可改变内部两个比较器的基准电压,当该端不用时,应将该端串入一只001μF电容接地,以防引入干扰。

7脚:放电端。该端与放电管集电极相连,用做定时器时电容的放电。

在1脚接地,5脚未外接电压,两个比较器A1、A2基准电压分别为

的情况下,其功能如下表:

555定时器的功能表

清零端

高触发端TH 低触发端

Qn+1 放电管T 功能

0

0 导通 直接清零

1

0 导通 置0

1

1 截止 置1

1

Qn 不变 保持

接通电源后,电容C1被充电,vC上升,当vC上升到大于2/3VCC时,触发器被复位,放电管T导通,此时v0为低电平,电容C1通过R2和T放电,使vC下降。当vC下降到小于1/3VCC时,触发器被置位,v0翻转为高电平。电容器C1放电结束,所需的时间为 :

当C1放电结束时,T截止,VCC将通过R1、R2向电容器C1充电,vC由1/3VCC上升到2/3VCC所需的时为:

当vC上升到2/3VCC时,触发器又被复位发生翻转,如此周而复始,在输出端就得到一个周期性的方波,其频率为 :

本设计中,由电路图可知R1、R2和C的值,然后再根据f的公式可以算出:其输出的频率为f=1KHz

2分频器

分频器的功能主要有两个:一个是产生标准秒脉冲信号;二是提供功能扩展电路所需要的信号,如仿电台报时用的1000Hz的高音频信号和500Hz的低音频信号等。

本设计中,由于振荡器产生的信号频率太高,要得到标准的秒信号,就需要对所得的信号进行分频。这里所采用的分频电路是由3个总规模计数器74LS90来构成的3级1/10分频。

其电路图如下图7所示:

图7 分频器电路图

74LS90的引脚图及其功能图如下图所示:

74LS90引脚图

74LS90 功能表

3计数器

本设计所采用的是十进制计数器74SL160,根据时分秒各个部分的的不同功能,设计成不同进制的计数器。秒的个位,需要10进制计数器,十位需6进制计数器(计数到59时清零并进位),秒部分设计与分钟的设计完全相同;时部分的设计为当时钟计数到24时,使计数器的小时部分清零,从而实现整体循环计时的功能。

74LS160功能表和真值表如下表1和表2所示:

表1

输入 输出

(CR) ̅ (LD) ̅ CTT CTP CP D0 D1 D2 D3 Q0 Q1 Q2 Q3

0 × × × × × × × × 0 0 0 0

1 0 × × ↑ D0 D1 D2 D3 D0 D1 D2 D3

1 1 1 1 ↑ × × × × 计数

1 1 0 × × × × × × 触发器保持,CO=0

1 1 × 0 × × × × × 保持

表2

74LS160的真值表

CLK Q

Q

Q

Q

0 0 0 0 0

1 0 0 0 1

2 0 0 1 0

3 0 0 1 1

4 0 1 0 0

5 0 1 0 1

6 0 1 1 0

7 0 1 1 1

8 1 0 0 0

9 1 0 0 1

10 0 0 0 0

74LS160的引脚介绍如下表3所示:

表3

74LS160逻辑符号 各引脚顿的名称

D D D D

置数端

Q Q Q Q

输出端

EP ET 工作状态控制端

LD 预置数控制端

RD 异步置零(复位)端

CO 进位输出端

CLK 信号输入端

计数部分:利用74LS160芯片和74LS00芯片组成的计数器,它们采用异步连接,利用外接标准1Hz脉冲信号进行计数。

显示部分: 将六片74LS160的Q0Q1Q2Q3脚分别接到实验箱上的数码显示管上,根据脉冲的个数显示时间。

秒信号经过计数器之后分别得到显示电路,以便实现用数字显示时、分、秒的要求,计时电路共分三部分:计秒、计分和计时。其中,计秒和计分都是60进制,而计时为24进制,可以采用十进制计数器74LS160实现24进制、60进制计数器。

(1)六十进制计数

由分频器来的秒脉冲信号,首先送到“秒”计数器进行累加计数,秒计数器应完成一分钟之内秒数目的累加,并达到60秒时产生一个进位信号,所以,选用2片74LS160和一片74LS00组成六十进制计数器,采用反馈归零的方法来实现六十进制计数。其中,“秒”十位是六进制,“秒”个位是十进制。

秒部分具体设计如图8所示:

图8

秒的个位部分为逢十进一,十位部分为逢六进一,从而共同完成60进制计数器,当计数到59时清零并重新开始计数。如图所示个位1脚接高电平,7脚、9脚及10脚接1,当7脚和10脚同时为1时计数器处于计数工作状态。个位11脚和秒的十位的2脚相接,十位的9脚、10脚、7脚分别和个位的1脚相接。个位计数器由Q3Q2Q1Q0(0000)2增加到(1001)2时产生进位,从而实现10进制计数和进位功能,秒的十位在计数至0110时由与非门反馈清零实现6进制。

分钟部分设计与秒完全相同。

(2)二十四进制计数器:

选用2片74LS160和一片74LS00组成24进制计数器,采用反馈归零的方法来实现24进制计数。当十位为0010且个位为0100时使两芯片异步清零。

小时部分具体设计如图9所示:

图9

4译码器、显示器

译码是指把给定的代码进行翻译的过程。计数器采用的码制不同,译码电路也不同。74LS48驱动器是与8421BCD编码计数器配合用的七段译码驱动器。74LS48配有灯测试LT、动态灭灯输入RBI,灭灯输入/动态灭灯输出BI/RBO,当LT=0时,74LS48出去全1。

本系统用七段发光二极管来显示译码器输出的数字,显示器有两种:共阳极显示器或共阴极显示器。74LS48译码器对应的显示器是共阴极显示器。

本实验采用实验箱中的74LS48译码器和共阴极显示器组成的显示系统。

5校时电路

数字种启动后,每当数字钟显示与实际时间不符进,需要根据标准时间进行校时。校“秒”时,采用等待校时。校“分”、“时”的原理比较简单,采用加速校时。

对校时电路的要求是 :

1)在小时校正时不影响分和秒的正常计数 。

2)在分校正时不影响秒和小时的正常计数 。

如图10所示,当数字钟走时出现误差时,需要校正时间。校时电路实现对“时”“分”“秒”的校准。在电路中设有正常计时和校对位置。本实验实现“时”“分”的校对。需要注意的是,校时电路是由与非门构成的组合逻辑电路,开关S1或S2为“0”或“1”时,可能会产生抖动,为防止这一情况的发生我们接入一个由RS触发器组成的防抖动电路来控制。

校时电路图 图10

校时开关的功能表如下:

校时开关的功能表

S1 S2 功能

1 1 计数

0 1 校分

1 0 校时

6整点报时电路

整点报时,只报时不报分。从59分50秒起,每隔2s发出一次信号,连续五次,最后一次结束时即达到正点。其原理图如下所示:

图11

电路图如下图12所示:

图12

综合以上多个电路,将其连接起来,就组成了一个具有时、分、秒计时功能,能够手动校时、校分,并且整点报时的数字电子钟。

七.实验仿真:

在电子电路计算机仿真软件Multisim中进行调试和仿真数字电子钟,得到的仿真电路图如附二图所示。

由仿真电路实验知道了当高频信号经过分频器后得到标准的秒脉冲信号,进入60进制的“秒”计时,“秒”的分位进入60进制的“分”计时,最后,由分的“时”进位进入24进制的“时”计时。再加上由门电路和开关构成的校时电路对电路的“时”,“分”进行校时,从而得到正确的时间的。

八.元器件清单

(1)74LS160( 6片) (2)74LS00(15片)

(3)数码显示器(6片) (4)74LS90(3片)

(5)74LS30(1片) (6)74LS04(1片)

(7)74LS02(1片) (8)555计时器(1片)

(9)可变电容(1个) (10)电容(2片)

(11)蜂鸣器(1个) (12)电阻(2个)

(13)数字电路实验箱 (14)+5V电源若干

(15)导线,开关若干。

九.设计心得体会

在此次的数字钟设计过程中,更进一步地熟悉了芯片的结构及掌握了各芯片的工作原理和其具体的使用方法。使我对已学过的电路、数电、模电等电子技术的知识有了更深一步的了解,锻炼和培养了自己利用已学知识来分析和解决实际问题的能力。对自己以后的学习和工作有很大的帮助。

刚开始做这个设计的时候感觉自己什么都不知道怎么下手,脑子里比较浮躁和零乱。但通过一段时间的努力,通过重温数电,模电等电子技术的书籍,还有通过查看相关的设计技术以及一些参考文献,再加之在老师的指导和周围同学的帮助下,使我对自己的本设计有了熟练的掌握。

在整个的设计过程中我充满了渴望和用心。记得在精工实习的时候,也是用满腔的热情来完成各项实习任务,并在每项实习项目中都达到了优秀的成绩。 所以,我相信自己的实际动手能力,并一向的加强自己在这方面的努力。在这次的电子技术设计中亦是如此,用自己的双手和满腔的热情来完成各个环节,不断的在图书管查看相关资料和期刊文献,特别在网络上也收收获了很多新鲜的东西。这次设计更让我熟悉了一些常用集成逻辑电路和其相应芯片的使用。

虽然,在本设计中所用的方案不是最好的,但我想其中的原理是最基本的;虽然其中可能出现误差,不过在杨老师的答疑课上,这些问题还是基本解决了。

最后,我要衷心的感谢杨老师给了我一次实践的机会和平时在学习上的莫大帮助,让我更加深刻地了解和认识到了自己的优点和不足,通过这个课程设计我发现了我好多知识都不熟悉甚至有的东西我根本就不知道,这让我感到了要学习的东西还有很多很多。因此使我更坚定了在以后的学习中要扎实好基础,阔广知识面。碰到的问题越让人绝望,解决问题之后的喜悦程度就越高。作为工科类的学生,以后工作了难免要碰到许许多多的问题,不要绝望,坚持,直到看到胜利的曙光。

十.参考文献

李中发主编 电子技术 北京:中国水利水电出版社

毛期俭主编 数字电路与逻辑设计实验及应用 北京: 人民邮电出版社

吕思忠,施齐云主编 数字电路实验与课程设计 哈尔滨:哈尔滨工程大学出版社

阎石主编.数字电子技术基础(第四版) 北京:高等教育出版社

黄智伟主编 电子电路计算机仿真设计与分析 北京:电子工业出版社

程勇主编 Multisim10电路仿真实例讲解 北京: 人名出版社

彭介华主编 电子技术课程设计指导 北京:高等教育出版社

卢结成、高世忻等编 电子电路实验及应用课题设计 合肥:中国科学技术大学出版社

梁宗善主编 电子技术基础课程设计 武汉:华中理工大学出版社

欧阳星明主编 数字系统逻辑设计 北京:电子工业出版社

李中发主编 电子技术基础课程设计 武汉:华中理工大学出版社

 
友情链接
鄂ICP备19019357号-22