亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gaichefa.asm

?? 單片機實現的無線控制小車
?? ASM
字號:
;                 *************************************
;                 *                                   *
;                 *       遙控編碼控制器              *
;                 *                                   *
;                 *          采用89c51             *
;                 *************************************
;
;  P1.0口按紐為前進,P1.1口按紐為后退,P1.2口按紐為左轉彎,P1.3口按紐為右轉彎,
; P1.4口按紐為自動駕駛,P3.5為編碼輸出
;
;*************************************
;*                                   *
;*      主程序和中斷程序入口         *
;*                                   *
;*************************************
KEYWORD EQU 23H



ORG     0000H    		 ;程序執行開始地址
LJMP    START    ;跳至START執行
ORG     0003H    		 ;外中斷0中斷入口地址
RETI             ;中斷返回(不開中斷)
ORG     000BH    		 ;定時器T0中斷入口地址
RETI             ;中斷返回(不開中斷)
ORG     0013H    		 ;外中斷1中斷入口地址
RETI             ;中斷返回(不開中斷)
ORG     001BH    		 ;定時器T1中斷入口地址
RETI             ;中斷返回(不開中斷)
ORG     0023H    		 ;串行口中斷入口地址
RETI             ;中斷返回(不開中斷)
ORG     002BH    		 ;定時器T2中斷入口地址
RETI    		 	 ;中斷返回(不開中斷)
;
;*************************************
;*                                   *
;*       初始化程序中的各變量        *
;*                                   *
;*************************************
CLEARMEMIO:     CLR	A   		 	;清A
		DEC	A   		 	;A為#0FFH
		MOV     P1,A   		; P1口置1
                MOV     P3,A   		; P3口置1
                MOV     IE,#00H     ;關所有中斷
                RET   		 		;子程序返回
;
;
;
;*************************************
;*                                   *
;*	    主  程   序                  *
;*                                   *
;*************************************
START:           CALL LED
                 LCALL   CLEARMEMIO      ;調用初始化
; 主體程序      
               
MAIN:           LCALL   KEYWORK         ;調用查鍵子程序
		LJMP	MAIN        		;轉MAIN循環
		NOP						;PC值出錯處理
		NOP
		NOP
		LJMP	START        	;轉START重新啟動
;
;**************************
;*                        *
;*	鍵盤工作子程序        *
;**************************
; 4*4行列掃描查鍵子程序
KEYWORK:     MOV    P1,#0FFH     	; 置P1口為輸入狀態
             CLR    P1.0       		;掃描第一行(第一行為0)
             MOV    A,P1       		;讀入P1口值
             ANL    A,#0F0H       	;低四位為0
             CJNE   A,#0F0H,KEYCON  ;高四位不為全1(有鍵按下)轉KEYCOON
             SETB   P1.0       		; 掃描第二行(第二行為0)
             CLR    P1.1       		;
             MOV    A,P1       		; 讀入P1口值
             ANL    A,#0F0H       	; 低四位為0
             CJNE   A,#0F0H,KEYCON  ; 高四位不為全1(有鍵按下)轉KEYCOON
             SETB   P1.1       		; 掃描第三行(第三行為0)
             CLR    P1.2       		;
             MOV    A,P1       		; 讀入P1口值
             ANL    A,#0F0H       	; 低四位為0
             CJNE   A,#0F0H,KEYCON   ; 高四位不為全1(有鍵按下)轉KEYCOON
             SETB   P1.2       		; 掃描第四行(第四行為0)
             CLR    P1.3       		;
             MOV    A,P1       		; 讀入P1口值
             ANL    A,#0F0H       	; 低四位為0
             CJNE   A,#0F0H,KEYCON   ; 高四位不為全1(有鍵按下)轉KEYCOON
             SETB   P1.3       		;結束行掃描
             RET       				;子程序返回
KEYCON:      LCALL  DL10MS          ;消抖處理
             MOV    A,P1       		;再讀入P1口值
             ANL    A,#0F0H       	; 低四位為0
             CJNE   A,#0F0H,KEYCHE   ; 高四位不為全1,確有鍵按下,轉KEYCHE
KEYOUT:      RET       				;干擾,子程序返回
KEYCHE:      MOV    A,P1       		;讀P1口值
             MOV    KEYWORD,A        ;放入23H暫存
CJLOOP:         	;調顯示子程序
             MOV    A,P1       		;讀P1口值
             ANL    A,#0F0H       	;低四位為0
             CJNE   A,#0F0H,CJLOOP   ;高四位為全1(鍵還按著),轉CJLOOP等待釋放
             MOV    R7,#00H       	;鍵釋放,置R7初值為#00H(查表次數)
             MOV    DPTR,#KEYTAB     ;取鍵值表首址
CHEKEYLOOP:  MOV    A,R7       		;查表次數入A
             MOVC    A,@A+DPTR       ;查表
             XRL    A,KEYWORD       	;查表值與P1口讀入值比較
             JZ     KEYOK       		;為0(相等)轉KEYOK
             INC    R7       			;不等,查表次數加1
             CJNE   R7,#10H,CHEKEYLOOP   ;查表次數不超過16次轉CHEKEYLOOP再查
             RET       					;16次到,退出
;
KEYOK:       MOV    A,R7       		;查表次數入A(即鍵號值)
             MOV    B,A       		;放入B
             RL	    A       			;左移
	     ADD    A,B       		;相加(鍵號乘3處理JMP 3字節指令)
	     MOV    DPTR,#KEYFUNTAB	;取鍵功能散轉表首址
	     JMP    @A+DPTR       	;查表
KEYFUNTAB:   LJMP   KEYFUN00       	; 鍵功能散轉表。跳至0號鍵功能程序
	     LJMP   KEYFUN01       	; 跳至01號鍵功能程序
             LJMP   KEYFUN02       	; 跳至02號鍵功能程序
	     LJMP   KEYFUN03
             LJMP   KEYFUN04
	     LJMP   KEYFUN05
             LJMP   KEYFUN06
	     LJMP   KEYFUN07
             LJMP   KEYFUN08
	     LJMP   KEYFUN09
             LJMP   KEYFUN10
	     LJMP   KEYFUN11
             LJMP   KEYFUN12
	     LJMP   KEYFUN13
             LJMP   KEYFUN14
	     LJMP   KEYFUN15       	; 跳至15號鍵功能程序
             RET       				;散轉出錯返回
;
;鍵號對應P1口數值表(同時按下兩鍵為無效操作)
KEYTAB:      DB     0EEH,0DEH,0BEH,7EH,0EDH,0DDH,0BDH,7DH
             DB    0EBH,0DBH,0BBH,7BH,0E7H,0D7H,0B7H,77H,0FFH,0FFH
;
;
KEYFUN00:       CLR     P2.0
                call    DL10MS;CALL    DELAY
		SETB    P2.0
                MOV     A,#02H     ;發2個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN01:       CLR     P2.1
                call    DL10MS;CALL    DELAY
		SETB    P2.1
                MOV     A,#03H     ;發3個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN02:       CLR     P2.2
                call    DL10MS;CALL    DELAY
		SETB    P2.2
                MOV     A,#04H     ;發4個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN03:       CLR     P2.3
                call   DL10MS;CALL    DELAY
		SETB    P2.3
                MOV     A,#05H     ;發5個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN04:       CLR     P2.4
                call   DL10MS;CALL    DELAY
		SETB    P2.4
                MOV     A,#06H     ;發6個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN05:       CLR     P2.5 
                call   DL10MS;CALL    DELAY
		SETB    P2.5  
                MOV     A,#07H     ;發7個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN06:       CLR     P2.6
                call   DL10MS;CALL    DELAY
		SETB    P2.6
                MOV     A,#08H     ;發8個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN07:       MOV     A,#09H     ;發9個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
;
KEYFUN08:       MOV     A,#0AH     ;發10個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN09:       MOV     A,#0BH     ;發11個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN10:       MOV     A,#0CH     ;發12個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN11:       MOV     A,#0DH     ;發13個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN12:       MOV     A,#0EH     ;發14個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN13:       MOV     A,#0FH     ;發15個脈沖
                LJMP    REMOTE     ;轉發送程序
                RET
;
KEYFUN14:       MOV     A,#10H 
                LJMP    REMOTE
		RET
KEYFUN15:       MOV     A,#11H
                LJMP    REMOTE
		RET
               

;
;
;*************************************
;*                                   *
;*         編 碼 發 射 程 序         *
;*                                   *
;*************************************
;
REMOTE:         MOV     R1,A      ;?????A
                LJMP    OUT3      ;???????
OUT:            MOV     R0,#55H   ;1MS?????
OUT1:           CLR     P3.5      ;??????
                NOP      		 ;????(????21??)
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                DJNZ    R0,OUT1   ;??????,?OUT1??
                MOV     R0,#55H   ;1MS?????
OUT2:           SETB     P3.5     ;??????
                NOP      		 ;????(????21??)
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                NOP
                DJNZ    R0,OUT2     ;??????,?OUT2??
                DJNZ    R1,OUT      ;???????OUT???
                LCALL   DL10MS      ;??????10??
                RET          		;??
OUT3:           MOV     R0,#0FFH     ;3MS?????
                LJMP    OUT1        ;?OUT1?????
LED:                     ;程序指示燈
 MOV R4,#0Ah
L0: CPL P2.7
mov  r5, #0ffh
L1: CALL DELAY
djnz r5,L1

DJNZ R4,L0
SETB P2.7
RET
;*************************************
;*                                   *
;*      延時 255 X 2 = 512 us       *
;*                                   *
;*************************************
DELAY:          MOV     R2,#0FFH
DELAY1:         DJNZ    R2,DELAY1
		RET
;
;*************************************
;*                                   *
;*           延時10ms程序           *
;*          (消按鍵抖動用)         *
;*************************************
DL10MS:         MOV     R3,#14H
DL10MS1:        LCALL   DELAY
                DJNZ    R3,DL10MS1
		RET
DL500MS:        MOV     R4,#32H
DL500MS1:       LCALL   DL10MS
                DJNZ    R4,DL500MS1
                RET
;
;
		END     			 ;程序結束

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩视频一区二区三区| 久久精品国产99| 国产精品美女久久久久av爽李琼 | 在线不卡一区二区| 色吧成人激情小说| 在线区一区二视频| 在线免费观看日本欧美| 91猫先生在线| 色偷偷88欧美精品久久久| 不卡的av网站| 91色porny蝌蚪| 99re这里只有精品视频首页| 91视频在线看| 91久久精品一区二区三区| 在线视频欧美精品| 欧美日韩高清不卡| 欧美一区二区三区视频免费播放 | 久久久天堂av| 国产女人aaa级久久久级| 亚洲国产精品99久久久久久久久| 国产欧美日韩不卡| 中文字幕一区二区不卡| 亚洲欧美另类综合偷拍| 亚洲电影一级黄| 免费观看成人鲁鲁鲁鲁鲁视频| 青青青爽久久午夜综合久久午夜| 蜜臀av一区二区三区| 经典三级一区二区| 成人一区在线观看| 91免费版在线| 8v天堂国产在线一区二区| www国产亚洲精品久久麻豆| 国产日韩欧美亚洲| 亚洲免费观看高清完整版在线观看熊| 一区二区三区四区五区视频在线观看| 亚洲国产毛片aaaaa无费看| 琪琪一区二区三区| 粉嫩aⅴ一区二区三区四区五区| a4yy欧美一区二区三区| 欧美午夜电影在线播放| 欧美一区二区大片| 国产精品免费久久| 丝袜a∨在线一区二区三区不卡| 国产一区二区0| 91久久精品国产91性色tv| 7878成人国产在线观看| 欧美激情中文字幕一区二区| 夜夜操天天操亚洲| 国产一区激情在线| 在线观看国产91| 久久综合av免费| 亚洲蜜臀av乱码久久精品蜜桃| 日本特黄久久久高潮| 成a人片国产精品| 777xxx欧美| 中文字幕一区日韩精品欧美| 日韩成人免费电影| av电影一区二区| 欧美变态tickling挠脚心| 日韩毛片一二三区| 久久精品久久99精品久久| 97se亚洲国产综合自在线观| 精品国产乱码久久久久久闺蜜 | 亚洲欧美在线高清| 蜜臀av一区二区| 欧亚一区二区三区| 日本一区二区电影| 久久激情五月激情| 欧美三区免费完整视频在线观看| 久久麻豆一区二区| 日本视频免费一区| 在线观看免费一区| 国产精品丝袜一区| 久久国产精品99精品国产 | 欧洲一区二区三区在线| 国产三级精品视频| 裸体歌舞表演一区二区| 欧美午夜在线观看| 亚洲区小说区图片区qvod| 国产成人三级在线观看| 日韩免费看网站| 日韩精品久久久久久| 久久久不卡网国产精品一区| 五月激情综合网| 91久久线看在观草草青青| 欧美国产一区在线| 国内精品国产成人国产三级粉色| 717成人午夜免费福利电影| 亚洲影院免费观看| 色综合久久99| 中文字幕人成不卡一区| 国产成人在线色| 精品日韩99亚洲| 久久精品国产精品亚洲综合| 91精品国产丝袜白色高跟鞋| 亚洲成人精品一区| 欧美日韩国产精品自在自线| 一区二区三区波多野结衣在线观看| av亚洲产国偷v产偷v自拍| 国产精品免费观看视频| 成人一区在线看| 国产精品麻豆一区二区| 成人免费电影视频| 国产精品视频线看| 成人avav影音| 亚洲日本va午夜在线电影| 国产成人免费视频一区| 国产欧美一区二区三区在线看蜜臀| 国产一区二区不卡| 中文字幕乱码久久午夜不卡| 国产**成人网毛片九色| 亚洲国产成人午夜在线一区| 不卡免费追剧大全电视剧网站| 国产精品久久三区| 99re8在线精品视频免费播放| 国产精品蜜臀在线观看| 99久久99久久免费精品蜜臀| 中文字幕在线视频一区| 91在线丨porny丨国产| 亚洲人成网站在线| 欧美亚洲国产怡红院影院| 亚洲成人资源在线| 69堂成人精品免费视频| 激情亚洲综合在线| 国产精品久久久久婷婷| 91福利小视频| 日韩二区在线观看| 久久夜色精品国产欧美乱极品| 成人中文字幕电影| 亚洲视频图片小说| 欧美精品三级日韩久久| 国产呦萝稀缺另类资源| 中文字幕一区二区三中文字幕| 97久久久精品综合88久久| 亚洲一区二区黄色| 日韩欧美国产不卡| 成人精品一区二区三区中文字幕| 亚洲精品中文在线影院| 7777女厕盗摄久久久| 国产ts人妖一区二区| 亚洲免费av观看| 日韩精品一区二区三区蜜臀 | 91捆绑美女网站| 亚洲成人av福利| 久久这里只有精品6| 色综合久久精品| 久久精品国产免费| 亚洲欧洲三级电影| 日韩一二三区视频| 不卡在线视频中文字幕| 日本亚洲三级在线| 中文字幕中文字幕一区| 欧美精品在线观看播放| 久久久精品黄色| 欧美午夜理伦三级在线观看| 国产一区美女在线| 亚洲成av人在线观看| 国产三级精品三级| 欧美剧情片在线观看| 国产不卡在线播放| 日韩电影在线一区二区| 中文字幕综合网| 精品国产乱码久久久久久老虎| 91福利精品视频| 国产大片一区二区| 日韩国产成人精品| 中文字幕亚洲在| 久久综合精品国产一区二区三区| 欧美在线观看一区| 国产.精品.日韩.另类.中文.在线.播放 | 欧美一区二区黄| 91美女福利视频| 国产一区二区91| 日产国产欧美视频一区精品| 亚洲欧洲精品天堂一级| 久久人人超碰精品| 欧美人xxxx| 在线影院国内精品| 成人av在线电影| 国产一区二区三区日韩| 日韩成人伦理电影在线观看| 一区二区在线免费| 亚洲欧洲av色图| 久久久www成人免费无遮挡大片| 91麻豆精品国产自产在线| 在线观看亚洲一区| 成人av在线播放网址| 国产91对白在线观看九色| 久久激情五月激情| 日本欧美加勒比视频| 亚洲二区在线视频| 亚洲欧美电影院| 国产精品久久99| 欧美高清一级片在线观看| 久久久久久久综合日本| 精品久久久久久无| 日韩三级精品电影久久久| 3d动漫精品啪啪1区2区免费| 欧美在线观看你懂的| 在线观看91视频|