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,可是...