微控制器八人搶答器程式設計

時間 2021-08-30 10:27:48

1樓:做而論道

;------------------------------------------

kai bit p3.7 ;開始

;------------------------------------------

org 0000h

jmp start

start:

;----------------------;下面是清零(復位)

mov p0, #0c0h ;顯示0

mov p2, #255 ;熄燈

mov r4, #0

;----------------------;下面等待按下"開始"鍵

kaishi:

jb kai, kaishi ;沒有按"開始",就迴圈

call delay ;延時

jb kai, kaishi ;消抖

jnb kai, $ ;等待釋放

;----------------------

mov p0, #0ch ;顯示p

wait: ;等待搶答

mov a, p1

cpl a

jz wait ;繼續等待

;----------------------

xs: ;查詢選手按鍵的位置

cpl a

mov p2, a

jnb acc.0, j0

jnb acc.1, j1

jnb acc.2, j2

jnb acc.3, j3

jnb acc.4, j4

jnb acc.5, j5

jnb acc.6, j6

; jmp j7

j7: inc r4

j6: inc r4

j5: inc r4

j4: inc r4

j3: inc r4

j2: inc r4

j1: inc r4

j0: inc r4

mov a, r4

mov dptr, #d_tab

movc a, @a + dptr

mov p0, a

;----------------------;下面等待按下復位鍵

w_fw:

jb kai, w_fw ;沒有按,則轉

call delay ;延時

jb kai, w_fw ;消抖

jnb kai, $ ;等待釋放

jmp start

;------------------------

d_tab:

db 0c0h,0f9h,0a4h,0b0h, 99h ;共陽極0-9

db 92h, 82h,0f8h, 80h, 90h,0bfh ;-

;------------------------------------------

delay: ;延時約10ms

mov r6, #20

djnz r7, $

djnz r6, $ - 2

ret;****************************************==

end;以上程式已經調好。

2樓:微控制器技術宅

貌似是之前幫做過這類似的,需要可以q我

微控制器C語言程式設計題,微控制器C語言程式設計題 20

爬行的山羊 這是兩個題啊。哈哈好做,第一個有c語言的冒泡法排序,第二個用中斷,讀,輸出就可以 include define led0 0 define led1 1 define led2 2 define ledport p2 sbit sw0 p1 0 sbit sw1 p1 1 sbit sw...

求微控制器彙編程式設計

做而論道 下面的是正確的.清零 mov r0,50h clr a loop mov r0,a inc r0 cjne r0 5ah,loop 寫入01h mov r0,50h mov a,01h loop mov r0,a inc r0 cjne r0 5ah,loop 都是僅用五條指令即可完成 咯...

微控制器,sbit什麼意思,微控制器C程式設計sbit指令是什麼意思

sbit是c51擴充套件的變數型別,是定義特殊功能暫存器的位變數。典型應用是 sbit p0 1 p0 1 即定義p0 1為p0口的第2位,以便進行位操作。在c語言裡,如果直接寫p1.1,c編譯器並不能識別,而且p1.1也不是一個合法的c語言變數名,所以得給它另起一個名字,這裡起的名為p1 1,可是...