日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
按鍵控制流水燈程序
按鍵控制流水燈程序
 更新時(shí)間:2008-7-26 19:43:19  點(diǎn)擊數(shù):3
【字體: 字體顏色
;**************************************************
; 平凡單片機(jī)工作室
;作者:周堅(jiān)
;功能描述:
;P3.2:開始,按此鍵則燈開始流動(由上而下)
;P3.3:停止,按此鍵則停止流動,所有燈為暗
;P3.4:上,按此鍵則燈由上向下流動
;P3.5:下,按此鍵則燈由下向上流動
;本例可用TOP51-2005/TOPAV-2008單片機(jī)開發(fā)平臺驗(yàn)證
;**************************************************

UpDown EQU 00H ;上下行標(biāo)志
StartEnd EQU 01H ;起動及停止標(biāo)志
LAMPCODE EQU 21H ;存放流動的數(shù)據(jù)代碼
ORG 0000H
AJMP MAIN
ORG 30H
MAIN:
MOV SP,#5FH
MOV P1,#0FFH
CLR UpDown ;啟動時(shí)處于向上的狀態(tài)
CLR StartEnd ;啟動時(shí)處于停止?fàn)顟B(tài)
MOV LAMPCODE,#0FEH ;單燈流動的代碼
LOOP:
ACALL KEY ;調(diào)用鍵盤程序
JNB F0,LNEXT ;如果無鍵按下,則繼續(xù)
ACALL KEYPROC ;否則調(diào)用鍵盤處理程序
LNEXT:
ACALL LAMP ;調(diào)用燈顯示程序
AJMP LOOP ;反復(fù)循環(huán),主程序到此結(jié)束
;---------------------------------------
DELAY:
MOV R7,#10
D1: MOV R6,#100
DJNZ R6,$
DJNZ R7,D1
RET
;---------延時(shí)程序,鍵盤處理中調(diào)用
KEYPROC:
MOV A,B ;從B寄存器中獲取鍵值
JB ACC.2,KeyStart ;分析鍵的代碼,某位被按下,則該位為1
JB ACC.3,KeyOver
JB ACC.4,KeyUp
JB ACC.5,KeyDown
AJMP KEY_RET
KeyStart:
SETB StartEnd ;第一個鍵按下后的處理
AJMP KEY_RET
KeyOver:
CLR StartEnd ;第二個鍵按下后的處理
AJMP KEY_RET
KeyUp:
SETB UpDown ;第三個鍵按下后的處理
AJMP KEY_RET
KeyDown:
CLR UpDown ;第四個鍵按下后的處理
KEY_RET:
RET

KEY:
CLR F0 ;清F0,表示無鍵按下。
ORL P3,#00111100B ;將P3口的接有鍵的四位置1
MOV A,P3 ;取P3的值
ORL A,#11000011B ;將其余4位置1
CPL A ;取反
JZ K_RET ;如果為0則一定無鍵按下
ACALL DELAY ;否則延時(shí)去鍵抖
ORL P3,#00111100B
MOV A,P3
ORL A,#11000011B
CPL A
JZ K_RET
MOV B,A ;確實(shí)有鍵按下,將鍵值存入B中
SETB F0 ;設(shè)置有鍵按下的標(biāo)志
K_RET:
ORL P3,#00111100B ;此處循環(huán)等待鍵的釋放
MOV A,P3
ORL A,#11000011B
CPL A
JZ K_RET1 ;直到讀取的數(shù)據(jù)取反后為0說明鍵釋放了,才從鍵盤處理程序中返回
AJMP K_RET
K_RET1:
RET
;-----------------------------------
D500MS: ;流水燈的延遲時(shí)間
PUSH PSW
SETB RS0
MOV R7,#5 ;如果用實(shí)驗(yàn)仿真板,該值可根據(jù)你的機(jī)器運(yùn)行情況更改,在1-255之間
D51:
MOV R6,#250
D52:
MOV R5,#200
D53:
DJNZ R5,D53
DJNZ R6,D52
DJNZ R7,D51
POP PSW
RET
;-----------------------------------
LAMP:
JB StartEnd,LampStart ;如果StartEnd=1,則啟動
MOV P1,#0FFH
AJMP LAMPRET ;否則關(guān)閉所有顯示,返回
LampStart:
JB UpDown,LAMPUP ;如果UpDown=1,則向上流動
MOV A,LAMPCODE
RL A ;向上移動實(shí)際就是左移位
MOV LAMPCODE,A
MOV P1,A
LCALL D500MS
AJMP LAMPRET
LAMPUP:
MOV A,LAMPCODE
RR A ;向下流動實(shí)際就是右移
MOV LAMPCODE,A
MOV P1,A
LCALL D500MS
LAMPRET:
RET
END
  • 上一篇: 8*8點(diǎn)陣LED顯示原理介紹
  • 下一篇: 電子密碼鎖匯編程序
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1