我是靠谱客的博主 大意紫菜,最近开发中收集的这篇文章主要介绍八位竞赛抢答器基于Multisim代码模板,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

电路图

在这里插入图片描述

代码模板

#include<reg51.h>
#define uchar unsigned char
#definr uint unsigned  int
sbit KEY1 =P1^0;
sbit KEY2 =P1^1;
sbit KEY3 =P1^2;
sbit KEY4 =P1^3;
sbit KEY5 =P1^4;
sbit KEY6 =P1^5;
sbit LED1 =P3^6;
sbit LED2 =P3^7;
sbit LED3 =P3^8;
uint uimoney_value;
uchar uckey_value;
void delay_ms(unit uicount);
void key_scan();
void key_function();
void disp();
void main(void)
{
   while(1)
   {
      key_scan();
	  key_function();
	  disp();
	}
}
void delay_ms(uint uicount)
{
    uint i,j;
	for(i=0;i<uicount;i++);
	   for(j=0;j<120;j++);
}
void key_scan()
{
    if(0==KEY1)
	 {
	   delay_ms(3);
	   if(0==KEY1)
	   {
	     while(0==KEY1);
	     uckey_value=1;
	    }
      }
     else if(0==KEY2)
	 {
	     delay_ms(3);
		 if(0==KEY2);
		 {
		      while(0==KEY2);
			  uckey_value=2;
		  }
	  }
	  else if(0==KEY3)
	  {
	       delay_ms(3);
		   if(0==KEY3)
		   {
		      while(0==KEY3);
			  uckey_value=3;
			}
		}
		else if(0==KEY4)
	    {
	       delay_ms(3);
		   if(0==KEY4)
		   {
		      while(0==KEY4);
			  uckey_value=4;
			}
	   	}
	    else if(0==KEY5)
	    {
	       delay_ms(3);
		   if(0==KEY5)
		   {
		      while(0==KEY5);
			  uckey_value=5;
			}
	   	}
        else if(0==KEY6)
	    {
	       delay_ms(3);
		   if(0==KEY6)
		   {
		      while(0==KEY6);
			  uckey_value=6;
			}
	   	}
		else
		{
		   uckey_value=0;
		 }
}
void key_function()
{ 
    if(1==uckey_value)
	{
	   uimoney_value+=5;
	   if(uimoney_value>995)
	   {
	      uimoney_value=995;
		}
	 }	 
   	 else if(2==uckey_value)
	{
	   uimoney_value=10;
	   if(uimoney_value>995)
	   {
	      uimoney_value=995;
		}
	 }	
	  else if(3==uckey_value)
	{
	   uimoney_value=0;
	 }
	  else if(4==uckey_value)
	{
	   if(uimoney_value>=10)
	   {
	      uimoney_value-=10;
		}
	 }	
	  else if(5==uckey_value)
	{
	   if(uimoney_value>=15)
	   {
	      uimoney_value-=15;
		}
	 }
	 else if(6==uckey_value)
	{
	   if(uimoney_value>=20)
	   {
	      uimoney_value-=20;
		}
	 }
	 else
	 {               ;}
}
void disp()
{
    if(uimoney_value>=20)
	{
	   LED1=0;	 
	   LED2=0;	
	   LED3=0;	
	 }
	 else if(uimoney_value>=15)
	 {
	 	LED1=0;	 
	    LED2=0;	
	    LED3=1;	
	  }
	  else if(uimoney_value>=10)
	 {
	 	LED1=0;	 
	    LED2=1;	
	    LED3=1;	
	  }
	  else
	  {
	    LED1=1;	 
	    LED2=1;	
	    LED3=1;	
	   }
	   P0=uimoney_value/100;
	   P2=(uimoney_value%100/10)*16+uimoney_value%10;
}

最后

以上就是大意紫菜为你收集整理的八位竞赛抢答器基于Multisim代码模板的全部内容,希望文章能够帮你解决八位竞赛抢答器基于Multisim代码模板所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部