![基于51單片機(jī)的無(wú)線籃球計(jì)分器_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/1/c5e986e2-b364-451f-bf2e-d254b7d0e368/c5e986e2-b364-451f-bf2e-d254b7d0e3681.gif)
![基于51單片機(jī)的無(wú)線籃球計(jì)分器_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/1/c5e986e2-b364-451f-bf2e-d254b7d0e368/c5e986e2-b364-451f-bf2e-d254b7d0e3682.gif)
![基于51單片機(jī)的無(wú)線籃球計(jì)分器_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/1/c5e986e2-b364-451f-bf2e-d254b7d0e368/c5e986e2-b364-451f-bf2e-d254b7d0e3683.gif)
![基于51單片機(jī)的無(wú)線籃球計(jì)分器_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/1/c5e986e2-b364-451f-bf2e-d254b7d0e368/c5e986e2-b364-451f-bf2e-d254b7d0e3684.gif)
![基于51單片機(jī)的無(wú)線籃球計(jì)分器_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/1/c5e986e2-b364-451f-bf2e-d254b7d0e368/c5e986e2-b364-451f-bf2e-d254b7d0e3685.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)課程設(shè)計(jì)基于51單片機(jī)的無(wú)線籃球計(jì)分器設(shè)計(jì)專(zhuān)業(yè)年級(jí): 2012級(jí)電氣工程及其自動(dòng)化 參與成員:鄒 勇(P121813544)尚阿琪(P121813545)劉甜甜(P121813535)馬 輝(P121813517)張大為(P121813555)賈雙梅(P122113555)指導(dǎo)老師: 黃靖濤 摘 要目前,隨著人民生活條件的改善以及對(duì)各種比賽項(xiàng)目的熱愛(ài)和欣賞,采取有線機(jī)器來(lái)進(jìn)行記分的中小型比賽也開(kāi)始減少,取而代之的是利用無(wú)線控制進(jìn)行記分。無(wú)線記分系統(tǒng)不再沿用過(guò)去的記分功能,而是利用無(wú)線發(fā)送與接收的形式工作,既節(jié)省了材料費(fèi)用,也使記分器工作的時(shí)候比較不受約束,且可以任意挪動(dòng)。因此為了使記分更
2、加方便并且記分設(shè)備的攜帶更加便捷,無(wú)線記分設(shè)備在國(guó)內(nèi)外的研究都變得更加廣泛和深入。本文主要設(shè)計(jì)了一個(gè)基于CC1101模塊的無(wú)線記分器,采用的是STC89C52芯片,來(lái)進(jìn)一步研究射頻收發(fā)模塊與單片機(jī)的結(jié)合,并實(shí)現(xiàn)無(wú)線記分功能。本設(shè)計(jì)的無(wú)線記分器分別由記錄端和接收顯示端這兩部分構(gòu)成。記錄端由單片機(jī)最小系統(tǒng)、CC1101無(wú)線發(fā)射模塊、按鍵、指示燈等組成,單片機(jī)讀取按鍵后把數(shù)據(jù)利用CC1101無(wú)線發(fā)射模塊發(fā)送給接收顯示端進(jìn)行顯示。接收顯示端由單片機(jī)最小系統(tǒng)、CC1101無(wú)線接收模塊、四位數(shù)碼顯示模塊等組成,無(wú)線接收模塊將接收的數(shù)據(jù)送單片機(jī)處理后,再將數(shù)據(jù)由數(shù)碼管顯示出來(lái)。根據(jù)該無(wú)線記分器的設(shè)計(jì)框圖,進(jìn)
3、行材料的選購(gòu)以及硬件的搭建,并用C語(yǔ)言編寫(xiě)程序?qū)崿F(xiàn)記分功能,分別利用四個(gè)功能按鍵控制A、B兩隊(duì)的加分和減分,在記錄端數(shù)碼管上顯示加分或者減分,在接收端數(shù)碼管上顯示兩隊(duì)的比分情況。關(guān)鍵詞:無(wú)線; 射頻收發(fā)模塊; 記分器目錄摘 要2一、系統(tǒng)方案設(shè)計(jì)41.1 系統(tǒng)構(gòu)成框圖及基本功能介紹41.2 系統(tǒng)各部分簡(jiǎn)介4二、硬件電路設(shè)計(jì)52.1 51單片機(jī)最小系統(tǒng)52.2 無(wú)線收發(fā)部分62.2.1 CC1101模塊簡(jiǎn)介62.2.2 無(wú)線模塊單片機(jī)接口72.3 74HC573芯片介紹72.4 觸摸按鍵介紹82.5 數(shù)碼管模塊介紹92.6 各模塊連接概述10三、軟件設(shè)計(jì)113.1 軟件設(shè)計(jì)綜述113.2 C程序設(shè)
4、計(jì)12四、硬件搭建及測(cè)試124.1 程序的編寫(xiě)及燒錄124.2 硬件測(cè)試13總 結(jié)14附 錄15附錄1 C程序設(shè)計(jì)15附錄2硬件調(diào)試效果圖19一、系統(tǒng)方案設(shè)計(jì)1.1系統(tǒng)構(gòu)成框圖及基本功能介紹本設(shè)計(jì)主要采用STC89C52單片機(jī)制造而成,由無(wú)線發(fā)送模塊和無(wú)線接收模塊組成無(wú)線收發(fā)系統(tǒng),按鍵區(qū)采用TTP226觸摸按鍵,設(shè)置四個(gè)功能按鍵,分別控制A、B兩隊(duì)的加減分情況,顯示區(qū)分為兩個(gè)部分,一部分由一組四位數(shù)碼管模塊形成,處于發(fā)送端顯示加或減的功能;另一部分由一組八位數(shù)碼管模塊形成,處于接收端顯示A、B兩隊(duì)比分情況。同時(shí),采用74HC573鎖存控制器來(lái)控制數(shù)據(jù)在數(shù)碼管上的輸出。系統(tǒng)構(gòu)成框圖如圖1-1所示
5、。圖1-1 系統(tǒng)構(gòu)成框圖1.2系統(tǒng)各部分簡(jiǎn)介(1)單片機(jī)數(shù)據(jù)在數(shù)碼管上的顯示。單片機(jī)的工作電壓為5V,如果直接將數(shù)碼管與單片機(jī)連接,則會(huì)導(dǎo)致電壓不夠,數(shù)碼管顯示不清。本設(shè)計(jì)中主要是采取在單片機(jī)與數(shù)碼管之間連接了74HC573芯片,使得數(shù)碼管上成功顯示加減分以及A、B兩隊(duì)的比分情況,該芯片起到了電流放大以及程序鎖存的作用。 (2)CC1101無(wú)線模塊的電源輸入。由于該模塊工作于1.8-3.6V電源電壓之間,故采用3.3V電源穩(wěn)壓模塊對(duì)其進(jìn)行穩(wěn)壓,從而使該無(wú)線模塊可以正常工作。(3)CC1101無(wú)線發(fā)送與接收模塊之間信息的傳送。CC1101的發(fā)送器部分是基于RF頻率直接合成的,將一個(gè)晶體連接至XO
6、SC_Q1和 XOSC_Q2。由晶體振蕩器產(chǎn)生合成器的參考頻率,以及ADC和數(shù)字部件的時(shí)鐘,同時(shí)以一個(gè)四線的串行外設(shè)接口來(lái)進(jìn)行配置和存取數(shù)據(jù)緩沖器。另一方面,CC1101中具有一個(gè)低功耗中頻接收機(jī)。低噪聲放大器將接收到的射頻信號(hào)放大,并在進(jìn)行積分求取的過(guò)程中降壓轉(zhuǎn)換至中頻。在IF下,I/Q信號(hào)被模擬數(shù)字轉(zhuǎn)換器數(shù)字化,而且均以數(shù)字形式完成自動(dòng)增益控制、精確信道濾波、調(diào)制解調(diào)位和數(shù)據(jù)包同步。二、硬件電路設(shè)計(jì)2.1 51單片機(jī)最小系統(tǒng)圖2-1 STC89C52單片機(jī)最小系統(tǒng)本設(shè)計(jì)主要采用的是STC89C52芯片。該芯片是由STC公司出產(chǎn)的一款性能強(qiáng),功耗低,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器的八位
7、微控制器。STC89C52芯片具備了傳統(tǒng)51單片機(jī)所不具備的功能,雖然其使用的是經(jīng)典的MCS-51內(nèi)核,但它又做了很多的改進(jìn)。同時(shí),STC89C52因其在單芯片上擁有8位CPU和在系統(tǒng)可編程Flash存儲(chǔ)器,更是為那些嵌入式控制應(yīng)用系統(tǒng)提供了靈活有效的解決方案。如圖2-1所示為51單片機(jī)最小系統(tǒng)圖,它由電源部分、復(fù)位電路部分、和晶振電路組成。2.2無(wú)線收發(fā)部分2.2.1 CC1101模塊簡(jiǎn)介CC1101是一款用于極低功耗RF應(yīng)用的Sub-GHz高性能射頻收發(fā)器。其主要是針對(duì)工業(yè)方面、科技研究方面和醫(yī)療方面以及300-348MHz、387-464MHz和779-928MHz這幾個(gè)頻帶的短距離無(wú)線
8、通信設(shè)備。該無(wú)線收發(fā)模塊的最大傳輸速率可以達(dá)到500Kbps,而且在空曠的地方可達(dá)200-300米的傳輸距離,可以從軟件方面來(lái)對(duì)波特率進(jìn)行修改,具有無(wú)線喚醒等功能,支持低功率電磁波激活功能 ,無(wú)線喚醒處于睡眠狀態(tài)的低功耗設(shè)備,靈敏度達(dá)到-110dBm,具有很高的可靠性,可廣泛應(yīng)用于各種場(chǎng)合的短距離無(wú)線通信領(lǐng)域。其通常應(yīng)用于300/779MHz ISM/SRD頻帶的超低功耗無(wú)線應(yīng)用、無(wú)線計(jì)量、無(wú)線告警、樓宇自動(dòng)化和安全系統(tǒng)等11-13。 CC1101 RF收發(fā)器集成了一個(gè)高度可配置的基帶調(diào)制解調(diào)器,支持?jǐn)?shù)據(jù)包的處理、突發(fā)傳輸、數(shù)據(jù)的緩沖、空閑信道的評(píng)估、指示鏈路質(zhì)量以及無(wú)線喚醒等硬件方面的處理。
9、我們還可以通過(guò)一個(gè)串行外設(shè)接口對(duì)CC1101的重要運(yùn)行參數(shù)和64字節(jié)RX和TX的先入先出數(shù)據(jù)緩存器進(jìn)行控制。CC1101在一個(gè)典型的系統(tǒng)中經(jīng)常會(huì)與一個(gè)微控制器以及一些額外的無(wú)源組件結(jié)合應(yīng)用14-15。其關(guān)鍵特性如下:(1)RF性能靈敏度高且電流消耗較低,在所有可用的頻率帶下,具有高達(dá)+10dBm的可編程輸出功率、1.2到500kBaud的可編程數(shù)據(jù)速率以及卓越的接收機(jī)選擇性和阻斷性能,可用頻帶有:300-348MHz、387-464MHz和779-928MHz。(2)模擬特性 支持2-FSK、GFSK、MSK以及OOK,靈活的ASK波形整形,建立時(shí)間只需90s,能夠迅速地鎖定頻率合成器,對(duì)于很
10、多跳頻系統(tǒng)都非常適用,同時(shí)利用自動(dòng)頻率補(bǔ)償調(diào)整頻率合成器到實(shí)際接收信號(hào)的中心頻率,并且擁有集成的模擬溫度傳感器。(3)數(shù)字特性 支持?jǐn)?shù)據(jù)包導(dǎo)向系統(tǒng)、校驗(yàn)地址、檢測(cè)同步字、靈活的數(shù)據(jù)包長(zhǎng)度以及自動(dòng)CRC處理;可用一次“突發(fā)”數(shù)據(jù)傳輸對(duì)所有寄存器進(jìn)行編程,具有高效的串行外設(shè)接口,數(shù)字RSSI輸出,可編程信道濾波器帶寬,可編程載波監(jiān)聽(tīng)指示器,可編程前導(dǎo)質(zhì)量指示器;可用于增強(qiáng)隨機(jī)噪聲偽同步字檢測(cè)的保護(hù),支持發(fā)送前自動(dòng)空閑信道評(píng)估,支持所有數(shù)據(jù)包的鏈路質(zhì)量指示,可選數(shù)據(jù)自動(dòng)白化和去白。2.2.2無(wú)線模塊單片機(jī)接口圖2-2 無(wú)線模塊與單片機(jī)連接圖如圖2-2所示、無(wú)線模塊的SI、SO、CSN、GDO0、GD
11、O2、SCLK分別與單片機(jī)的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5相連。通過(guò)這6個(gè)I/O口與CC1101芯片SPI總線進(jìn)行數(shù)據(jù)的交換,進(jìn)而完成收發(fā)等功能。2.3 74HC573芯片介紹74HC573芯片是一款具有三態(tài)輸出的八路鎖存器,用于驅(qū)動(dòng)電容相對(duì)較高或者阻抗相對(duì)較低的負(fù)載,實(shí)現(xiàn)緩沖寄存器、串并口以及雙向總線驅(qū)動(dòng)器等。當(dāng)該芯片鎖存允許端,即LE端,為高邏輯電平時(shí),輸出端Q輸出數(shù)據(jù)跟數(shù)據(jù)輸入端D一致;當(dāng)LE端為低邏輯電平時(shí),輸出端進(jìn)入鎖存狀態(tài),無(wú)論輸入為何種電平,輸出Q均保持上一次的電平狀態(tài),即保持預(yù)先設(shè)置好的數(shù)據(jù)。74HC573芯片的輸出使能端(低電平有效),可用來(lái)設(shè)置輸
12、出口的工作狀態(tài)。當(dāng)為高電平時(shí),無(wú)論鎖存允許端和數(shù)據(jù)輸入端為何種電平,輸出都是高阻態(tài)。在處于高阻態(tài)的狀態(tài)時(shí),輸出端無(wú)法進(jìn)行讀取也不能進(jìn)行驅(qū)動(dòng)總線,即芯片處于不可控狀態(tài)。其芯片引腳圖如圖2-3所示。圖2-3 74HC573芯片引腳圖2.4觸摸按鍵介紹本次無(wú)線記分器設(shè)計(jì)采用的是一款TTP226觸摸式按鍵,KEY1-KEY8接口與TTP226的D0-D7輸入接口連接,輸出接口Q0-Q7與OUT1-OUT8接口相連,將其安置在記分器的無(wú)線發(fā)射端來(lái)控制A、B兩隊(duì)的加減分。這是一種接觸板檢測(cè)IC,一共提供了八個(gè)觸摸按鍵,并且內(nèi)含八個(gè)指示燈,每個(gè)按鍵對(duì)應(yīng)一個(gè)指示燈,當(dāng)按下某個(gè)按鍵時(shí),與其對(duì)應(yīng)的指示燈就會(huì)亮起,
13、證明該按鍵在工作。在軟件編程的時(shí)候,設(shè)置1鍵為A隊(duì)的加分鍵、2鍵為A隊(duì)的減分鍵,設(shè)置3鍵為B隊(duì)的加分鍵、4鍵為B隊(duì)的減分鍵。TTP226觸摸式按鍵不再延續(xù)傳統(tǒng)固定pad尺寸的直接按鈕鍵,而且接觸鍵在交直流應(yīng)用中的特點(diǎn)是功耗較低、工作電壓較寬。其具體特點(diǎn)如下:工作電壓為2.0V5.5V;在工作電壓為3V時(shí),工作電流典型值為80uA,最大值為160uA,輸出刷新率約為55Hz;人體接觸檢測(cè)相對(duì)比較穩(wěn)定,取代了傳統(tǒng)直接切換的按鍵;由按鍵中的選項(xiàng)可以分別選擇直接模式、矩陣模式和串行模式,直接模式下最多八個(gè)輸入和八個(gè)輸出。在上電之后,TTP226觸摸式按鍵有一段穩(wěn)定時(shí)間,在此期間觸碰觸摸鍵區(qū)功能無(wú)效,T
14、TP226的是0.81.0s,而且始終進(jìn)行自動(dòng)校準(zhǔn),當(dāng)任何按鍵都不被觸碰時(shí),TTP226重新的校準(zhǔn)周期是0.81.0s。如圖2-4所示TTP226觸摸式按鍵電路原理圖。圖2-4 TTP226觸摸式按鍵電路原理圖2.5 數(shù)碼管模塊介紹本次無(wú)線記分器設(shè)計(jì)采用一個(gè)八位數(shù)碼管顯示模塊以及一個(gè)四位數(shù)碼管顯示模塊來(lái)進(jìn)行加、減分功能的顯示以及A、B兩隊(duì)的比分情況。在無(wú)線發(fā)射端設(shè)計(jì)一個(gè)四位數(shù)碼管來(lái)顯示加減功能,當(dāng)按下A隊(duì)或者B隊(duì)加分鍵的時(shí)候,該數(shù)碼管模塊則顯示“Add”;當(dāng)按下A隊(duì)或者B隊(duì)減分鍵的時(shí)候,該數(shù)碼管模塊則顯示“dEL”。該四位數(shù)碼管模塊的電路原理圖如圖3-4所示。在無(wú)線接收端設(shè)計(jì)一個(gè)八位數(shù)碼管來(lái)顯
15、示A、B兩隊(duì)的比分情況,初始值設(shè)置為“000-000”,分別通過(guò)A、B兩隊(duì)的加減分鍵來(lái)對(duì)比分情況進(jìn)行調(diào)整,如A隊(duì)得50分,B隊(duì)得42分,則數(shù)碼管顯示為“050-042”。圖2-5 四位數(shù)碼管模塊電路原理圖 2.6各模塊連接概述對(duì)于無(wú)線發(fā)送端,采用電源穩(wěn)壓模塊對(duì)整個(gè)單片機(jī)系統(tǒng)進(jìn)行穩(wěn)壓,單片機(jī)正常工作電壓為5V,本設(shè)計(jì)中穩(wěn)壓在5.35V左右,也可以供單片機(jī)小系統(tǒng)正常工作。設(shè)置單片機(jī)P2.0-P2.5接口分別與CC1101模塊的SCK、MOSI、GDO2、MISO、CSN、GDO0接口相連,由于CC1101模塊需要的是1.8-3.6V的電源輸入,故采用3.3V電源穩(wěn)壓模塊對(duì)無(wú)線發(fā)送模塊進(jìn)行穩(wěn)壓。將P
16、3.0-P3.7接口與TTP226觸摸按鍵的OUT1-OUT8接口相連,P0.0-P0.7接口與74HC573芯片的D0-D7輸入引腳相連,P2.7接口與芯片LE端相連,再將74HC573芯片的Q0-Q7輸出引腳連向四位數(shù)碼顯示模塊的A-DP接口,且將單片機(jī)P1.4-P1.7接口分別與數(shù)碼顯示模塊的另外四個(gè)接口相連。無(wú)線發(fā)送端電路原理圖見(jiàn)附錄2。 對(duì)于無(wú)線接收端,穩(wěn)壓方面與無(wú)線發(fā)送端一致,設(shè)置單片機(jī)P1.1-P1.6接口分別與CC1101模塊的SCK、MOSI、GDO2、MISO、CSN、GDO0接口相連,同樣由于CC1101模塊需要的是1.8-3.6V的電源輸入,故采用3.3V電源穩(wěn)壓模塊對(duì)
17、無(wú)線接收模塊進(jìn)行穩(wěn)壓。在無(wú)線接收端設(shè)置了兩個(gè)74HC573芯片,將P0.0-P0.7接口與其中一個(gè)74HC573芯片的D0-D7輸入引腳相連,P2.6接口與芯片LE端相連,再將74HC573芯片的Q0-Q7輸出引腳連向八位數(shù)碼顯示模塊的A-DP接口。而另外一個(gè)74HC573芯片的LE端與P2.7接口相連,輸出接口Q0-Q7與數(shù)碼顯示模塊的另外八個(gè)接口相連。三、軟件設(shè)計(jì)3.1 軟件設(shè)計(jì)綜述本設(shè)計(jì)軟件設(shè)計(jì)方面的構(gòu)思方法比較簡(jiǎn)潔,容易理解,方法也比較新穎,沒(méi)有復(fù)雜的程序嵌套。程序開(kāi)始時(shí)先進(jìn)行初始化,定義各個(gè)端口,并且對(duì)各函數(shù)進(jìn)行聲明,再對(duì)按鍵進(jìn)行掃描,查看是否有鍵按下,若有鍵按下,判斷是哪個(gè)鍵按下,
18、首先判斷是A隊(duì)評(píng)分區(qū)的按鍵按下,還是B隊(duì)評(píng)分區(qū)的按鍵按下。若判定為A隊(duì)評(píng)分區(qū)的按鍵按下,再判斷是加分鍵,還是減分鍵,若為加分鍵,則給A隊(duì)進(jìn)行加分處理;若為減分鍵,則給A隊(duì)進(jìn)行減分處理。若判定為B隊(duì)評(píng)分區(qū)的按鍵按下,再判斷是加分鍵,還是減分鍵,若為加分鍵,則給B隊(duì)進(jìn)行加分處理;若為減分鍵,則給B隊(duì)進(jìn)行減分處理。然后再對(duì)數(shù)碼管進(jìn)行掃描,加以顯示;若無(wú)鍵按下,則不執(zhí)行任何程序,直接結(jié)束。主程序流程圖如圖4-1所示。圖3-1 主程序流程圖3.2 C程序設(shè)計(jì)該無(wú)線記分器設(shè)計(jì)一共設(shè)置了四個(gè)功能按鍵分別實(shí)現(xiàn)A、B兩隊(duì)加減分功能,1號(hào)鍵實(shí)現(xiàn)A隊(duì)加分功能,連續(xù)觸摸即可對(duì)A隊(duì)進(jìn)行連續(xù)加分,為防止出現(xiàn)加分錯(cuò)誤,設(shè)置
19、2號(hào)鍵對(duì)A隊(duì)進(jìn)行減分控制;3號(hào)鍵實(shí)現(xiàn)B隊(duì)加分功能,連續(xù)觸摸即可對(duì)B隊(duì)進(jìn)行連續(xù)加分,同樣,為防止出現(xiàn)加分錯(cuò)誤,設(shè)置4號(hào)鍵對(duì)B隊(duì)進(jìn)行減分控制。當(dāng)按下A隊(duì)或者B隊(duì)加分鍵的時(shí)候,無(wú)線發(fā)射端上的四位數(shù)碼管模塊則顯示“Add”;當(dāng)按下A隊(duì)或者B隊(duì)減分鍵的時(shí)候,該數(shù)碼管模塊則顯示“dEL”。而無(wú)線接收端設(shè)計(jì)的顯示A、B兩隊(duì)比分情況的八位數(shù)碼管,初始值設(shè)置為“000-000”,分別通過(guò)A、B兩隊(duì)的加減分鍵來(lái)對(duì)比分情況進(jìn)行調(diào)整,如A隊(duì)得57分,B隊(duì)得42分,則數(shù)碼管顯示為“057-042”,中間兩位數(shù)碼管用于顯示“-”來(lái)區(qū)分A、B兩隊(duì)的比分。程序見(jiàn)附錄1。四、硬件搭建及測(cè)試4.1 程序的編寫(xiě)及燒錄本次設(shè)計(jì)采用C
20、語(yǔ)言進(jìn)行程序編寫(xiě),并使用Keil軟件進(jìn)行程序的編譯,而軟件調(diào)試主要就是根據(jù)編譯時(shí)產(chǎn)生的錯(cuò)誤進(jìn)行查找和修改。編寫(xiě)界面如4-1所示。圖4-1 編寫(xiě)界面程序編譯操作步驟:1、為該工程建立一個(gè)文件夾“無(wú)線發(fā)送”;2、新建一個(gè)project文件“無(wú)線發(fā)送.uv4”,將其保存在文件夾“無(wú)線發(fā)送”中,并設(shè)置單片機(jī)型號(hào),即目標(biāo)器件為STC89C52;3、編輯源程序,建立源文件“無(wú)線發(fā)送.c”,再保存在文件夾“無(wú)線發(fā)送”中;4、在工程項(xiàng)目組中添加源文件“無(wú)線發(fā)送.c;5、設(shè)置調(diào)試環(huán)境,選擇調(diào)試模式為硬件仿真,將實(shí)物與計(jì)算機(jī)的USB連接,選擇串口為COM1,設(shè)置串行口波特率為115200bps,燒錄界面如圖4-2
21、所示;圖4-2 燒錄界面4.2 硬件測(cè)試程序編譯成功之后,啟動(dòng)專(zhuān)門(mén)用于STC系列單片機(jī)的STC-ISP軟件,選擇正確的單片機(jī)型號(hào),即STC89C52,再選擇編譯產(chǎn)生的.HEX文件,設(shè)置串口為COM1,最高波特率為115200bps。之后,使目標(biāo)板處于斷電狀態(tài),點(diǎn)擊下載按鈕,該軟件將與單片機(jī)進(jìn)行握手,此時(shí)給目標(biāo)板上電,將目標(biāo)程序燒錄到單片機(jī)中。然后,對(duì)實(shí)物進(jìn)行檢測(cè)調(diào)試。單片機(jī)工作電壓為5V左右,故用電源穩(wěn)壓模塊對(duì)電源電壓進(jìn)行手動(dòng)調(diào)整,并用萬(wàn)用表對(duì)電壓進(jìn)行測(cè)量,確保電源電壓限定在單片機(jī)工作電壓范圍內(nèi)。首先,打開(kāi)無(wú)線發(fā)送和接收兩端的電源開(kāi)關(guān),初始值設(shè)置為“000-000”,顯示效果圖見(jiàn)附錄2。如果此
22、時(shí)比賽開(kāi)始A隊(duì)得一分,觸摸一下1號(hào)按鍵,發(fā)送端數(shù)碼管顯示“Add”,此時(shí)接收端數(shù)碼管顯示比分為“001-000”;如果之后B隊(duì)又得兩分,長(zhǎng)觸3號(hào)按鍵,發(fā)送端數(shù)碼管依然顯示“Add”,B隊(duì)分?jǐn)?shù)跳動(dòng)兩下,松開(kāi)按鍵,此時(shí)接收端數(shù)碼管顯示比分為“001-002”。無(wú)線記分器顯示效果圖見(jiàn)附錄2???結(jié)本次設(shè)計(jì)過(guò)程中也遇到了不少問(wèn)題,并得到了解決,以下對(duì)其中的幾個(gè)問(wèn)題加以總結(jié)。 (1)CC1101無(wú)線模塊在發(fā)送以及接收信號(hào)時(shí)可能受到干擾而導(dǎo)致不能及時(shí)向單片機(jī)系統(tǒng)傳輸數(shù)據(jù),編寫(xiě)程序時(shí)采用一定的延時(shí),來(lái)避免這種干擾。 (2)最初采購(gòu)了四個(gè)共陽(yáng)的二位數(shù)碼管和兩個(gè)共陽(yáng)的四位數(shù)碼管,利用這些數(shù)碼管焊接之后,記分器表
23、面布線復(fù)雜,而且由于焊接的問(wèn)題導(dǎo)致接觸不良,顯示亂碼,故改用焊接好的八位數(shù)碼管顯示模塊以及四位數(shù)碼管顯示模塊。 (3)在向數(shù)碼管發(fā)送程序時(shí),LED顯示有時(shí)候會(huì)出現(xiàn)重影,可以在改變段的輸出內(nèi)容之前,先令所有的位都停止顯示,即開(kāi)位、送段碼、延時(shí)15ms、關(guān)位,再下一位,就可進(jìn)行消隱。當(dāng)然這次的設(shè)計(jì)中也還存在著一定的不足,比如說(shuō)設(shè)計(jì)中使用的觸摸按鍵在工作時(shí),用手觸摸A組加分按鈕,就容易觸碰到A組的減分按鈕,導(dǎo)致A組的加分鍵和減分鍵指示燈同時(shí)亮起,所以如果條件允許的話,可以采用設(shè)計(jì)更好的按鍵模塊來(lái)代替這次使用的觸摸按鍵。附 錄附錄1 C程序設(shè)計(jì)#include <reg52.h> #def
24、ine DataPort P0 /定義數(shù)據(jù)端口 程序中遇到DataPort 則用P0 替換#define a 1#define b 0sbit LATCH1=P27;/定義鎖存使能端口 段鎖存sbit LATCH2=P26;/位鎖存unsigned char code dofly_DuanMa10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/ 顯示段碼值09unsigned char code dofly_WeiMa=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/分別對(duì)應(yīng)相應(yīng)的數(shù)碼管點(diǎn)亮,即位碼uns
25、igned char TempDataA3; /A隊(duì)存儲(chǔ)顯示值的全局變量unsigned char TempDataB3; /B隊(duì)存儲(chǔ)顯示值的全局變量unsigned int numA=0; /A隊(duì)要顯示的數(shù)unsigned int numB=0; /B隊(duì)要顯示的數(shù)void Delaysmg(unsigned int t) while(-t);void Display_flag() unsigned char i; for(i=3;i<=4;i+) DataPort=0; /清空數(shù)據(jù),避免交替重影 LATCH1=1; /段鎖存 LATCH1=0; DataPort=dofly_WeiMa
26、i; /取位碼 LATCH2=1; /位鎖存 LATCH2=0; DataPort=0xBF; /取顯示數(shù)據(jù),段碼 LATCH1=1; /段鎖存 LATCH1=0; Delaysmg(200); /掃描間隙延時(shí) void Display(unsigned char FirstBit,unsigned char Num, unsigned char name ) unsigned char i; for(i=0;i<Num;i+) DataPort=0; /清空數(shù)據(jù),避免交替重影 LATCH1=1; /段鎖存 LATCH1=0; DataPort=dofly_WeiMai+FirstBit
27、-1; /取位碼 LATCH2=1; /位鎖存 LATCH2=0; if(name) DataPort=TempDataAi; /取顯示數(shù)據(jù),段碼 else DataPort=TempDataBi; /取顯示數(shù)據(jù),段碼 LATCH1=1; /段鎖存 LATCH1=0; Delaysmg(200); / 掃描間隙延時(shí) void Display_A() TempDataA0=dofly_DuanManumA/1000;/分解顯示信息,如要顯示57,則57/10=5 57%10=7 TempDataA1=dofly_DuanMa(numA%1000)/100; TempDataA2=dofly_DuanMa(numA%1000)%100)/10; Display(1,3,a); /A隊(duì) Display_flag(); /顯示”-“void Display_B() TempDataB0=dofly_DuanManumB/1000;/分解顯示信息,如要顯示57,則57/10=5 57%10=7 TempDataB1=dofly_DuanMa(numB%1000)/100; TempDataB2=dofly_DuanMa(numB%1000)%100)/10; Display(6,3,b)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版八年級(jí)數(shù)學(xué)上冊(cè)13.3.1《等腰三角形(2)》聽(tīng)評(píng)課記錄
- 蘇教版一年級(jí)數(shù)學(xué)上冊(cè)口算練習(xí)題三
- 法人股東對(duì)外-股權(quán)轉(zhuǎn)讓協(xié)議書(shū)范本
- 綠地租賃合同范本
- 資產(chǎn)委托經(jīng)營(yíng)管理合同范本
- 汽車(chē)租賃業(yè)務(wù)合作協(xié)議書(shū)范本
- 宿遷房屋租賃合同范本
- 人力資源戰(zhàn)略合作框架協(xié)議書(shū)范本
- 2025年度年度單位向單位教育項(xiàng)目借款合同
- 醫(yī)療服務(wù)協(xié)議書(shū)范本
- 《工作場(chǎng)所安全使用化學(xué)品規(guī)定》
- 裝飾圖案設(shè)計(jì)-裝飾圖案的形式課件
- 2022年菏澤醫(yī)學(xué)專(zhuān)科學(xué)校單招綜合素質(zhì)考試筆試試題及答案解析
- 護(hù)理學(xué)基礎(chǔ)教案導(dǎo)尿術(shù)catheterization
- ICU護(hù)理工作流程
- 廣東版高中信息技術(shù)教案(全套)
- 市政工程設(shè)施養(yǎng)護(hù)維修估算指標(biāo)
- 短視頻:策劃+拍攝+制作+運(yùn)營(yíng)課件(完整版)
- 石家莊鐵道大學(xué)四方學(xué)院畢業(yè)設(shè)計(jì)46
- 分布式光伏屋頂調(diào)查表
- 部編版五年級(jí)語(yǔ)文下冊(cè)第四單元課時(shí)作業(yè)本有答案
評(píng)論
0/150
提交評(píng)論