版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 信息職業(yè)技術(shù)學(xué)院 畢業(yè)設(shè)計說明書(論文) 設(shè)計(論文)題目: 基于單片機(jī)的籃球比賽 記分器的設(shè)計 專 業(yè): 通 信 技 術(shù) 班 級: 通 技 06-2 學(xué) 號: 姓 名: 指導(dǎo)教師: 二 八年十二月三十日 信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(論文)任務(wù)書信息職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(論文)任務(wù)書 學(xué)生姓名學(xué)號班級通技 06-2專業(yè)通信技術(shù) 設(shè)計(或論文)題 目 基于單片機(jī)的籃球比賽記分器的設(shè)計 指導(dǎo)教師姓名職 稱工作單位及所從事專業(yè)聯(lián)系方式 備 注 助教技術(shù)學(xué)院 071 高級工程師四有限公司 1878 設(shè)計(論文)內(nèi)容: 完成電路設(shè)計方案的選擇;硬件電路的設(shè)計;軟件程序的編寫;仿真與調(diào)試。 該設(shè)計的整體電
2、路大體來說由復(fù)位電路、時鐘電路、按鍵電路和顯示電路四部分組成, 在此分別對這四部分做了介紹。此外還對單片機(jī) at89c51,仿真軟件 isis 分別做了介紹。 進(jìn)度安排: 2008.10.1310.29 查找資料,選擇參考方案 第 6、7 周 2008.10.3011.23 查找資料,進(jìn)行硬件電路的設(shè)計 第 8、9、10 周 2008.11.1711.30 程序的編寫與調(diào)試 第 10、11 周 2008.11.2412.28 整理報告,確定初稿,檢查定稿 第 11 至 16 周 2008.12.2109.1.3 畢業(yè)設(shè)計答辯 第 16、17 周 主要參考文獻(xiàn)、資料(寫清楚參考文獻(xiàn)名稱、作者、出
3、版單位): 1李全利.單片機(jī)原理及應(yīng)用技術(shù).北京:高等教育出版社,2001 2何立民.單片機(jī)高等教程.北京:航空航天大學(xué)出版社,2000 3張毅剛.mcs51 單片機(jī)應(yīng)用設(shè)計.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997 4潘新民.微型計算機(jī)控制技術(shù).北京:人民郵電出版社,1999 5曹天漢.單片機(jī)原理與接口技術(shù).北京:電子工業(yè)出版社,2003.8 6李廣弟,朱月秀,王秀山.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,2001 審 批 意 見 教研室負(fù)責(zé)人: 年 月 日 目目錄錄 摘要 .1 第 1 章緒論.2 第 2 章方案設(shè)計 .3 2.1系統(tǒng)功能要求.3 2.2整體方案.3 第 3 章硬件設(shè)計
4、.5 3.1單片機(jī)系統(tǒng)電路設(shè)計.5 3.1.1時鐘電路.5 3.1.2復(fù)位電路.6 3.2數(shù)據(jù)顯示單元設(shè)計.7 3.2.1顯示器原理簡介.7 3.2.2顯示器電路圖.7 3.3按鍵電路.7 第 4 章軟件設(shè)計 .9 第 5 章系統(tǒng)仿真測試 .11 結(jié)論.12 致謝.13 參考文獻(xiàn).14 附錄 1總電路原理圖 .15 附錄 2程序清單 .16 摘要 籃球比賽記分器是為了解決籃球比賽記分的問題。本設(shè)計是采用單片機(jī) at89c51 作為核心元件,利用 7 段共陰 led 作為顯示器件,在此設(shè)計中共接入了 2 個 4 聯(lián) 7 段共陰 led 顯示器,其中 1 個用于顯示紅隊的分?jǐn)?shù),1 個用于顯示藍(lán)隊分
5、 數(shù),顯示范圍相當(dāng)高,足夠滿足賽程需要。本文詳細(xì)地介紹了系統(tǒng)硬件與軟件的設(shè)計 過程,由于單片機(jī)的集成度高,功能強(qiáng),通用性好,特別是它具有體積小,重量輕, 能耗低,價格便宜,可靠性高,抗干擾能力強(qiáng)和使用方便等獨特的優(yōu)點,采用該裝 置可根據(jù)實際情況進(jìn)行比分修改,具有低功耗,可靠性,安全性以及低成本等特點。 關(guān)鍵詞at89c51;led;復(fù)位電路;時鐘電路 第 1 章緒論 籃球比賽記分器是為了解決籃球比賽記分的問題。此裝置利用單片機(jī) at89c51 完成了記分的功能。本文詳細(xì)地介紹了系統(tǒng)硬件與軟件的設(shè)計過程,采用該裝置可 根據(jù)實際情況進(jìn)行比分修改和顯示,具有低功耗,可靠性,安全性以及低成本等特 點。
6、 體育比賽記分系統(tǒng)是對體育比賽過程中所產(chǎn)生的比分進(jìn)行快速采集記錄,加工 處理,傳遞利用的信息系統(tǒng)。根據(jù)不同運動項目的不同比賽規(guī)則要求,體育比賽的 記分系統(tǒng)包括測量類,評分類,命中類,制勝類,得分類等多種類型。 籃球比賽是根據(jù)運動隊在規(guī)定的比賽時間里得分多少來決定勝負(fù)的,因此,籃 球比賽的記分系統(tǒng)是一種得分類型的系統(tǒng)?;@球比賽記分系統(tǒng)由記分器等多種電子 設(shè)備組成,同時,根據(jù)目前高水平籃球比賽要求,完善的籃球比賽記分系統(tǒng)設(shè)備應(yīng) 能夠與現(xiàn)場成績處理,現(xiàn)場大屏幕,電視轉(zhuǎn)播車等多種設(shè)備相聯(lián),以便實現(xiàn)高比賽 現(xiàn)場感,表演娛樂觀眾等功能目標(biāo)。 由于單片機(jī)的集成度高,功能強(qiáng),通用性好,特別是它具有體積小,重量
7、輕, 能耗低,價格便宜,可靠性高,抗干擾能力強(qiáng)和使用方便等獨特的優(yōu)點,使單片機(jī) 迅速得到了推廣應(yīng)用,目前已經(jīng)成為測量控制應(yīng)用系統(tǒng)中的優(yōu)選機(jī)種和新電子產(chǎn)品 的關(guān)鍵部位。世界各大電氣廠家,測控技術(shù)企業(yè),機(jī)電行業(yè),競相把單片機(jī)應(yīng)用于 產(chǎn)品更新,作為實現(xiàn)數(shù)字化,智能化的核心部件?;@球記分器就是以單片機(jī)為核心 的計分系統(tǒng)。 本系統(tǒng)是采用單片機(jī) at89c51 作為核心元件。利用 7 段共陰 led 作為顯示器 件。在此設(shè)計中共接入了 2 個 4 聯(lián) 7 段共陰 led 顯示器,其中 1 個用于記錄紅隊的 分?jǐn)?shù),1 個用于記錄藍(lán)隊的分?jǐn)?shù)。 第 2 章方案設(shè)計 2.1系統(tǒng)功能要求 兩隊的比分由五個鍵來控制,
8、其中 key0 用以切換當(dāng)前比分球隊, key1,key2,key3,key4 分別用來加 1 分,加 2 分,加 3 分和減 1 分。當(dāng)比賽開 始時先按下復(fù)位鍵使系統(tǒng)恢復(fù)初始狀態(tài),然后根據(jù)比賽情況開始對球隊加分。 2.2整體方案 為了完成上述功能要求,籃球比賽記分器系統(tǒng)整體結(jié)構(gòu)如圖 2-1 所示包括: at89c51、時鐘及復(fù)位電路、按鍵電路、及 led 顯示器。該電路的原理框圖,如圖 2-1 所示: at89c51 時 鐘 電 路 按鍵電路 復(fù)位電路 led 顯示 器 圖 2-1電路原理框圖 (1)顯示方案 方案一:靜態(tài)顯示就是當(dāng) cpu 將要顯示的字或字段碼送到輸出口,顯示器就可 以顯示
9、出所要顯示的字符,如果 cpu 不去改寫它,它將一直保持下去;靜態(tài)顯示硬 件開銷大,電路復(fù)雜,信息刷新速度慢,只適合顯示位數(shù)較少的場合。 方案二:動態(tài)顯示就是在顯示時,單片機(jī)控制電路連續(xù)不斷刷新輸出顯示數(shù)據(jù) 使各數(shù)碼管一位一位地輪流點亮顯示器地各個位。對于顯示器的每一位而言,每隔 一段時間點亮一次;動態(tài)顯示耗能較小,但編寫程序較復(fù)雜。動態(tài)顯示硬件連接簡 單,信息刷新速度快,節(jié)省 i/o 接口。 由于本次設(shè)計要求對比分進(jìn)行時實檢測與控制,所以選擇的是方案二。 (2)鍵盤方案 方案一:獨立式鍵盤的各個按鍵之間是相互獨立的每一個按鍵連接一根 i/o 口線。 獨立式鍵盤電路簡單,軟件設(shè)計也比較方便,但
10、由于每一個按鍵均需一根 i/o 口線, 當(dāng)鍵盤按鍵數(shù)量較多時需的 i/o 口線較多,應(yīng)此獨立式鍵盤只適合于按鍵較少的應(yīng)用 場合。 方案二:采用 44 行列式鍵盤,它表示有 4 根行線和 4 根列線,在每根行線和列 線的交叉點上有一個按鍵,組成了一個有 16 個按鍵的矩陣鍵盤。 在籃球比賽記分器設(shè)計中 key0 為選擇開關(guān)鍵,key1,key2,key3 為加法 鍵,key4 為減法鍵。由于此次設(shè)計只需要用 5 個按鍵,所以選擇的是方案一。 第 3 章硬件設(shè)計 3.1單片機(jī)系統(tǒng)電路設(shè)計 單片機(jī)就是在一塊硅片上集成了中央處理器(cpu)存儲器和輸入/輸出接口 (并行 i/o 串行通信口)振蕩電路,
11、計數(shù)器等電路的一塊集成電路,這樣的一塊集成 電路具有一臺計算機(jī)的基本功能,因而被稱為單片微型計算機(jī),簡稱單片機(jī)(mcu) 。 單片機(jī)的種類很多。intel 公司首先于 1976 年 6 月推出了 mcs-48 系列單片機(jī)。 世界上一些著名的電子器件公司都開發(fā)有自己的單片機(jī)產(chǎn)品。由于單片機(jī)具有體積 小、功能強(qiáng)、成本低、功耗小等優(yōu)點,所以在工業(yè)控制、智能儀表、通信技術(shù)、信 號處理及家用電器產(chǎn)品中廣泛應(yīng)用?,F(xiàn)在的單片機(jī)從功能上已突破微型計算機(jī)的傳 統(tǒng)功能,向著以單片機(jī)為核心,外接各種控制單元的專用單片機(jī)方向發(fā)展。 在單片機(jī)內(nèi)部有一振蕩電路,只要在單片機(jī)的 xtal1 和 xtal2 引腳外接石英 晶
12、體(簡稱晶振) ,就構(gòu)成了自激振蕩器并在單片機(jī)內(nèi)部產(chǎn)生時鐘脈沖信號。圖 3-1 中電容器 c1和 c2的作用是穩(wěn)定頻率和快速起振,電容值在 530pf,典型值為 30pf。晶振 cys 的振蕩頻率范圍在 1.2 mhz12 mhz 間選擇,典型值為 12 mhz 和 6mhz。 3.1.1時鐘電路 單片機(jī)時鐘電路圖如圖 3-1 所示: 圖 3-1單片機(jī)時鐘電路圖 xtal1 和 xtal2 分別為反向放大器的輸入和輸出。該反向放大器可以配置為 片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,xtal2 應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號
13、的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 3.1.2復(fù)位電路 單片機(jī)的復(fù)位操作使單片機(jī)經(jīng)入初始化狀態(tài)。初始化后,程序計數(shù)器 pc=0000h,所以程序從 0000h 地址單元開始執(zhí)行。單片機(jī)啟動后,片內(nèi) ram 為隨 機(jī)值,運行中的復(fù)位操作不改變片內(nèi) ram 的內(nèi)容。 復(fù)位電路就是在 rst 端(9 腳)外接的電路,目的是使單片機(jī)上電開始工作時, 內(nèi)部電路從初始狀態(tài)開始工作,或者在工作中人為讓單片機(jī)重新從初始狀態(tài)開始工 作。在時鐘工作的情況下,單片機(jī)的 rst 引腳引入高電平并保持 2 個機(jī)器周期以上 的時間,at89c51 便能完成系統(tǒng)重置的各項動作,使得內(nèi)部特殊功能寄存器的內(nèi)
14、容 均被設(shè)置成已知狀態(tài)。 實際應(yīng)用中,復(fù)位操作有兩種基本的形式:一種是上電復(fù)位,另一種是按鍵復(fù) 位。上電復(fù)位要求接通電源后,單片機(jī)自動實現(xiàn)復(fù)位操作。上電復(fù)位電路如圖 3-2 所示: 圖 3-2上電復(fù)位電路 圖 3-3按鍵復(fù)位電路 按鍵復(fù)位要求在電源接通的條件下,在單片機(jī)運行期間,用按鈕開關(guān)操作使單片 機(jī)復(fù)位。根據(jù)本設(shè)計的需要在比賽開始時按下按鍵 p 使系統(tǒng)恢復(fù)初使?fàn)顟B(tài),實現(xiàn)對 上場比分清 0 操作開始對新一場的比賽進(jìn)行記分。所以在此設(shè)計中選擇的是按鍵復(fù) 位電路。 3.2數(shù)據(jù)顯示單元設(shè)計 3.2.1顯示器原理簡介 根據(jù)設(shè)計的特點,此顯示選擇的是動態(tài) led 顯示。所謂動態(tài)顯示就是一位一位 地輪流
15、點亮顯示器地各個位(掃描)。對于顯示器的每一位而言,每隔一段時間點 亮一次。雖然在同一時刻只有一位顯示器在工作(點亮),但由于人眼的視覺暫留 效應(yīng)和發(fā)光二極管熄滅時的余暉,我們看到的卻是多個字符“同時”顯示。顯示器 亮度既與點亮?xí)r的通道電流有關(guān),也與點亮?xí)r間長短和間隔時間有關(guān)。調(diào)整電流和 時間參數(shù),即可實現(xiàn)亮度較高穩(wěn)定的顯示。 3.2.2顯示器電路圖 由于單片機(jī)端口驅(qū)動能力不足,所以在 p0 口上加上上拉電阻提高 p0 口驅(qū)動能 力增加數(shù)碼管亮度。 8 位共陰顯示器與 at89c51 的接口邏輯圖如圖 3-4 所示: 圖 3-4動態(tài) led 顯示接口 3.3按鍵電路 鍵盤控制電路如圖 3-5
16、所示。 xtal2 18 xtal1 19 ale 30 ea 31 psen 29 rst 9 p0.0/ad0 39 p0.1/ad1 38 p0.2/ad2 37 p0.3/ad3 36 p0.4/ad4 35 p0.5/ad5 34 p0.6/ad6 33 p0.7/ad7 32 p2.7/a15 28 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 p3.0/
17、rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 u1 80c51 sw1 sw-spdt r1 10k key0 key1 key2 key3 key4 圖 3-5按鍵電路 key0 是選擇給哪隊加分,在我此次設(shè)計中 p3.7 口接選擇開關(guān) key0。當(dāng) key0 右邊為開路左邊接通時處于給紅隊加分的狀態(tài),左邊開路右邊接通時處于給藍(lán)隊加 分的狀態(tài);key1 為加 1 分:每按下一次給當(dāng)前球隊加 1 分;key2 為加 2 分:每按 下一次給當(dāng)前球隊加 2 分;key
18、3 為加 3 分:每按下一次給當(dāng)前球隊加 3 分;key4 為減一分:當(dāng)人為的不小心按錯鍵加錯分可以按此鍵減去加多的分?jǐn)?shù),使記分準(zhǔn)確 無誤。 key0 用于選擇,應(yīng)是藍(lán)隊加減分狀態(tài),還是紅隊加減分狀態(tài),key1 用于加 1 操作;key2 用于加 2 操作;key3 用于加 3 分操作;key4 用于減 1 分操作。 第 4 章軟件設(shè)計 系統(tǒng)的操作過程和工作過程在程序的設(shè)計過程中起著很重要的指導(dǎo)作用,因此在 軟件設(shè)計之前應(yīng)首先分析籃球比賽記分器的工作流程。 當(dāng)比賽開始時,先判斷是哪個隊投球進(jìn)分,該對哪個隊加分,然后判斷該加多 少分,如果在記分過程中不小心加錯分了,則按減 1 鍵減去多加的分。當(dāng)
19、比賽開始 時應(yīng)首先按 res 鍵清除上場比分,使本場比分從 0 開始記分。如果藍(lán)隊有人進(jìn)了 3 分球該加 3 分時首先按 key0 使其左邊開路右邊接通開始給藍(lán)隊加分,然后按下 key3 給藍(lán)隊加 3 分,當(dāng)該加 2 分時按下 key2,當(dāng)加 1 分時按下 key1。如果不小 心按錯鍵加錯分者按下 key4 減去多加的分,如果多加了 1 分者按 1 下減 1 分多加 了 2 分者按兩下減 2 分。同理,當(dāng)給紅隊加分時首先按 key0 使其左邊接通右邊斷 開,使其處于給紅隊加分的狀態(tài),然后根據(jù)比賽情況對其進(jìn)行加分。 根據(jù)上面對工作流程的分析,系統(tǒng)軟件可以分為以下幾個工能模塊: (1)鍵盤管理:檢
20、測鍵盤輸入,啟動系統(tǒng)工作。 (2)顯示:顯示當(dāng)前比分。 主程序流程如圖 4-1 所示: 開始 初始化 顯示比分 等待按鍵 調(diào)整當(dāng)前球隊 加 1 分? 加 2 分? 加 3 分? 減 1 分? 改變當(dāng)前球隊 給當(dāng)前球隊加 1 分 給當(dāng)前球隊加 2 分 給當(dāng)前球隊加 3 分 給當(dāng)前球隊減 1 分 y y y y y n n n n 調(diào)用顯示 顯視當(dāng)前比分 顯示當(dāng)前比分 圖 4-1主程序流程圖 顯示當(dāng)前比分 顯示當(dāng)前比分 n 第 5 章系統(tǒng)仿真測試 此設(shè)計的電路在 isis 軟件中進(jìn)行仿真,仿真總電路如圖 5-1 所示: 圖 5-1仿真電路圖 把編寫好的程序放入仿真軟件中,結(jié)合硬件電路進(jìn)行調(diào)試與運行
21、。在調(diào)試的過 程中由于按鍵都具有機(jī)械抖動,所以對按鍵的消抖具有很重要的作用,一般消除抖 動的方法有硬件消抖和軟件消抖。在本設(shè)計中采用的是軟件消抖,通過設(shè)定延時時 間消除抖動,所以延時時間的選擇不正確可能導(dǎo)致系統(tǒng)的不穩(wěn)定,也就是在加分的 過程中很可能因此而出錯,所以在軟件編程中對延時時間的選擇非常重要。 舉例說明,描述下使用過程:例如顯示當(dāng)前狀態(tài)為紅隊:藍(lán)隊=61:40。當(dāng)藍(lán)隊選手 投了三分球的時候按下 key3 給藍(lán)隊加 3 分,此時比分為 61:43,當(dāng)紅隊選手又投了 兩分球該加 2 分時,先按下開關(guān) key0 使處于給紅隊加分的狀態(tài),再按下鍵 key2 給紅隊加 2 分。 結(jié)論 畢業(yè)設(shè)計是
22、我們從大學(xué)畢業(yè)生走向以后工作崗位重要的一步。從最初的選題, 開題到繪圖直到完成設(shè)計。期間,查找資料,老師指導(dǎo),與同學(xué)交流,反復(fù)思考, 每一個過程都是對自己能力的一次檢驗和充實。 通過這次實踐,我了解了單片機(jī) at89c51 的用途及工作原理,熟悉了籃球比賽 記分器的設(shè)計步驟,鍛煉了我的動手能力,培養(yǎng)了自己獨立設(shè)計能力。此次畢業(yè)設(shè) 計是對我專業(yè)知識和專業(yè)基礎(chǔ)知識一次實際檢驗和鞏固,同時也是走向工作崗位前 的一次熱身。 在我的畢業(yè)設(shè)計中,主要是以 at89c51 單片機(jī)為核心對比賽分?jǐn)?shù)的檢測與顯示 進(jìn)行了簡單的設(shè)計與闡述。在設(shè)計開始時對硬件電路的選擇非常重要,首先查找了 大量資料確定了此設(shè)計應(yīng)該用
23、動態(tài)顯示方案。對軟件編程也是個很重要的過程,在設(shè) 計過程中對延時時間的選擇非常重要,如果延時時間選擇不當(dāng)系統(tǒng)可能不穩(wěn)定。 本次畢業(yè)設(shè)計收獲很多,比如學(xué)會了查找相關(guān)資料相關(guān)標(biāo)準(zhǔn),分析問題,但是 畢業(yè)設(shè)計也暴露出自己專業(yè)基礎(chǔ)的很多不足之處。比如缺乏綜合應(yīng)用專業(yè)知識的能 力,對材料的不了解,等等。這次實踐是對自己大學(xué)三年所學(xué)的一次大檢閱,使我 明白自己知識還很淺薄,雖然馬上要畢業(yè)了,但是自己的求學(xué)之路還很長,以后更 應(yīng)該在工作中學(xué)習(xí),努力使自己成為一個對社會有所貢獻(xiàn)的人。 致謝 在大學(xué)的學(xué)習(xí)過程中,畢業(yè)設(shè)計是一個重要的環(huán)節(jié),是我們步入社會的一次極 好的演示,我十分有幸能提早把畢業(yè)設(shè)計和以后的實際工作
24、結(jié)合起來。 此次能夠順利的完成我的畢業(yè)設(shè)計離不開老師和同學(xué)的幫助。經(jīng)過兩個多月的 的忙碌,本次畢業(yè)設(shè)計已經(jīng)接近尾聲,作為一個??粕漠厴I(yè)設(shè)計,由于經(jīng)驗的匱 乏,難免有許多考慮不周全的地方,如果沒有指導(dǎo)導(dǎo)師的督促指導(dǎo),以及同學(xué)的幫 助,想要完成這個設(shè)計是難以想象的。 尤其是我的指導(dǎo)老師她給予了我很多幫助,由于這是我初次開始此方面的設(shè)計有 很多方面都不懂,她總是不厭其煩的耐心的給我講解,指導(dǎo),還利用放假時間給我 講解。從課題的選擇到設(shè)計的最終完成,曾老師都始終給予我細(xì)心的指導(dǎo)和不懈的 支持。 還有就是我的各位任課老師的幫助,你們平時的教導(dǎo)為我這次設(shè)計墊定了基礎(chǔ)。 還要感謝圖書館及圖書館熱情的管理員
25、為我提供豐富的參考資料。感謝我的同學(xué)他 們給了我很多寶貴的意見和參考,使我獲益很多,最后感謝所有關(guān)心、幫助過我的 朋友和同學(xué)。 參考文獻(xiàn) 1李全利.單片機(jī)原理及應(yīng)用技術(shù).北京:北京高等教育出版社,2001 2何立民.單片機(jī)高等教程.北京:北京航空航天大學(xué)出版社,2000 3張毅剛.mcs51 單片機(jī)應(yīng)用設(shè)計.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997 4潘新民.微型計算機(jī)控制技術(shù).北京:北京人民郵電出版社,1999 5曹天漢.單片機(jī)原理與接口技術(shù).北京:北京電子工業(yè)出版社,2003 6李廣弟,朱月秀,王秀山.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,2001 附錄 1總電路原理圖 附錄 2程序清單
26、 #includereg51.h #define uchar unsigned char uchardisplay_code=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x40; /uchar a11=0,1,2,3,4,5,6,7,8,9,10; ucharrbw,rsw,rgw,bbw,bsw,bgw; ucharsummand_red,summand_blue; ucharflag; sfr p0=0 x80; sfr p2=0 xa0; sfr p3=0 xb0; sbit key0=p37; sbit k
27、ey1=p30; sbit key2=p31; sbit key3=p32; sbit key4=p33; void delay10ms(void) unsigned char i,k; for (i=20;i0;i-) for(k=76;k0;k-); void delay() uchari; for(i=0;i9;i+) delay10ms(); /*void delay1() uchari; for(i=0;i50;i+) delay10ms();*/ void display() delay10ms(); /p2=0 xfe;p0=display_code10;delay10ms();
28、 p2=0 xfd;p0=display_coderbw; delay10ms(); p2=0 xfb;p0=display_codersw; delay10ms(); p2=0 xf7;p0=display_codergw; delay10ms(); /p2=0 xef;p0=display_code10; delay10ms(); p2=0 xdf;p0=display_codebbw; delay10ms(); p2=0 xbf;p0=display_codebsw; delay10ms(); p2=0 x7f;p0=display_codebgw; delay10ms(); delay
29、10ms(); void keyscan() if (key1=0) delay(); if (key1=0) if(flag=0) summand_red=summand_red+1; rbw=summand_red/100; rsw=(summand_red%100)/10; rgw=(summand_red%100)%10; /bbw=summand_blue/100; /bsw=(summand_blue%100)/10; /bgw=(summand_blue%100)%10; display(); if(flag=1) summand_blue=summand_blue+1; /rb
30、w=summand_red/100; /rsw=(summand_red%100)/10; /rgw=(summand_red%100)%10; bbw=summand_blue/100; bsw=(summand_blue%100)/10; bgw=(summand_blue%100)%10; display(); if (key2=0) delay(); if (key2=0) if(flag=0) summand_red=summand_red+2; rbw=summand_red/100; rsw=(summand_red%100)/10; rgw=(summand_red%100)%
31、10; /bbw=summand_blue/100; /bsw=(summand_blue%100)/10; /bgw=(summand_blue%100)%10; display(); if(flag=1) summand_blue=summand_blue+2; /rbw=summand_red/100; /rsw=(summand_red%100)/10; /rgw=(summand_red%100)%10; bbw=summand_blue/100; bsw=(summand_blue%100)/10; bgw=(summand_blue%100)%10; display(); if (key3=0) delay(); if (key3=0) if(flag=0) summand_red=summand_red+3; rbw=summand_red/100; rsw=(summand_red%100)/10; rgw=(summand_red%100)%10; /bbw=summand_blue/100; /bsw=(summand_blue%100)/10; /bgw=(summand_blue%100)%10; display(); if(flag=1) summand_blue=summand_blue+3; /rbw=su
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 押金合同范本應(yīng)用指南
- 通信槽探施工合同
- 電力設(shè)施建設(shè)招投標(biāo)誠信承諾書
- 產(chǎn)業(yè)園環(huán)境衛(wèi)生管理協(xié)議
- 環(huán)保工程設(shè)備安全評估工程隊合同
- 環(huán)保工程建設(shè)項目合同樣本
- 市場代理權(quán)轉(zhuǎn)讓合同
- 垃圾處理灰工施工合同
- 商務(wù)租車服務(wù)合同
- 建筑裝飾電焊工程協(xié)議
- 小學(xué)六年級英語上冊《Unit 1 How can I get there》教案
- 完整版方法驗證報告模板最終
- 電力管道資料表格(共30頁)
- 大班科學(xué)活動教案《豆豆家族》含PPT課件
- 【精品試卷】部編人教版(統(tǒng)編)一年級上冊語文第一單元測試卷含答案
- 金屬有機(jī)化學(xué)ppt課件
- 銅包鋁線標(biāo)準(zhǔn)
- 數(shù)學(xué)說題稿(共4頁)
- 門球協(xié)會章程
- 應(yīng)急管理試題庫
- 《各類事故應(yīng)急處置卡》
評論
0/150
提交評論