日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]設(shè)計目的利用所學(xué)單片機(jī)的理論知識進(jìn)行軟硬件整體設(shè)計,鍛煉學(xué)生理論聯(lián)系實際、綜合應(yīng)用的能力。設(shè)計內(nèi)容:設(shè)計基于單片機(jī)的6人搶答器,并編程實現(xiàn)其功能.設(shè)備和器材:單片機(jī)最小開發(fā)系統(tǒng),中斷控制器8259A一片(自選

設(shè)計目的
利用所學(xué)單片機(jī)的理論知識進(jìn)行軟硬件整體設(shè)計,鍛煉學(xué)生理論聯(lián)系實際、綜合應(yīng)用的能力。

設(shè)計內(nèi)容:
設(shè)計基于單片機(jī)的6人搶答器,并編程實現(xiàn)其功能.

設(shè)備和器材:
單片機(jī)最小開發(fā)系統(tǒng),中斷控制器8259A一片(自選),并行接口8255A一片或8155(用單片機(jī)開發(fā)板),發(fā)光二極管12只(紅,黃各6只),LED數(shù)碼管若干只,按鈕或按鍵10個,其他器件任選。

設(shè)計要求:
1、設(shè)計硬件接口電路,將這些外設(shè)構(gòu)成一個簡單的單片機(jī)應(yīng)用系統(tǒng),畫出接口的連接圖。
2、 編寫下列控制程序
① 1—6號手中先按下按鈕者,LED數(shù)碼管顯示其選手號碼(后按下無效)。
② 由裁判掌握,若回答正確,該選手對應(yīng)黃燈亮,否則紅燈亮。
③ 回答正確時,記分牌加10分,不正確減10分(初始分100分)

Code:

ORG 0000H
LJMP PREPARE

ORG 0030H

TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共陰極數(shù)碼管顯示代碼表 0~9

/*------------------------------初始化模塊-------------------------*/
PREPARE: MOV SP,#70h

LEDSEL0 BIT P2.0;LED選擇位
LEDSEL1 BIT P2.1
LEDSEL2 BIT P2.2
LEDSEL3 BIT P2.3

JUDGMENT0 BIT P2.4;裁判裁決錯誤
JUDGMENT1 BIT P2.5;裁判裁決正確
SELECT0 BIT P2.6;位選信號0
SELECT1 BIT P2.7;位選信號1
RST BIT P3.6

;記錄各選手成績

MOV 31H,#01H ;一號選手百位分?jǐn)?shù)
MOV 32H,#00H;一號選手十位分?jǐn)?shù)
MOV 33H,#00H;一號選手個位分?jǐn)?shù)

MOV 34H,#01H;二號選手分?jǐn)?shù)
MOV 35H,#00H
MOV 36H,#00H
;三號選手分?jǐn)?shù)
MOV 37H,#01H
MOV 38H,#00H
MOV 39H,#00H
;四號選手分?jǐn)?shù)
MOV 3AH,#01H
MOV 3BH,#00H
MOV 3CH,#00H
;五號選手分?jǐn)?shù)
MOV 3DH,#01H
MOV 3EH,#00H
MOV 3FH,#00H
;六號選手分?jǐn)?shù)
MOV 40H,#01H
MOV 41H,#00H
MOV 42H,#00H

MOV 60H,#00H;記分牌搶答選手編號
MOV 61H,#00H;記分牌百位數(shù)據(jù)
MOV 62H,#00H;記分牌十位數(shù)據(jù)
MOV 63H,#00H;記分牌個位數(shù)據(jù)


BEGIN: MOV P2,#0FFH;P2,P3 口置高電平,準(zhǔn)備接受裁判信號、搶答信號
MOV P3,#0FFH
MOV P1,#3FH
MOV R4,#00H
MOV R0,#00H
MOV R1,#00H

CLR C
SETB SELECT0
SETB SELECT1
/*-----------------------------檢測搶答模塊-------------------------*/
CHECK:JNB RST,BEGIN
MOV A,P3;接收P3口的搶答信號,按下時為0
CPL A
JZ CHECK

FIND:RRC A;有搶答信號時逐次移位判斷是哪一為搶答者
INC R4
JNCFIND

MOV 60H,R4
MOV A,R4;獲取搶答選手的計分地址
LCALL DECODE

DEC A
MOV B,#03H
MUL AB
ADD A,#31H
MOV R0,A;搶答選手百位分?jǐn)?shù)地址,存R0
ADD A,#01H
MOV R1,A ;搶答選手十位分?jǐn)?shù)地址,存R1

/*------------------------------裁判裁決和計分模塊-------------------------*/

JUDGE:JNB JUDGMENT1,RIGHT;裁判裁定回答正確,送低電平回答正確
JNB JUDGMENT0,FALSE
JNB RST,BEGIN;復(fù)位鍵按下,重新初始化
SJMP JUDGE

FALSE:MOV A,#06H;裁定錯誤則亮對應(yīng)選手紅燈,送低電平亮
ADD A,R4
DECA
ORL A,#0F0H
MOVP2,A

MOV A,@R1
JZ BORROW
DECA
MOV @R1,A
MOV 61H,@R0
MOV 62H,@R1
SJMP SHOW
;十位向百位借位處理
BORROW:
MOV A,@R0
JZ ZERO
MOV @R1,#09H
MOV A,@R0
DEC A
MOV @R0,A
MOV 61H,@R0
MOV 62H,@R1
SJMP SHOW

ZERO: MOV @R0,#00H;分?jǐn)?shù)扣為0,不再扣分
MOV @R1,#00H
MOV 61H,@R0
MOV 62H,@R1
SJMP SHOW

RIGHT:MOV A,#00H;裁定正確則亮對應(yīng)選手黃燈,送低電平亮
ADD A,R4
DECA
ORL A,#0F0H
MOVP2,A

MOV A,@R1
CJNE A,#09H,NOTEQUAL
;十位向百位進(jìn)位處理
CARRY:MOV @R1,#00H
MOV A,@R0
INC A
MOV @R0,A
MOV 61H,@R0
MOV 62H,@R1
SJMP SHOW

NOTEQUAL: INC A
MOV @R1,A
MOV 61H,@R0
MOV 62H,@R1
SJMP SHOW
/*------------------------------動態(tài)顯示和延時模塊-------------------------*/

SHOW: JNB RST,TOBEGIN;復(fù)位鍵按下,重新初始化

MOV A,60H;顯示處理選手編號
SETB SELECT0;共陰極數(shù)碼管送低電平有效
SETB SELECT1

LCALL DECODE
MOV A,63H;顯示處理選手得分的個位值

CLR SELECT0
SETB SELECT1

LCALL DECODE
MOV A,62H;顯示處理選手得分的十位值

SETB SELECT0
CLR SELECT1

LCALL DECODE
MOV A,61H;顯示處理選手得分的百位值

CLR SELECT0
CLR SELECT1
LCALL DECODE

SJMP SHOW

DECODE:MOV R5,A;保護(hù)A中值
MOV DPTR,#TABLE ;查表譯碼送段碼給P1口顯示
MOVC A,@A+DPTR
MOV P1,A
MOV A,R5
;掃描延時
D1:MOV R6,#2
D2:MOV R7,#250
DJNZ R7,$
DJNZ R6,D2

RET
TOBEGIN: LJMP BEGIN
END


Proteus 仿真:


代碼下載 :六路智能搶答器(代碼+proteus仿真+課設(shè)報告)下載


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉