• 方案介紹
    • 1.? 簡(jiǎn)介
    • 2.? 主要功能
    • 3.? 源程序(Keil5)
    • 4.? 仿真proteus8.6
    • 5.? 設(shè)計(jì)報(bào)告
    • 6.? 資料清單
    • 7.? 資料獲取鏈接
  • 附件下載
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

基于51單片機(jī)的1602籃球積分計(jì)時(shí)器設(shè)計(jì)(一)

04/08 09:09
571
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

單片機(jī)仿真設(shè)計(jì)合集資料獲取.pdf

共1個(gè)文件

資料清單:C程序+仿真+設(shè)計(jì)報(bào)告+使用說明+元件清單+操作視頻

仿真版本:Proteus8.6及以上版本

程序編譯:Keil5 C51

編程語言:C語言

設(shè)計(jì)編號(hào):【D04】

1.? 簡(jiǎn)介

? 本文介紹一種用AT89C51作為核心部件進(jìn)行邏輯控制及信號(hào)產(chǎn)生的單片機(jī)技術(shù)和C語言編程設(shè)計(jì)的籃球比賽計(jì)時(shí)器。此籃球計(jì)時(shí)計(jì)分器在硬件方面主要采用AT89C51單片機(jī)作為主控核心,由獨(dú)立按鍵、蜂鳴器、LCD1602顯示屏顯示。具有靈活方便、適用范圍廣的特點(diǎn),基本能夠滿足實(shí)踐需求。

2.? 主要功能

a.支持按鍵設(shè)置開始、暫停、24S倒計(jì)時(shí)復(fù)位、甲隊(duì)加分、乙隊(duì)加分。

b.支持LCD1602顯示甲隊(duì)、乙隊(duì)分?jǐn)?shù)、比賽時(shí)間、24S倒計(jì)時(shí)。

c.支持比賽結(jié)束后蜂鳴器告警。

3.? 源程序(Keil5)

本設(shè)計(jì)采用keil5 C51軟件(內(nèi)附安裝包)實(shí)現(xiàn)程序設(shè)計(jì)。如需用keil4打開程序,可自行通過.c和.h文件新建工程即可。

#include<reg51.h>//51單片機(jī)頭文件
typedef unsigned char uchar;
typedef unsigned int  uint;
sbit K1=P3^2;//比賽倒計(jì)時(shí)開始/暫停
sbit K2=P3^3;//24s倒計(jì)時(shí)重新開始
sbit K3=P1^3;//甲隊(duì)+1按鍵
sbit K4=P1^4;//甲隊(duì)+2按鍵
sbit K8=P1^5;//乙隊(duì)+3按鍵
sbit K5=P1^0;//乙隊(duì)+1按鍵
sbit K6=P1^1;//乙隊(duì)+2按鍵
sbit K7=P1^2;//甲隊(duì)+3按鍵
sbit beep=P2^0;//蜂鳴器接口  
sbit RS=P2^7;
sbit E=P2^5;
char miao,fen,num,time,aa;
uchar bb,cc;
uchar code table1[]={"H.T 000:000 R.T "};
uchar code table2[]={"12:00  SEC-1  24"};
//延時(shí)子函數(shù)
void delay(uint z)  
{
	uint x;
	uchar y;
	for(x=z;x>0;x--)
  		for(y=110;y>0;y--);
}
//LCD1602液晶寫指令子函數(shù)
void write_com(uchar com)
{
	RS=0;
	P0=com;
	delay(5);
	E=1;
	delay(5);
	E=0;
}
//LCD1602液晶寫數(shù)據(jù)子函數(shù)
void write_date(uchar date)
{
	RS=1;
	P0=date;
	delay(5);
	E=1;
	delay(5);
	E=0;
}
//LCD1602液晶初始化子函數(shù)
void LCD1602_init()
{
	uchar i;
	bb=0;    //H.T分?jǐn)?shù)初始化
	cc=0;    //R.T分?jǐn)?shù)初始化
	time=0;
	TMOD=0x10;    //定時(shí)器1初始化
	TL1=0x00;
	TH1=0x4c;
	EA=1;     //開總中斷
	ET1=1;     //開定時(shí)器1
	TR1=0;     //定時(shí)器1不工作
	EX0=1;     //開中斷0
	EX1=1;     //開中斷1
	IT0=1;     //中斷0為邊沿觸發(fā)
	IT1=1;     //中斷1為邊沿觸發(fā)
	E=0; 
	beep=0;
	miao=0;
	fen=12;
	num=1;
	aa=24;
	write_com(0x38);  //LCD設(shè)置初始化
	write_com(0x0c);
	write_com(0x06);
	write_com(0x01);
	write_com(0x80);  //LCD顯示初始化
	for(i=0;i<16;i++)
	{
	  	write_date(table1[i]);
	}
	write_com(0x80+0x40);
	for(i=0;i<16;i++)
	{
	  	write_date(table2[i]);
	}
}
//分?jǐn)?shù)更新子函數(shù)
void point_lcd(uchar add,uchar dat)
{
	write_com(0x80+add);
	write_date(0x30+dat/100);
	write_date(0x30+(dat%100)/10);
	write_date(0x30+dat%10);
	write_com(0x80+add);
}
//按鍵掃描子函數(shù)
void keyscan()
{
	if(K3==0)     //K3按下H.T分?jǐn)?shù)加一
	{
  		while(K3==0);
		bb++;
  		point_lcd(0x04,bb);  //分?jǐn)?shù)顯示更新
  		if(K3==0)    //松手檢測(cè)
  		{
   			while(K3==0);
   			delay(20);
  		}
	}
	else if(K4==0)    //S4按下H.T分?jǐn)?shù)加二
	{
  		while(K4==0);
		bb=bb+2;
  		point_lcd(0x04,bb);
  		if(K4==0)
  		{
   			while(K4==0);
   			delay(20);
  		}
	}
	else if(K7==0)    //S4按下H.T分?jǐn)?shù)加二
	{
  		while(K7==0);
		bb=bb+3;
  		point_lcd(0x04,bb);
  		if(K7==0)
  		{
   			while(K7==0);
   			delay(20);
  		}
	}
	else if(K5==0)    //S5按下R.T分?jǐn)?shù)加一
	{
  		while(K5==0);
		cc++;
  		point_lcd(0x08,cc);
  		if(K5==0)
  		{
   			while(K5==0);
   			delay(20);
  		}
	}
	else if(K6==0)    //S6按下R.T分?jǐn)?shù)加2
	{
  		while(K6==0);
		cc=cc+2;
  		point_lcd(0x08,cc);
  		if(K6==0)
  		{
   			while(K6==0);
   			delay(20);
  		}
	}
	else if(K8==0)    //S6按下R.T分?jǐn)?shù)加2
	{
  		while(K8==0);
		cc=cc+3;
  		point_lcd(0x08,cc);
  		if(K8==0)
  		{
   			while(K8==0);
   			delay(20);
  		}
	}
}

4.? 仿真proteus8.6

? 本設(shè)計(jì)采用proteus8.6軟件(內(nèi)附安裝包)實(shí)現(xiàn)仿真設(shè)計(jì),如下圖所示。proteus軟件一般存在高低版本兼容問題,該仿真是通過proteus8.6導(dǎo)出的,所以請(qǐng)盡量使用proteus8.6打開文件,低于proteus8.6的版本不能夠正常使用,高于proteus8.6的版本除了proteus8.8/8.9理論上可以正常使用。

開始:

加分:

5.? 設(shè)計(jì)報(bào)告

設(shè)計(jì)報(bào)告主要包括硬件電路、軟件設(shè)計(jì)、仿真調(diào)試等等,僅供參考。

6.? 資料清單

設(shè)計(jì)資料主要包括C程序+仿真+設(shè)計(jì)報(bào)告+使用說明+元件清單+操作視頻等。

7.? 資料獲取鏈接

百度網(wǎng)盤下載鏈接:【D04】百度網(wǎng)盤下載鏈接

更多單片機(jī)仿真設(shè)計(jì)合集:單片機(jī)仿真設(shè)計(jì)合集

  • 單片機(jī)仿真設(shè)計(jì)合集資料獲取.pdf
    下載

相關(guān)推薦