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

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

?? install.a51

?? Keil uVision2
?? A51
?? 第 1 頁 / 共 2 頁
字號:
$TITLE ('Configuration for MONITOR-51   (C) 1987-2003 KEIL')
;***********************************************************************
;*                                                                     *
;* MONITOR 8051  Configuration                                         *
;* COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2003                          *
;*                                                                     *
;* written by:     RK  11.06.1987                                      *
;* updated by:     RK  23.10.1989                                      *
;* updated by:     HS  02.09.1991                                      *
;* updated by:     HS  11.04.1995                                      *
;* updated by:     HS  07.09.1997                                      *
;* updated by:     HS  14.03.2003  Flash download added                *
;*                                                                     *
;*                                                                     *
;***********************************************************************


NAME    CONFIG

$INCLUDE (CONFIG.INC)
#include <89c51rd2.H>

PUBLIC  INCHAR          ; CHARACTER INPUT-ROUTINE 
PUBLIC  OUTCHAR         ; CHARACTER OUTPUT-ROUTINE 
PUBLIC  INSTAT          ; INPUT STATUS OF SERIAL INTERFACE
PUBLIC  OUTSTAT         ; OUTPUT STATUS OF SERIAL INTERFACE
PUBLIC  CLR_TI          ; CLEAR SERIAL TRANSMIT INTERRUPT FLAG
PUBLIC  SET_TI          ; SET SERIAL TRANSMIT INTERRUPT FLAG
PUBLIC  CLR_RI          ; CLEAR SERIAL RECEIVE INTERRUPT FLAG
PUBLIC  CLR_SER_IE      ; CLEAR SERIAL INTERRUPT ENABLE FLAG
PUBLIC  SET_SER_IE      ; SET SERIAL INTERRUPT ENABLE FLAG
PUBLIC  SER_INT_ADR     ; ADDRESS OF SERIAL INTERRUPT VECTOR
PUBLIC  SER_INT_ADR_OFF ; ADDRESS OF SERIAL INTERRUPT VECTOR + INT_ADR_OFF
PUBLIC  BEFORE_GO       ; DO SOME THINGS BEFORE STARTING USER PROGRAM
PUBLIC  AFTER_GO        ; DO SOME THINGS AFTER TERMINATION OF USER PROGRAM
PUBLIC  DEF_PC_VAL      ; DEFAULT PC VALUE AFTER START UP
PUBLIC  WR_CODE         ; WRITE CODE BYTE
PUBLIC  PRE_PROG        ; Prepare for Flash programming
PUBLIC  LD_FPAGE        ; Load Flash Page
PUBLIC  POST_PROG       ; Finish Flash programming
PUBLIC  CODE_START_ADR  ; Monitor code start address
PUBLIC  FLASH_PAGESIZE  ; flash page size
PUBLIC  FLASH_MAXBYTES  ; max number of bytes to load in one flash page 
                        ; before programming (workaround for chip bug)
PUBLIC  XDATA_START_ADR ; start of xdata area used by Monitor-51
PUBLIC  EXECBUFF        ; Buffer for SFR access and single step
EXTRN   CODE (MON51)    ; START OF MONITOR-51
EXTRN   CODE (SER_ISR)  ; SERIAL INTERRUPT SERVICE ROUTINE


USING 0

INITSEG SEGMENT CODE AT CODE_START
                RSEG    INITSEG
CODE_START_ADR: LJMP    InitSerial
IF (CODE_START = 0)     ; generate interrupt relocation table only when 
                LJMP    INT_ADR_OFF + 0x03
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 0BH
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 13H
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 1BH
                NOP
                NOP
                NOP
                NOP
                NOP
IF ((SERIAL = 0) OR (SERIAL = 1))
                LJMP    INT_ADR_OFF + 23H
ELSE
                LJMP    SER_ISR
ENDIF
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 2BH
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 33H
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 3BH
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 43H
                NOP
                NOP
                NOP
                NOP
                NOP
                LJMP    INT_ADR_OFF + 4BH
ENDIF


INSTALLCODE     SEGMENT CODE
                RSEG INSTALLCODE


IF (SERIAL = 0)
;********************************************************************
;*  Using TIMER 1 to Generate Baud Rates                            *
;********************************************************************

InitSerial:
IF (BAUDRATE = 0)                       ; when baudrate=0 calculate timer reload value
                CLR     TR1             ; based on the received 0x11 character from uVision
                CLR     TF1
                CLR     A
                MOV     TL1,A
                MOV     TH1,A
                MOV     TMOD,#010H
L4:             JB      RXD,L4          ; wait for start bit (negative edge)
L6:             JNB     RXD,L6          ; wait for end of start bit (positive edge)
L7:             SETB    TR1             ; start timer
L8:             JNB     RXD,L10         ; wait until end of first bit
                JNB     TF1,L8          ; or timer overflow
L10:            JNB     RXD,L10         ; wait for bit 5 (high-bit)
L12:            JNB     RXD,L14         ; wait until end of bit 5
                JNB     TF1,L12         ; or timer overflow
L14:            JNB     RXD,L14         ; wait until stop bit
L15:            CLR     TR1
                JB      TF1,InitSerial
                MOV     R7,TL1
                MOV     R6,TH1

                MOV     A,R7
                ADD     A,#040H         ; add 64 for rounding
                MOV     R7,A
                CLR     A
                ADDC    A,R6
                MOV     R6,A

                MOV     A,R7            ; divide by 128
                RLC     A
                MOV     A,R6
                RLC     A
                MOV     R7,A
                CLR     C
                CLR     A
                SUBB    A,R7
                MOV     TH1,A
                CLR     A
                MOV     TL1,A
                MOV     TMOD,#00100000B ; C/T = 0, Mode = 2
                SETB    TR1             ; start timer
                ORL     PCON,#080H      ; set SMOD1 to double baudrate
                MOV     SCON,#01011010B ; Init Serial Interface

L16:            CLR     RI
                JNB     RI,$            ; wait for next character
                MOV     A,SBUF
                CJNE    A,#011H,L16     ; is it a 0x11?
ELSE
IF (CPU_X2 = 1)
DIVFACTOR       EQU     6*BAUDRATE*16
ELSE
DIVFACTOR       EQU     12*BAUDRATE*16
ENDIF
TH1REL          EQU     100H-((CPU_CLOCK+(DIVFACTOR/2))/DIVFACTOR)

                MOV     TMOD,#00100000B ;C/T = 0, Mode = 2
                MOV     TH1,#TH1REL
                ORL     PCON,#080H      ; set SMOD1 to double baudrate
                SETB    TR1             ; start timer
                MOV     SCON,#01011010B ; Init Serial Interface
ENDIF
                MOV     AUXR,#_AUXR     ; Configure T89C51RC2
                JMP     Mon51
ENDIF

IF (SERIAL = 1)
;********************************************************************
;*  Using TIMER 2 to Generate Baud Rates                            *
;********************************************************************

InitSerial:
IF (BAUDRATE = 0)                       ; when baudrate=0 calculate timer reload value
                CLR     A
                MOV     RCAP2H,A
                MOV     RCAP2L,A
                MOV     TL2,A
                MOV     TH2,A
                MOV     T2MOD,A
                MOV     T2CON,A
L4:             JB      RXD,L4
L6:             JNB     RXD,L6
L7:             SETB    TR2
L8:             JNB     RXD,L10
                JNB     TF2,L8
L10:            JNB     RXD,L10
L12:            JNB     RXD,L14
                JNB     TF2,L12
L14:            JNB     RXD,L14
L15:            CLR     TR2
                JB      TF2,InitSerial
                MOV     R7,TL2
                MOV     R6,TH2

                MOV     A,R6
                CLR     C
                RRC     A
                MOV     R4,A
                MOV     A,R7
                RRC     A
                ADD     A,R7
                MOV     R7,A
                MOV     A,R4
                ADDC    A,R6
                MOV     R6,A

                MOV     A,R7
                ADD     A,#010H
                MOV     R7,A
                CLR     A
                ADDC    A,R6
                MOV     R6,A

                MOV     A,R7
                MOV     R0,#05H
L22:            XCH     A,R6
                CLR     C
                RRC     A
                XCH     A,R6
                RRC     A
                DJNZ    R0,L22
                MOV     R7,A
                CLR     C
                CLR     A
                SUBB    A,R7
                MOV     RCAP2L,A
                MOV     TL2,A
                CLR     A
                SUBB    A,R6
                MOV     RCAP2H,A
                MOV     TH2,A

                MOV     T2CON,#034H
                MOV     SCON,#05AH
L16:            CLR     RI
                JNB     RI,$
                MOV     A,SBUF
                CJNE    A,#011H,L16
ELSE                                    ; fixed baudrate
IF (CPU_X2 = 1)
DIVFACTOR       EQU     BAUDRATE*16
ELSE
DIVFACTOR       EQU     BAUDRATE*32

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲va国产天堂va久久en| 91精品国产手机| 国产精品久久久久7777按摩| 国产成人av影院| 国产精品美女www爽爽爽| 粉嫩高潮美女一区二区三区| 国产精品麻豆网站| 91久久国产综合久久| 丝袜亚洲另类欧美综合| 精品日韩在线观看| 成人精品高清在线| 一区二区三区中文字幕电影| 欧美片网站yy| 国产精品资源在线| 一区二区三区不卡视频在线观看 | 日韩高清欧美激情| 精品美女在线播放| 色综合久久天天| 三级影片在线观看欧美日韩一区二区| 在线电影国产精品| 国产成人精品1024| 日韩一区精品视频| 亚洲国产精品99久久久久久久久| 91女人视频在线观看| 日韩精品一区第一页| 国产精品青草综合久久久久99| 国产欧美日韩视频一区二区| 色伊人久久综合中文字幕| 日韩高清不卡在线| 亚洲人成亚洲人成在线观看图片| 91麻豆精品国产91久久久久| 成人一区二区三区在线观看| 亚洲午夜电影在线观看| 国产女同性恋一区二区| 欧美丰满少妇xxxxx高潮对白| 国产老妇另类xxxxx| 亚洲午夜激情网站| 亚洲国产成人私人影院tom| 欧美日韩国产免费一区二区| 国产成人亚洲精品青草天美| 午夜精品视频一区| 中文字幕亚洲电影| 精品国产91久久久久久久妲己| 日本乱人伦aⅴ精品| 国产99久久久国产精品免费看| 亚洲成人动漫在线免费观看| 国产精品成人午夜| 久久蜜桃香蕉精品一区二区三区| 欧美在线观看一二区| 国产91在线|亚洲| 毛片av一区二区| 亚洲国产三级在线| 亚洲色图一区二区| 国产亚洲欧美在线| 精品国精品国产| 制服丝袜激情欧洲亚洲| 国产精品色一区二区三区| 欧美一区午夜精品| 91精品欧美福利在线观看| 欧美影视一区二区三区| av色综合久久天堂av综合| 国产在线精品一区在线观看麻豆| 亚洲成av人综合在线观看| 一区二区三区免费网站| 亚洲欧美激情插| 亚洲三级理论片| 亚洲欧美韩国综合色| 18欧美乱大交hd1984| 中文字幕中文在线不卡住| 国产欧美精品一区二区色综合 | 国产精品无遮挡| 国产欧美日韩视频在线观看| 国产丝袜欧美中文另类| 日韩午夜av电影| 日韩久久免费av| 欧美zozozo| 国产日产欧美一区| 国产人成一区二区三区影院| 国产亚洲精品福利| 国产精品卡一卡二| 亚洲欧美一区二区三区久本道91| 亚洲欧洲av另类| 亚洲一区二区黄色| 天天av天天翘天天综合网| 日本欧美久久久久免费播放网| 三级在线观看一区二区| 久久国内精品自在自线400部| 日本成人在线一区| 韩国成人精品a∨在线观看| 狠狠色丁香九九婷婷综合五月| 国产精品一区二区三区99| 丁香啪啪综合成人亚洲小说| 99r国产精品| 欧美日韩国产成人在线免费| 日韩一区二区精品葵司在线| 精品国产91九色蝌蚪| 国产精品区一区二区三区| 一区二区三区四区不卡视频| 日韩 欧美一区二区三区| 国产一区二区91| 色综合久久久网| 日韩三级在线观看| 国产肉丝袜一区二区| 亚洲裸体xxx| 色综合久久88色综合天天免费| 色哟哟一区二区| 欧美一级免费大片| 欧美经典一区二区| 五月天一区二区| 国产精品一区三区| 欧美在线免费播放| 精品国产亚洲一区二区三区在线观看| 国产欧美精品国产国产专区| 一区二区三区在线视频观看58| 日韩电影在线观看一区| 国产99一区视频免费 | 欧美色欧美亚洲另类二区| 精品国产一区二区三区久久久蜜月| 国产欧美1区2区3区| 日韩精品国产欧美| 成人av在线资源网站| 91精品国产欧美一区二区成人 | 精品一区二区三区久久久| 97超碰欧美中文字幕| 欧美电视剧免费观看| 亚洲精品成人悠悠色影视| 久久成人精品无人区| 精品视频资源站| **性色生活片久久毛片| 老司机精品视频一区二区三区| 不卡的av网站| 国产亚洲精品精华液| 免费精品视频最新在线| 日本乱人伦一区| 国产精品激情偷乱一区二区∴| 蜜臀va亚洲va欧美va天堂| 91国偷自产一区二区三区观看 | 91日韩精品一区| 国产亚洲美州欧州综合国| 免费在线观看精品| 欧美日韩日日夜夜| 亚洲欧美日韩国产一区二区三区 | 国产一区在线不卡| 欧美日高清视频| 亚洲女同ⅹxx女同tv| 国产精品一区二区在线观看网站| 91精品国产色综合久久ai换脸| 一卡二卡欧美日韩| 99久久99久久精品免费观看 | 国产精品卡一卡二| 国产传媒欧美日韩成人| 欧美电影免费观看高清完整版在线 | 麻豆成人综合网| 欧美日韩一二区| 成人小视频在线| 久久久久国产精品免费免费搜索| 奇米777欧美一区二区| 在线不卡的av| 香蕉成人啪国产精品视频综合网| 在线亚洲一区二区| 亚洲黄色性网站| 欧美性色aⅴ视频一区日韩精品| 亚洲色图欧美在线| 一本大道综合伊人精品热热| 亚洲欧洲日韩av| 91香蕉视频在线| 樱花草国产18久久久久| 色婷婷精品大视频在线蜜桃视频| 欧美国产精品v| 成人av在线电影| 中文字幕在线观看一区| eeuss鲁片一区二区三区在线观看| 欧美激情在线一区二区三区| 粉嫩av一区二区三区粉嫩| 国产精品进线69影院| 99这里都是精品| 一区二区三区四区不卡在线| 欧美色涩在线第一页| 亚洲一区二区视频| 欧美综合一区二区| 日本亚洲免费观看| 久久久99免费| 99久久伊人网影院| 亚洲最快最全在线视频| 欧美群妇大交群中文字幕| 免费在线观看不卡| 国产亚洲成年网址在线观看| 成人在线综合网| 一级女性全黄久久生活片免费| 欧美日韩中文字幕精品| 蜜臀久久久99精品久久久久久| 亚洲精品一区二区三区精华液| 国产高清精品网站| 亚洲综合视频在线观看| 欧美一级专区免费大片| 国产成人在线看| 图片区小说区区亚洲影院| www激情久久| 欧美亚洲愉拍一区二区| 精品无人区卡一卡二卡三乱码免费卡 |