当前位置:首页 » 课程大全 » 篮球计分器数电课程设计

篮球计分器数电课程设计

发布时间: 2021-02-07 02:44:03

❶ 数电课程设计 篮球计分器

不如去电子或者自动化相关的知识领域问一下,篮球类基本没人能回答哎

❷ 数电课程设计 篮球计分器 proteus电路图分析

数电的
要求是什么
任务是什么。

❸ 一、设计题目:篮球电子计分器

#include<reg51.h>
#include<INTRINS.h>
#defineu16unsignedint
#defineu8unsignedchar

sbitk1=P1^0;//加1
sbitk2=P1^1;//加2
sbitk3=P1^2;//加3
sbitk4=P1^3;//减1
sbitk5=P1^4;//连按2下开始或停止计时,按下该键再按加减分键给另一边加分

sbitbz=P1^6;//按按键时响,不按不响
sbitled=P1^5;//创新能力不够没想到在哪加


u8key=0xff;//消抖后的有效按键值
u8key_down=0x00;//按键下降沿扫描结果,1有效
u8key_up=0x00; //上升沿扫描结果,1有效
u8key_sc=0xff;//上次扫描的按键值

//按键扫描程序
voidscanKey(){
staticu8temp0;
staticu8ms;
u8temp=0xff;
if(k1==0)temp&=0xfe;
if(k2==0)temp&=0xfd;
if(k3==0)temp&=0xfb;
if(k4==0)temp&=0xf7;
if(k5==0)temp&=0xef;
if(temp==temp0){//按键消抖
if(++ms>=5){//连续5次扫描的值一样,则认为是稳定状态
key=temp;
ms=0;
}
}else{
temp0=temp;
ms=0;
}
key_down=key_sc&(~key);//下降沿扫描
key_up=(~key_sc)&key;//下降沿扫描
key_sc=key;
}

u8readPIN(u8port,u8pin){
codeu8tab[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,};
return((port&tab[pin])==0?0:1);
}

sbitdx=P3^2;
u8ds[8];//数码管显示缓存
codeu8w[]={~0x01,~0x02,~0x04,~0x08,~0x10,~0x20,~0x40,~0x80,}; //位码
codeu8d[]={~0xc0,~0xf9,~0xa4,~0xb0,~0x99,~0x92,~0x82,~0xf8,~0x80,~0x90,0x00};//断码
codeu8d_huo[]={0x00,0x00,0x80,0x00,0x80,0x00,0x00,0x00,};
voiddispaly(){//显示函数
staticu8a;
if(++a>7)a=0;
P2=0xff;
P0=d[ds[a]]|d_huo[a];
dx=1;dx=0;
P2=w[a];
}voidinit() //初始化函数
{TMOD=0x01;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
EA=1;
ET0=1;

}//加分和减分
voidjjf(u16*val){
if(readPIN(key_down,0)==1){//加1
*val+=1;
}
if(readPIN(key_down,1)==1){//加2
*val+=2;
}
if(readPIN(key_down,2)==1){//加3
*val+=3;
}
if(readPIN(key_down,3)==1){//减1
if(*val>0)*val-=1;
}
}

//连按程序
u8la_count=0;
u16la_js=0;
voidlan(){
if(la_js>=1000||((key&0xef)!=0xef))la_count=0;
if(readPIN(key_down,4)==1){
la_count++;
la_js=0;
}
}

u16count=0;
u16count1=0;
u16s24=24000;
u8s24off_flag=0;
voidmain()//主函数
{
init();
TR0=1;
while(1){
ds[0]=(count>99?count/100%10:10);//将当前分值送到数码管缓存
ds[1]=(count>9?count/10%10:10);
ds[2]=count%10;
ds[3]=(s24>9999?s24/10000%10:10);
ds[4]=s24/1000%10;
ds[5]=(count1>99?count1/100%10:10);//将当前分值送到数码管缓存
ds[6]=(count1>9?count1/10%10:10);
ds[7]=count1%10;



scanKey();//扫描按键
bz=(key!=0xff?0:1);//按下按键,蜂鸣器响
if(readPIN(key,4)==0){//判断给哪一方加减分
jjf(&count);
}else{
jjf(&count1);
}

lan();
if(la_count==2){
if(s24off_flag==0){
s24=24000;
s24off_flag=1;
}else{
s24off_flag=0;
}
la_count=3;
}

}

}voidtimer0()interrupt1//定时器
{
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
dispaly();
if(s24off_flag==1){
if(s24>0)s24--;
}

if(la_js<60000)la_js++;
}


单片机最小系统自己画吧,功能设计可以再探讨,你在问一下出这题的人,为什么不用两个573,用一个跟没用有什么区别


❹ 数电课程设计:篮球计分器。要求:3位计分器,从000到999,按一下开关加或者减1。要课程设计报告和multisi

我不太知道,你可以到网络查

❺ 篮球比赛计分器用数字电路设计

数字电路不好整来
单片自机很容易就可以实现。
8个按键,一个按键做清零,6个键分两组,分别表示A队、B队,每组3个按键,三个按键分别为:1分、2分、3分,按相应的键,加相应的分;空余的那个按键可以不用,也可以实现其他功能。
显示用7段LED数码管显示,每组显示用3位数码管,既显示0——999。
空余的那个键用来做撤销键。也就是按一下,撤销前一次的操作。这个主要是在加分错误的情况下用来撤销前一次操作。

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919