加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

51單片機(jī)的簡(jiǎn)易籃球計(jì)分器倒計(jì)時(shí)仿真設(shè)計(jì)( proteus仿真+程序+原理圖+報(bào)告+講解視頻)

09/18 13:10
799
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
    • 1.主要功能:
    • 2.仿真
    • 3. 程序代碼
    • 4. 原理圖
    • 5. 設(shè)計(jì)報(bào)告
    • 6. 設(shè)計(jì)資料內(nèi)容清單&&下載鏈接
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

仿真圖proteus7.8及以上

程序編譯器:keil 4/keil 5

編程語(yǔ)言:C語(yǔ)言

設(shè)計(jì)編號(hào):S0048

1.主要功能:

本設(shè)計(jì)旨在設(shè)計(jì)一個(gè)基于51單片機(jī)的籃球比賽計(jì)分器仿真設(shè)計(jì),下面是設(shè)計(jì)的功能要求

1.可以在比賽期間隨時(shí)更新A和B隊(duì)的比分。

2.中場(chǎng)休息期間交換場(chǎng)地,交換A隊(duì)和B隊(duì)的位置。

3.當(dāng)添加比賽分?jǐn)?shù)時(shí),如果有錯(cuò)誤,可以手動(dòng)更改賽場(chǎng)分?jǐn)?shù)。

4.具備籃球24秒進(jìn)攻時(shí)間倒計(jì)時(shí),精確到0.01秒,進(jìn)攻時(shí)間結(jié)束時(shí)可以觸發(fā)警報(bào)。

需注意仿真中51單片機(jī)芯片是通用的,AT89C51,AT89C52都是51單片機(jī)的具體型號(hào),內(nèi)核是兼容的。無(wú)論stc還是at都一樣,引腳功能都是一樣的,程序也是一樣的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機(jī)芯片。

以下為本設(shè)計(jì)資料展示圖:

2.仿真

開(kāi)始仿真

打開(kāi)仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開(kāi)始仿真。開(kāi)始仿真后,數(shù)碼管顯示0,需要按下啟動(dòng)/暫停按鍵開(kāi)始計(jì)時(shí)。

當(dāng)系統(tǒng)啟動(dòng)時(shí),發(fā)光二極管數(shù)碼管按程序流程被點(diǎn)亮,顯示賽場(chǎng)比賽24秒倒計(jì)時(shí)和賽場(chǎng)比賽計(jì)分。沒(méi)啟動(dòng)之前24秒倒計(jì)時(shí)時(shí)間顯示00.00。比賽分?jǐn)?shù)00:00.按下啟動(dòng)按鍵后,24秒倒計(jì)時(shí)數(shù)碼管開(kāi)始以0.01的精度倒計(jì)時(shí)。比賽狀態(tài)指示燈開(kāi)始指示燈點(diǎn)亮,如果有A隊(duì)得分,可以通過(guò)A+按鍵按一下加一份。如果有錯(cuò)誤需要修正可以按下A-,按一下減一份。B隊(duì)得分同理操作。如果比賽開(kāi)始后有犯規(guī)或者其他需要暫停比賽的需要,可以按下啟動(dòng)/暫停按鍵來(lái)暫停比賽,需要重新開(kāi)始再按一下。24秒進(jìn)攻倒計(jì)時(shí)結(jié)束后蜂鳴器報(bào)警提醒。

img

下圖是中場(chǎng)A隊(duì)得分26分,B隊(duì)得分26分。需要交換場(chǎng)地再計(jì)分輕觸交換場(chǎng)地按鍵即可。比分會(huì)換過(guò)來(lái)。

img

交換后:

img

3. 程序代碼

使用keil4或者keil5編譯,代碼有注釋,可以結(jié)合報(bào)告理解代碼含義。

img

void main()//主函數(shù)
{
	uchar k=0;
	beep=0;
	TMOD|=0X11;//定時(shí)器設(shè)置
	TH0=0XD8;
	TL0=0XEF;
	TH1=(65536-1000)/256;
	TL1=(65536-1000)%256;
	ET1=1;	
	ET0=1;//打開(kāi)定時(shí)器0中斷允許
	EA=1;//打開(kāi)總中斷
	TR0=1;//打開(kāi)定時(shí)器
	while(1)
	{
		//點(diǎn)亮LED
		if(start==0)
		{
			led1=1;
			led2=1;
		} 
		if(start==1)
		{
			led1=0;
			led2=1;
		}
		if(start==2)
		{
			led1=1;
			led2=0;
		}
		//顯示時(shí)間
		P0=smgduan[fen/10];
		smg1=0;
		delay(50);
		smg1=1;
		P0=smgduan[fen%10]+0x80;
		smg2=0;
		delay(50);
		smg2=1;
		P0=smgduan[miao/10];
		smg3=0;
		delay(50);
		smg3=1;
		P0=smgduan[miao%10];
		smg4=0;
		delay(50);
		smg4=1;
		//顯示分?jǐn)?shù)
		if(flag==0)
			P0=smgduan[fena/10];
		else
			P0=smgduan[fenb/10];
		smg5=0;
		delay(50);
		smg5=1;
			if(flag==0)
			P0=smgduan[fena%10];
		else
			P0=smgduan[fenb%10];
		smg6=0;
		delay(50);
		smg6=1;

		if(flag==1)
			P0=smgduan[fena/10];
		else
			P0=smgduan[fenb/10];
		smg7=0;
		delay(50);
		smg7=1;
			if(flag==1)
			P0=smgduan[fena%10];
		else
			P0=smgduan[fenb%10];
		smg8=0;
		delay(50);
		smg8=1;
		//按鍵檢測(cè)
		if(start>=0)//調(diào)分?jǐn)?shù)
		{
			if(!k1 &&(k!=1))
			{
				k=1;
				if(fena<99)
					fena++;
			}
			if(!k2 &&(k!=2))
			{
				k=2;
				if(fena>0)
					fena--;
			}
			if(!k3 &&(k!=3))
			{
				k=3;
				if(fenb<99)
					fenb++;
			}
			if(!k4 &&(k!=4))
			{
				k=4;
				if(fenb>0)
					fenb--;
			}
		}
		//啟動(dòng)暫停
		if(!k7 &&(k!=7))
		{
			k=7;
			if(start==0)
			{
				start=1;
				fen=24;
				miao=0;
			}
			else
			{
				if(start==1)
					start=2;
				else
					start=1;
			}
		}
		//交換場(chǎng)地
		if(start==0)
		{
			if(!k6 &&(k!=6))
			{
				k=6;
				flag=!flag;
			}
		}
		//清零
		if(start==0)
		{
			if(!k5 &&(k!=5))
			{
				k=5;
				fena=0;
				miao=0;
				fen=0;
				fenb=0;
			}
		}
	//24s
		if(start>0)
		{
			if(!k8 &&(k!=8))
			{
				k=8;
				start=1;
				fen=24;
				miao=0;	
			}
		}
		if(k1 && k2 && k3 && k4 && k5 && k6 && k7&& k8)
			k=0;
	}
}

4. 原理圖

原理圖使用AD繪制,可供實(shí)物參考,仿真不同于實(shí)物,經(jīng)驗(yàn)不足不要輕易搞實(shí)物。

img

Proteus仿真和實(shí)物作品的區(qū)別:

1.運(yùn)行環(huán)境:Proteus仿真是在計(jì)算機(jī)上運(yùn)行的,而實(shí)物則是在硬件電路板上運(yùn)行。

2.調(diào)試方式:在Proteus仿真中,可以方便地進(jìn)行單步調(diào)試和觀察變量值的變化,而在實(shí)物中則需要通過(guò)調(diào)試器或者串口輸出等方式進(jìn)行調(diào)試。

電路連接方式:在Proteus仿真中,可以通過(guò)軟件設(shè)置進(jìn)行電路連接的修改,而在實(shí)物中則需要通過(guò)硬件電路板和連接線進(jìn)行修改。

3.運(yùn)行速度:Proteus仿真通常比實(shí)物運(yùn)行速度快,因?yàn)榉抡媸腔谟?jì)算機(jī)運(yùn)行的,而實(shí)物則需要考慮電路板上的物理限制和器件的響應(yīng)時(shí)間等因素。

4.功能實(shí)現(xiàn):在Proteus仿真中,可以通過(guò)軟件設(shè)置實(shí)現(xiàn)不同的功能,而在實(shí)物中則需要根據(jù)電路設(shè)計(jì)和器件的性能進(jìn)行實(shí)現(xiàn)。

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

8554+字設(shè)計(jì)報(bào)告

img

6. 設(shè)計(jì)資料內(nèi)容清單&&下載鏈接

資料設(shè)計(jì)資料包括仿真,程序代碼、講解視頻、功能要求、設(shè)計(jì)報(bào)告、軟硬件設(shè)計(jì)框圖等。

0、常見(jiàn)使用問(wèn)題及解決方法–必讀?。。。?/p>

1、仿真圖

2、程序源碼

3、開(kāi)題報(bào)告

4、原理圖

5、功能要求

6、設(shè)計(jì)報(bào)告

7、軟硬件流程框圖

8、講解視頻

Altium Designer 軟件資料

KEIL軟件資料

Proteus軟件資料

單片機(jī)學(xué)習(xí)資料

答辯技巧

設(shè)計(jì)報(bào)告常用描述

鼠標(biāo)雙擊打開(kāi)查找更多51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url

img

資料下載鏈接(可點(diǎn)擊):

  • 設(shè)計(jì)資料獲取聯(lián)系方式.doc

相關(guān)推薦

電子產(chǎn)業(yè)圖譜