当前位置:首页 > 电源 > 数字电源
[导读]本文通过单片机控制简易计数器的分析与研究,进行了硬件电路的设计及软件程序的设计,通过使用专业绘制电路图的软件和程序编译软件,不断进行测试和调试,基本完成系统的仿真。

1 系统描述

本系统利用AT89C51 单片机来制作一个手动计数器,在AT89C51 单片机的P3.2 管脚和P3.3 管脚各接一个轻触开关K1和K2,作为手动计数的按钮,用单片机的P0.0 - P0.7 接一个两位绿色共阴极数码管(7SEG-COM-CAT-GRN),作为00 - 99 计数的个位数和十位数显示。系统正常运行后显示00,按一次K1 键,数字加1,当计数到 99 时,再按一次 K1 键,又从00 开始计数。当计数到 99 时,按一次K2,计数为98,继续按K2,直到计数为00,由此实现正计数和倒计数的功能。本系统可用于竞技比赛中的计分,或者用于重要事件将要到来的倒计时。

2 硬件电路设计

硬件电路的设计是本系统能否实现所需功能的关键环节,在设计过程中须注意电路的整体布局、元器件的摆放、元器件的参数选择及电路的优化,具体电路图如1-1 所示。其中,X1 为12MHZ 的晶体振荡器,RX8 为排阻。

图1-1 计数器电路原理图:

 

 

3 软件设计

根据硬件电路的结构及功能要求,在分析所需算法和功能模块的基础上编写本系统的代码,要求代码尽可能的简洁易懂,并有在必要的地方写明注释。具体代码如下所示:

#include// 导入头文件

unsigned b[10]={0x3f,0×06,0x5b,0x4f,0×66,0x6d,0x7d,0×07,0x7f,0x6f};//0-9 的编码

void delay(void)// 延时子程序,延时1 秒

{

unsigned char i,j,k;for(i=20;i>0;i- )

for(j=2;j>0;j-)

for( k=250; k>0; k-);

}

void Inc_CNT ( void )// 按K1 键正计数,可从0 计到99

{

unsigned char x, y, z;

for( x=0; x<10; x++){

for( y=0; y<10; y++){

if( (P3|0xfb)==0xfb ){

for( z=0; z<22; z++){

P2=0xf2;

P0=b[x];

delay( );// 调用延时子程序

P2=0xf1;

P0=b[y];

delay( );

}

}

else{

P0 = 0x3f;

P2 = 0×00;

break;}}}}

void Dec_CNT( void )// 按k2 键倒计数,可从99 计到00[!--empirenews.page--]

{

unsigned char x, y, z;

for( x=10; x>0; x-){

for( y=10; y>0; y-){

if((P3|0xf7)==0xf7){

for(z=0; z<22;z++){

P2=0xf2;

P0=b[x-1];

delay( );

P2=0xf1;

P0=b[y-1];

delay( );}// 调用延时子程序

}

else {

P0=0x3f;

P2=0×00;

break;}}}}

void main( void )// 主函数

{

unsigned char key;

P2=0×00;

P0=0x3f;

for(;;){

P3|=0xf3;

key=P3;

if(key==0xfb)Inc_CNT();// 调用正计数函数

else if(key==0xf7 )Dec_CNT();// 调用倒计数函数

else{

P2=0×00;

P0=0x3f;}}}

4 软硬件联调

单片机系统的硬件调试和软件调试是不能分开的,许多硬件错误是在软件调试过程中被发现和纠正的。但通常是先排除明显的硬件故障以后,再和软件结合起来调试以进一步排除故障。可见硬件的调试时基础,如果硬件调试不通过,软件设计则无从谈起。硬件的调试主要是把电路各种参数调整到符合设计要求。先排除硬件电路故障,包括设计性错误和公益性故障。一般原则是先静态后动态。利用万用表或逻辑测试仪器,检查电路中的各器件以及引脚是否连接正确,是否有短路故障。运行正确的仿真电路图如下所示。

 

 

5 结语

本系统利用AT89C51 单片机来制作一个手动计数器,在AT89C51 单片机的P3.2 管脚和P3.3 管脚各接一个轻触开关K1和K2,作为手动计数的按钮, 通过使用专业绘制电路图的软件和程序编译软件,不断进行测试和调试,从而证明了本系统可用于竞技比赛中的计分,或者用于重要事件将要到来的倒计时。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭