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

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

?? pro1.asm

?? PC機與單片機的串口通信程序
?? ASM
字號:
	ORG    0000H
	LJMP   START
        ORG    0003H
        LJMP   INT0
        ORG    000BH
        LJMP   T0IN
	ORG    0023H
	LJMP   SEVER

	ORG    0050H
START:  LCALL  CHEAKREADY         ;判斷計算機是否就緒
        MOV    64H, #00H
        MOV    65H, #00H
AG:
        DADD     DATA 40H	  ;數據暫存地址
	ADDR     DATA 6DH	  ;AD通道數
	DN       DATA 6EH	  ;數據濾波長度
	DATALEN1 DATA 73H
	DATALEN2 DATA 74H	  ;存貯數據長度,2為高位
        DATASTR1 DATA 00H
        DATASTR2 DATA 00H
        MOV    SP, #30H
        SETB   ES
        SETB   EX0
        SETB   EA

	MOV    60H, DATALEN1
	MOV    61H, DATALEN2
        MOV    62H, #DATASTR1
        MOV    63H, #DATASTR2     ;數據存貯器地址
        MOV    A,   DATALEN1
        MOV    B,   ADDR
        MUL    AB
        MOV    7DH, A             ;通道1~4數據占的總長度,7D為低字節
        MOV    7EH, B

        MOV    A,   DATALEN2
        MOV    B,   ADDR
        MUL    AB
        ADD    A, 7EH
        MOV    7EH, A             ;7E為高字節


AGAIN:	LCALL  INDATA	          ;執行采集程序
	LCALL  COMPUTE            ;執行數據濾波程序,并轉存數據
        LCALL  WAIT100mS          ;延時100mS再采
	MOV    R0, 60H
	MOV    R1, 61H
	CJNE   R0, #00H, NEXT1
	DEC    R1
NEXT1:	DEC    R0
	MOV    60H, R0
	MOV    61H, R1
	CJNE   R0, #00H, AGAIN
	CJNE   R1, #00H, AGAIN    ;未完再采
        LCALL  TRANSFER
        SETB   ES                 ;開中斷
STAY:   MOV    A, 79H
        CJNE   A, #0F0H, AG       ;若79H不為F0則繼續
        CLR    ET0                ;否則關T0和外部中斷
        CLR    EX0
        SJMP   STAY               ;等待串口中斷



        ORG    0200H
INDATA:
        MOV    DPTR, #0B000H      ;選口地址,并指向通道0
        MOV    R0, #DADD          ;數據暫存地址
        MOV    R7, DN             ;數據濾波次數
NEXTT:  MOV    R6, ADDR           ;通道數
        MOV    A,  #00H
READ:   MOVX   @DPTR, A           ;啟動轉換
        LCALL  DELAY              ;等待轉換結束
        MOVX   A, @DPTR           ;讀取數據             
        MOV    @R0, A             ;存放數據
        INC    R0                 ;存放數據地址加1
        INC    DPTR               ;選擇下一個通道
        DJNZ   R6, READ           ;通道未完則繼續
        MOV    DPTR, #0B000H      ;完則返回指向通道0
        DJNZ   R7, NEXTT          ;采集次數未達到數據則繼續
        RET


        ORG    0400H
COMPUTE:                          ;軟件濾波,R3為AD后數據地址
                                  ;R6為通道數,R7為濾波次數
                                  ;通道0計算后放0000H
                                  ;通道1計算后放2000H
                                  ;通道2計算后放4000H
        MOV    DPL, 62H
        MOV    DPH, 63H           ;選擇數據存儲器
        MOV    R3, #DADD
        MOV    R7, DN
        MOV    R6, ADDR           ;通道數
NEXTC:  MOV    A, R3              ;待處理數據地址
        MOV    R0, A              ;計算時的被加數地址
        MOV    R1, #20H           ;計算后數據暫存地址
        LCALL  SUB                ;前兩個數相加,程序運行后R0+2*ADDR,R1+1
        LCALL  SUB                ;后兩個數相加
        MOV    A, 20H
        MOV    R0, #21H
        ADD    A, @R0             ;再相加
        RRC    A                  ;除2
        MOVX   @DPTR, A           ;送至DPTR
        INC    R3                 ;轉至下一通道數據
        MOV    A, DPL
        ADD    A, DATALEN1
        MOV    DPL, A
        MOV    A, DPH
        ADD    A, DATALEN2        ;指向下一通道存放數據地址
        MOV    DPH, A
        DJNZ   R6, NEXTC          ;通道未完則繼續
        INC    DPTR               ;存儲地址加1

	CLR	C
	MOV    A, DPL
        SUBB   A, 7DH             ;DPL減00,DPTR變為原來值
        MOV    DPL, A
        MOV    A, DPH
        SUBB   A, 7EH             ;DPH減60,變為00
        MOV    DPH, A

        MOV    62H, DPL
        MOV    63H, DPH           ;DPTR轉存62H,63H
        RET
SUB:                              ;除2子程序

        MOV    A, R0              ;被加數
        MOV    7FH, @R0
        ADD    A, ADDR
        MOV    R0, A              ;加數
        MOV    A, @R0
        ADD    A, 7FH
        RRC    A                  ;除2
        MOV    @R1, A             ;存至R1
        MOV    A, R0
        ADD    A, ADDR            ;指向下兩個數的首位
        MOV    R0, A
        INC    R1                 ;存儲地址加1
        RET


       ORG    0600H

CHEAKREADY:                       ;檢察是否與計算機正常通訊

	ORL    TMOD, #20H         ;設定T1為工作方式2
        MOV    TH1, #0FAH
        MOV    TL1, #0FAH         ;定時器初值,f=6MHZ,N=FC若f=11.0592,N=FA
        SETB   TR1                ;啟動T1工作
        MOV    PCON, #80H         ;置SMOD=1
        MOV    SCON, #70H        ;串口方式1,允許接收
        SETB   EA                 ;開CPU中斷
        CLR    ES
SHAKE:  MOV    SBUF, #0FCH        ;主動與計算機建立握手
        JNB    TI, $
        CLR    TI
        MOV    A,#100D
WWW:    JB     RI, RR2            ;接收計算機返回的數據
        DEC    A
        JZ     SHAKE
        SJMP   WWW
RR2:    CLR    RI
        MOV    A, SBUF            ;判斷是否握手成功
        CJNE   A, #0FCH, SHAKE    ;不成功則重發

        SETB   ES                 ;開串口中斷
HERE:	MOV    A,79H              ;79H為允許狀態,
                                  ;單片機可隨時查看
                                  ;以確定是否停止
        CJNE   A, #0FEH, HERE     ;若不是FE,則中止工作,等待中斷

        RET


        ORG    0800H
TRANSFER:

        MOV    DPL, #DATASTR1
        MOV    DPH, #DATASTR2     ;欲發送數據首地址
        MOV    75H, ADDR          ;通道數
        MOV    A, DATALEN2
        CJNE   A, 67H, GOON
GOON:   JC     LIGHT              ;若數據長度高字節<67H,則數字通道滿
        MOV    A, 66H             ;若二者相等則比較低字節
        CJNE   A, DATALEN1, GOON2
GOON2:  JC     NOLIGHT
LIGHT:  INC    75H                ;AD通道+光電通道
        MOV    64H, #00H
        MOV    65H, #00H
NOLight:CLR    ES                 ;關串口中斷,以順序方式發送
        MOV    SBUF, #0FDH        ;發送數據標示
        JNB    TI, $
        CLR    TI
        MOV    SBUF, 75H
        JNB    TI, $
        CLR    TI

        MOV    R3, #00H           ;R3為當前發送數據的通道數
NEXTTT: MOV    SBUF, R3
        JNB    TI, $
        CLR    TI
        MOV    R0, DATALEN1       ;塊長低字節送R0
        MOV    SBUF, R0           ;發送塊長低字節
        JNB    TI, $
        CLR    TI
        MOV    R1, DATALEN2       ;塊長高字節送R1
        MOV    SBUF, R1           ;發送塊長高字節        
        JNB    TI, $
        CLR    TI                 ;清TI
        MOV    76H, #00H          ;校驗和清0

SDATA:  MOVX   A, @DPTR           ;發送數據字節送A
        MOV    SBUF, A
        ADD    A, 76H             ;校驗和
        MOV    76H, A
        CJNE   R0, #00H, CC1      ;塊長(R1,R0)減1
        DEC    R1
CC1:    DEC    R0
        INC    DPTR
        JNB    TI, $
        CLR    TI
        CJNE   R1, #00H, SDATA
        CJNE   R0, #00H, SDATA    ;數據未完,則繼續
        MOV    SBUF, 76H          ;數據已完,則發和校驗
        JNB    TI, $
        CLR    TI
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        JNZ    NEXTTT
        INC    R3
        MOV    A, R3
        CJNE   A, 75H, NEXTTT
        SETB   ES
        RET

	ORG    0A00H
SEVER:                           ;中斷服務程序
        PUSH   A
        PUSH   PSW
        CLR    ES                ;關中斷
        JNB    RI, RBACK         ;若是發送中斷,則返回
        CLR    RI
        MOV    A, SBUF
        CJNE   A, #0FFH, TT1     ;若為參數設置則TT1
        JNB    RI, $             ;若為就緒標志,則接收
        CLR    RI
        MOV    A, SBUF
        MOV    79H, A            ;就緒標志存79H
        SJMP   RBACK
TT1:    CJNE   A,#0FCH, TT2      ;若為握手信息,則返回FC
        MOV    SBUF, A
        JNB    TI, $
        CLR    TI
        SJMP   RBACK
TT2:    CJNE   A, #0FDH, RBACK   ;若不為設置參數標志,則返回
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        MOV    73H, A            ;數據長度低字節放73H
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        MOV    74H, A            ;數據長度高字節放74H
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        MOV    6EH, A            ;濾波長度放6EH
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        MOV    6FH, A            ;延時長度放6FH
        JNB    RI, $
        CLR    RI
        MOV    A, SBUF
        MOV    6DH, A            ;通道數放6DH
        DEC    6DH

RBACK:
        SETB   ES
        POP    PSW
        POP    A
        RETI

	ORG    0C00H
WAIT100MS:                       ;延時100ms子程序
        PUSH  PSW
        SETB  PSW.3
        MOV   R7, 6FH            ;延時長度由6FH送R7
DL:     MOV   R6, #250D          ;設晶振為6MHz,機器周期為2us
        DJNZ  R6, $              ;250x4=1000us=1ms
        DJNZ  R7, DL             ;1x100=100ms
        POP   PSW
        RET
DELAY:
        PUSH   PSW
        SETB   PSW.4
        MOV    R7, #40D
        DJNZ   R7, $              ;40x4=160us
        POP    PSW
        RET

        ORG     0D00H
INT0:
        PUSH    PSW
        PUSH    DPH
        PUSH    DPL
        PUSH    A
        MOV     A, 65H                  ;檢查數據指針是否為0
        JNZ     INIT                    ;
        MOV     A, 64H
        JNZ     INIT
        MOV     A, 7DH                  ;若為0則重置數據首地址
        ADD     A, #DATASTR1
        MOV     64H, A
        MOV     A, 7EH
        ADDC    A, #DATASTR2
        MOV     65H, A                  ;放置通道5數據的首地址
        MOV     67H, #00H
        MOV     66H, #00H

INIT:   ORL     TMOD,#01H               ;選定時器0,方式1
        MOV     A, TH0
        JZ      INT0BACK
        MOV     A, TL0
        JZ      INT0BACK

GETDATA:MOV     DPL, 64H
        MOV     DPH, 65H
        MOV     A, TL0
        MOVX    @DPTR, A
        INC     DPTR
        MOV     A, TH0
        MOVX    @DPTR, A
        INC     DPTR
        MOV     TH0, #00H
        MOV     TL0, #00H
        MOV     65H, DPH
        MOV     64H, DPL
        MOV     DPL, 66H
        MOV     DPH, 67H
        INC     DPTR
        INC     DPTR
        MOV     66H, DPL
        MOV     67H, DPH
INT0BACK:                               ;中斷返回
        SETB    ET0
        SETB    TR0
        POP     A
        POP     DPL
        POP     DPH
        POP     PSW
        RETI


T0IN:                                   ;定時器0中斷程序
        CLR     TF0
        ORL     TMOD, #01H
        MOV     TH0, #00H
        MOV     TL0, #00H
        SETB    TR0
        RETI

END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人综合网| 国产成人免费高清| 中文字幕日韩欧美一区二区三区| 久久色.com| 亚洲精品一区二区三区蜜桃下载| 欧美一区二区视频网站| 日韩你懂的电影在线观看| 欧美一区二区三区在线| 日韩欧美视频在线| 26uuu另类欧美| 欧美激情自拍偷拍| 亚洲日本丝袜连裤袜办公室| 亚洲色图视频网| 亚洲午夜精品久久久久久久久| 亚洲r级在线视频| 精品一区二区三区在线视频| 国产ts人妖一区二区| 91小视频免费观看| 欧美日韩精品欧美日韩精品一| 欧美一激情一区二区三区| 日韩欧美精品在线| 国产精品久久久久久久久免费相片| 亚洲人成小说网站色在线 | 91在线丨porny丨国产| 99久精品国产| 在线播放一区二区三区| 精品女同一区二区| 亚洲视频中文字幕| 青草av.久久免费一区| 国产成人免费av在线| 91黄色免费网站| 欧美电视剧在线看免费| 亚洲视频一二区| 日本vs亚洲vs韩国一区三区 | 91视频在线看| 欧美成人免费网站| 亚洲精品视频一区| 老司机精品视频在线| 99re在线精品| 精品国产免费视频| 亚洲国产精品一区二区www在线 | 亚洲人成7777| 水野朝阳av一区二区三区| 日本一区二区电影| 亚洲伦在线观看| 欧美综合久久久| 玉足女爽爽91| 成人永久aaa| 亚洲色图另类专区| 精品视频在线免费看| 日韩国产精品久久| 久久女同精品一区二区| 国产成人av电影免费在线观看| 国产精品三级在线观看| 97精品久久久午夜一区二区三区| 一区二区国产视频| 欧美色综合久久| 麻豆精品在线播放| 中文字幕av一区二区三区免费看| av高清久久久| 日韩中文欧美在线| 国产亚洲精品aa| 在线观看日韩精品| 精品一区二区三区av| 国产精品成人网| 制服丝袜成人动漫| 成人性生交大片免费看视频在线 | 伊人开心综合网| 日韩免费性生活视频播放| 99视频国产精品| 日韩精品1区2区3区| 国产精品久久网站| 777精品伊人久久久久大香线蕉| 国产传媒欧美日韩成人| 亚洲成在人线在线播放| 国产欧美一区二区在线观看| 欧美视频一区在线| 国产精品一级黄| 偷偷要91色婷婷| 国产精品免费视频网站| 欧美一级一区二区| 91香蕉视频黄| 国产成人精品网址| 日本视频中文字幕一区二区三区| 国产精品国产三级国产普通话99| 欧美一区二区日韩| 在线这里只有精品| 成人一级视频在线观看| 奇米精品一区二区三区四区 | 欧美国产综合一区二区| 宅男在线国产精品| 欧美视频在线一区| 波多野结衣一区二区三区| 国产一区二区三区国产| 午夜精品福利久久久| 亚洲激情av在线| 国产精品久久久久婷婷| 久久免费午夜影院| 精品久久五月天| 7777精品伊人久久久大香线蕉的 | 欧美色网站导航| 91热门视频在线观看| 国产福利91精品| 国产专区综合网| 裸体健美xxxx欧美裸体表演| 午夜欧美大尺度福利影院在线看| 亚洲男人天堂av| 中文字幕一区二区三区蜜月| 国产精品国产三级国产a| 中文字幕av一区二区三区免费看 | 青青草97国产精品免费观看无弹窗版| 亚洲精品第一国产综合野| 国产精品女同一区二区三区| 国产欧美日本一区二区三区| 久久精品人人做| 久久久久九九视频| 久久久久国产免费免费| 国产欧美一区二区三区网站| 欧美激情一区二区三区蜜桃视频| 久久久精品蜜桃| 欧美国产成人在线| 中文字幕一区二区5566日韩| 亚洲天堂2014| 亚洲综合男人的天堂| 亚洲一区在线电影| 日本aⅴ亚洲精品中文乱码| 美女免费视频一区| 国产精品99久久久| 成人av网站免费| 欧美影院午夜播放| 在线播放中文一区| 久久蜜桃一区二区| 亚洲欧洲精品一区二区三区不卡| 亚洲乱码日产精品bd| 亚洲一区在线电影| 开心九九激情九九欧美日韩精美视频电影 | 激情文学综合丁香| 国产成人av电影在线观看| 不卡视频在线观看| 欧美日韩亚洲丝袜制服| 91精品国产免费| 亚洲国产高清在线观看视频| 亚洲一区视频在线观看视频| 久久福利视频一区二区| 成人深夜在线观看| 欧洲国内综合视频| 精品久久久久久久久久久久包黑料| 国产日韩欧美精品在线| 亚洲欧美日韩国产另类专区| 美腿丝袜亚洲色图| 99视频有精品| 日韩欧美自拍偷拍| 中文字幕亚洲一区二区va在线| 日韩高清不卡在线| 成人动漫中文字幕| 欧美一级片在线| 国产精品乱码一区二三区小蝌蚪| 天天爽夜夜爽夜夜爽精品视频| 国产成a人无v码亚洲福利| 欧美视频你懂的| 国产精品久久久久久久久免费樱桃 | 亚洲一区二区四区蜜桃| 国精产品一区一区三区mba桃花| 97se亚洲国产综合在线| 亚洲精品一区二区三区99| 亚洲综合在线观看视频| 国产乱国产乱300精品| 欧美高清视频www夜色资源网| 国产精品素人视频| 狠狠色狠狠色综合系列| 欧美性猛交xxxx乱大交退制版 | 亚洲1区2区3区视频| 成人小视频免费观看| 精品国产成人在线影院| 亚洲成人资源在线| 一本一道久久a久久精品| 国产亲近乱来精品视频 | 久久色视频免费观看| 午夜精品福利一区二区三区av| 91在线视频观看| 国产精品天天摸av网| 国产精品亚洲专一区二区三区| 欧美一级免费观看| 亚洲国产精品嫩草影院| 99精品欧美一区二区三区小说| 精品国产乱子伦一区| 免费日本视频一区| 91精品国产欧美一区二区成人 | 亚洲乱码中文字幕| 99久久精品国产网站| 中文av一区特黄| 国产成人自拍高清视频在线免费播放| 日韩欧美国产一二三区| 五月激情综合网| 欧美精品在线观看播放| 日日夜夜免费精品| 欧美一区二区视频在线观看2020| 日韩精彩视频在线观看| 91麻豆精品国产91久久久久| 日韩精品国产欧美|