亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        微電腦控制簡易球賽計(jì)分牌的設(shè)計(jì)與制作

        2015-02-05 08:05:36貴州電子信息職業(yè)技術(shù)學(xué)院通信工程系吳政江
        電子世界 2015年13期
        關(guān)鍵詞:單片機(jī)比賽

        貴州電子信息職業(yè)技術(shù)學(xué)院通信工程系 吳政江

        微電腦控制簡易球賽計(jì)分牌的設(shè)計(jì)與制作

        貴州電子信息職業(yè)技術(shù)學(xué)院通信工程系 吳政江

        球類比賽中裁判需要計(jì)分時通常需要計(jì)分牌,以便及時、準(zhǔn)確、清楚地記錄并顯示比賽雙方的得分,體現(xiàn)比賽的公正性以及渲染比賽的緊張氣氛。傳統(tǒng)的計(jì)分牌采用黑板加粉筆方式,計(jì)分麻煩且不環(huán)保。用單片機(jī)來設(shè)計(jì)計(jì)分牌可謂得心應(yīng)手。本文介紹一款微電腦控制簡易球賽計(jì)分牌的設(shè)計(jì)與制作。硬件上,它是一個具有數(shù)碼管顯示、按鍵輸入、數(shù)據(jù)運(yùn)算等比較完整的單片機(jī)應(yīng)用系統(tǒng)。軟件上,采用C語言編程。旨在向廣大單片機(jī)愛好者介紹單片機(jī)應(yīng)用系統(tǒng)的基本開發(fā)過程以及C語言程序設(shè)計(jì)方法。

        單片機(jī);計(jì)分牌;設(shè)計(jì);制作

        引言

        電子信息類專業(yè)各骨干課程不但有較難理解的理論分析,也有大量的實(shí)際應(yīng)用電路,因而既要學(xué)習(xí)理論,更要動手實(shí)踐,理論性和實(shí)踐性均很強(qiáng)。然而,當(dāng)前職業(yè)學(xué)校學(xué)生普遍存在文化基礎(chǔ)不牢,接受能力不佳,學(xué)習(xí)積極性、分析問題與解決問題能力不高的現(xiàn)實(shí)情況。因此,長期以來,職業(yè)學(xué)校電子信息類專業(yè)各骨干課程理論教學(xué)方法枯燥,實(shí)驗(yàn)教學(xué)可操作性差,課程設(shè)計(jì)缺乏創(chuàng)新,結(jié)果大多數(shù)學(xué)生對這些課程理論理解不清,實(shí)驗(yàn)走過場,課程設(shè)計(jì)找槍手,考試弄虛作假。針對這一問題,我們提出了用計(jì)算機(jī)仿真技術(shù)對電子信息類專業(yè)各骨干課程進(jìn)行教學(xué)改革的思想。本文是用Proteus仿真軟件對單片機(jī)課程進(jìn)行教學(xué)改革的一個綜合應(yīng)用。用單片機(jī)設(shè)計(jì)一個簡易球賽計(jì)分牌。硬件上,它是一個具有數(shù)碼管顯示、按鍵輸入、數(shù)據(jù)運(yùn)算等比較完整的單片機(jī)應(yīng)用系統(tǒng)。軟件上,采用C語言編程。

        1 電路結(jié)構(gòu)與工作原理

        1.1 球賽計(jì)分牌功能模塊劃分

        (1)人機(jī)對話功能模塊。計(jì)分牌應(yīng)能及時輸入比賽雙方得分,故電路要求有人機(jī)對話功能。這里用4個按鍵來改變比賽雙方得分,按鍵SW1與SW2用來增加及減少比賽一方(如A方)得分?jǐn)?shù);按鍵SW3與SW4用來增加及減少比賽另一方(如B方)得分?jǐn)?shù)。

        (2)顯示模塊。采用4只共陽極數(shù)碼管顯示得分情況,最大顯示比分為99∶99,基本能滿足小型比賽要求。其中“∶”由兩只紅色發(fā)光二極管代替,開機(jī)時即亮。

        (3)單片機(jī)模塊。這里采用AT89C51單片機(jī)加復(fù)位電路與時鐘電路即可,無需外擴(kuò)存儲器與I/O口。

        (4)電源模塊。單片機(jī)所需的+5V電源可由220伏的交流市電經(jīng)降壓、整流、濾波與穩(wěn)壓得到。

        1.2 硬件電路設(shè)計(jì)

        根據(jù)以上功能模塊劃分,確定球賽計(jì)分牌硬件電路[1]如圖1所示(電源電路略去未畫,實(shí)際制作時應(yīng)補(bǔ)上)。對該電路簡要分析如圖1所示。

        (1)核心部分是由AT89C51單片機(jī)與復(fù)位電路以及時鐘電路組成的單片機(jī)最小應(yīng)用系統(tǒng)。

        (2)根據(jù)計(jì)分牌功能要求,用4個共陽極數(shù)碼管顯示比賽雙方得分,數(shù)字顯示中間分隔符“∶”利用兩只紅色發(fā)光二極管來實(shí)現(xiàn)。

        (3)Q1、Q2、Q3、Q4為4個共陽極數(shù)碼管驅(qū)動三極管,目的是增強(qiáng)單片機(jī)I/O口的電流驅(qū)動能力。

        (4)由于本項(xiàng)目涉及到的按鍵數(shù)較少,故采用獨(dú)立式鍵盤結(jié)構(gòu)。4只按鍵分別連接單片機(jī)的P1.4~P1.7口(實(shí)際制作時可任選單片機(jī)其他I/O口,但程序應(yīng)作相應(yīng)的調(diào)整)。

        2 軟件規(guī)劃與設(shè)計(jì)

        根據(jù)硬件電路,設(shè)比賽雙方為A與B,按鍵SW1與SW2設(shè)為A方得分加、減按鍵;按鍵SW3與SW4設(shè)為B方得分加、減按鍵。程序采用模塊化設(shè)計(jì),由主函數(shù)及相關(guān)子函數(shù)組成。

        2.1 主函數(shù)

        完成對四個獨(dú)立按鍵的無限循環(huán)判斷,并調(diào)動態(tài)掃描函數(shù)顯示比賽雙方得分?jǐn)?shù)。其流程圖[2]如圖2所示。

        2.2 動態(tài)掃描函數(shù)

        完成BCD碼轉(zhuǎn)換、動態(tài)數(shù)碼管顯示,同時用于按鍵延時消抖。

        圖1 球賽計(jì)分牌電路

        2.3 5ms延時函數(shù)

        完成5ms延時,供動態(tài)掃描函數(shù)調(diào)用。

        這里給出C語言參考源程序如下所示。

        #include〈reg51.h〉

        #define uchar unsigned char

        #define uint unsigned int

        sbit sw1=P1?7; //定義A方增加鍵

        sbit sw2=P1?6; //定義A方減少鍵

        sbit sw3=P1?5; //定義B方增加鍵

        sbit sw4=P1?4; //定義B方減少鍵

        uchar duanma[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x 92,0x82,0xF8,0x80,0x90}; //共陽極數(shù)碼管0到9的段碼

        uchar weima[4]={0x7f,0xbf,0xdf,0xef}; //共陽極數(shù)管位碼

        uchar xianshi[4]={0,0,0,0}; //顯示緩存器

        uint jishu=0,affs=0,bffs=0; //定義變量

        void dtsm(void); //聲明動態(tài)掃描函數(shù)

        /*延時約5毫秒函數(shù)*/

        void delay05ms(void)

        {

        uchar j,k;

        for(j=10;j〉0;j--)

        for(k=110;k〉0;k--);

        }

        如圖2所示。

        /*主函數(shù)*/

        void main(void)

        {

        while(1) //無限循環(huán)

        {

        dtsm(); //*******************按鍵判斷**** ********************************

        if(sw1==0) //A方加分鍵按下嗎

        {

        dtsm(); //調(diào)動態(tài)掃描函數(shù)兼作延時消抖

        if(sw1==0) //A方加分鍵還按下嗎

        圖2 計(jì)分牌主函數(shù)流程圖

        {

        affs++; //A方分?jǐn)?shù)加1

        if(affs==100)affs=99; //最大為99

        while(sw1==0)dtsm(); //等待A方加分鍵釋放

        }

        }

        if(sw2==0) //A方減分鍵按下嗎

        {

        dtsm(); //調(diào)動態(tài)掃描函數(shù)兼作延時消抖

        if(sw2==0) //A方減分鍵還按下嗎

        {

        affs--; //A方分?jǐn)?shù)減1

        if(affs==-1)affs=0; //最小為0

        while(sw2==0)dtsm(); //等待A方減分鍵釋放

        }}

        if(sw3==0) //判斷B方加分鍵

        {

        dtsm();

        if(sw3==0)

        {

        bffs++;

        if(bffs==100)bffs=99;

        while(sw3==0)dtsm();

        }}

        if(sw4==0) //判斷B方減分鍵

        {

        dtsm();

        if(sw4==0)

        {

        bffs--;

        if(bffs==-1)bffs=0;

        while(sw4==0)dtsm();

        }}}}

        /*動態(tài)掃描函數(shù)*/

        void dtsm(void)

        {

        xianshi[0]=duanma[affs/10]; //分離A方分?jǐn)?shù)十位

        xianshi[1]=duanma[affs%10]; //分離A方分?jǐn)?shù)個位

        xianshi[2]=duanma[bffs/10]; //分離B方分?jǐn)?shù)十位

        xianshi[3]=duanma[bffs%10]; //分離B方分?jǐn)?shù)個位

        //*******************動態(tài)掃描**************** *****************

        jishu++;

        if(jishu==4)jishu=0;

        P2=0x00;

        P2=weima[jishu]; //送位碼

        P0=xianshi[jishu]; //送段碼

        delay05ms();

        }

        本程序采用模塊化設(shè)計(jì)有利于程序的升級與修改。程序中按鍵“去抖”不用延時子函數(shù)而用動態(tài)掃描函數(shù)代替,可以提高程序效率,避免在調(diào)用延時子函數(shù)時數(shù)碼管亮度下降甚至出現(xiàn)閃爍現(xiàn)象。調(diào)用一次動態(tài)掃描函數(shù)相當(dāng)于延時約8ms。這是采用動態(tài)數(shù)碼管顯示時的應(yīng)用技巧之一。

        3 系統(tǒng)調(diào)試

        (1)啟動Proteus軟件,并用其繪制圖1所示電路原理圖。

        (2)啟動Keil軟件。建立工程,輸入上述C語言源程序并編譯調(diào)試生成二進(jìn)制的目標(biāo)文件。

        (3)將第(2)步生成的二進(jìn)制目標(biāo)文件加載到第(1)步所繪電路原理圖的AT89C51單片機(jī)中,然后仿真運(yùn)行。按下SW1~SW4中的任一按鍵,觀察相應(yīng)的數(shù)碼管顯示是否變化,其變化是否符合要求。

        (4)購買元器件,按硬件電路焊好電路板,將參考程序?qū)懭階T89C51單片機(jī),通電。按下SW1~SW4中的任一按鍵,觀察相應(yīng)的數(shù)碼管顯示是否變化,其變化是否符合要求。調(diào)試完成后,將產(chǎn)品投入實(shí)際的球類比賽(如籃球比賽)中使用,看是否能適應(yīng)實(shí)際的現(xiàn)場比賽。

        4 結(jié)束語

        文中從電路結(jié)構(gòu)與工作原理、軟件規(guī)劃與設(shè)計(jì)以及系統(tǒng)調(diào)試等三個方面簡要介紹了微電腦控制簡易球賽計(jì)分牌的設(shè)計(jì)與制作。是采用Proteus仿真軟件對單片機(jī)原理及應(yīng)用課程進(jìn)行教學(xué)改革的一個綜合性應(yīng)用實(shí)例。硬件上,它是一個具有數(shù)碼管顯示、按鍵輸入、數(shù)據(jù)運(yùn)算等比較完整的單片機(jī)應(yīng)用系統(tǒng)。軟件上,采用C語言編程。涉及單片機(jī)的內(nèi)部結(jié)構(gòu)及最小應(yīng)用系統(tǒng)、獨(dú)立式鍵盤結(jié)構(gòu)與設(shè)計(jì)、LED數(shù)碼管接口技術(shù)及其動態(tài)顯示原理以及C語言程序設(shè)計(jì)等單片機(jī)知識。旨在向廣大單片機(jī)愛好者介紹單片機(jī)應(yīng)用系統(tǒng)的基本開發(fā)過程以及C語言程序設(shè)計(jì)方法。

        [1]吳政江,張定祥.單片機(jī)原理及應(yīng)用(基于C語言)[M].北京:化學(xué)工業(yè)出版社,2013.

        [2]舒?zhèn)ゼt.單片機(jī)原理與實(shí)訓(xùn)教程[M].北京:科學(xué)出版社,2008.

        2014年貴州省高校人文社會科學(xué)研究項(xiàng)目“基于計(jì)算機(jī)仿真技術(shù)的電子信息類骨干課程課改研究”(負(fù)責(zé)人:吳政江;編號:14ZC261)。

        吳政江,貴州電子信息職業(yè)技術(shù)學(xué)院副教授,主要研究方向:單片機(jī)與嵌入式系統(tǒng)、電子信息技術(shù)、職業(yè)教育等。

        猜你喜歡
        單片機(jī)比賽
        健美比賽
        基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        發(fā)芽比賽
        大灰狼(2019年4期)2019-05-14 16:38:38
        小議PLC與單片機(jī)之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        選美比賽
        基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
        電子制作(2017年19期)2017-02-02 07:08:27
        比賽
        最瘋狂的比賽
        智慧少年(2016年2期)2016-06-24 06:12:54
        免费观看一区二区三区视频| 香蕉久久夜色精品国产2020| 一区二区三区婷婷在线| 蜜桃成人精品一区二区三区| 亚洲熟妇自偷自拍另类| 超级碰碰色偷偷免费视频 | 欧美专区在线| 日本免费一区精品推荐| 日本久久精品中文字幕| 肉体裸交137日本大胆摄影| 国产又爽又黄的激情精品视频| 嗯啊 不要 啊啊在线日韩a| 三级国产高清在线观看| 亚洲乱码中文字幕久久孕妇黑人| 扒开双腿疯狂进出爽爽爽视频| 美女视频很黄很a免费国产| 国产一区二区三区免费视| 无码gogo大胆啪啪艺术| 男女18禁啪啪无遮挡| 国产福利小视频91| av网站免费在线浏览| 人妻少妇偷人精品无码| 国产中文制服丝袜另类| 国产一级一厂片内射视频播放 | 一区二区三区美女免费视频| 免费人成在线观看视频播放| 成年女人A级毛片免| av高清视频在线麻豆免费观看| 亚洲成av人综合在线观看| 欧洲日本一线二线三线区本庄铃| 成人综合亚洲欧美一区h| 在线观看一区二区中文字幕| 免费高清av一区二区三区| 精品国内自产拍在线视频| 亚洲一区二区三区毛片| 精品偷自拍另类在线观看| 激情久久av一区av二区av三区| 国产 无码 日韩| 久久人妻一区二区三区免费 | 国产精品制服一区二区| 亚洲国产精品中文字幕久久|