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

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

?? keil c51-

?? 單片機開發軟件Keil
??
字號:
//
//  ISD51  In-System Debugger for 8051 based microcontrollers
//  Copyright KEIL ELEKTRONIK GmbH and Keil Software, Inc. 2000 - 2003
//  Version 2.02
//------------------------------------------------------------------------------
//  ISD51.H:  This header file allows the configuration of the ISD51
//            In-System Monitor
//
//  Copy this file to your project folder and add the copy to your uVision2
//  project.  You can customize several parameters of the ISD51 In-System 
//  Monitor within this configuration file.
//
//------------------------------------------------------------------------------
//  ISD51 Memory Space
//  ==================
//
//  The following define specifies the size of the on-chip DATA/IDATA RAM.
//  Most 8051 devices have 256 bytes IDATA RAM.  Some devices offer just
//  128 Bytes.  ISD51 uses 1 Byte in this IDATA.  
//
//  If you are using software breakpoints, each breakpoint requires another 
//  2 Bytes IDATA space.  For example, if two breakpoints are defined, ISD51
//  uses the IDATA locations 0xFB .. 0xFF.

#define RAMSIZE    0x100   // default is 0x100 => 256 bytes IDATA RAM

//  The option "Verify if application in ROM is identical to current project"
//  that is enabled in uVision2 under "Project - Options for Target - Debug -
//  Use ISD51 - Settings" compares ROM content against the current project.
//  CMP_START and CMP_END specify address ranges for comparing memory contents.
//  Outside the specified range CODE memory mismatches are ignored.
#define CMP_START 0x0     // default is 0
#define CMP_END   0x1FFF  // default is 64KB (0xFFFF)

//------------------------------------------------------------------------------
//
//  ISD51 UART Interface
//  ====================
//
//  ISD51 uses a standard on-chip 8051 UART as communication interface.  The
//  following assembler macros allow you to change the UART interface used by 
//  ISD51.

#ifndef __C51__

/* 8051 SFR Register addresses for on-chip 8051 UART */
sfr  SCON = 0x98;
sfr  SBUF = 0x99;
sfr  IE   = 0xA8;

/*  SCON  Bits */
sbit TI   = SCON^1;
sbit RI   = SCON^0;

/* IE Bits */
sbit ES   = IE^4;
sbit EA   = IE^7;

CLR_TI   MACRO             ; Clear Transmit Interrupt Flag 
         CLR     TI        ; No CPU register may be changed here
         ENDM

SET_TI   MACRO             ; Set   Transmit Interrupt Flag
         SETB    TI        ; No CPU register may be changed here
         ENDM

JNB_TI   MACRO   label     ; Jump if Transmit Interrupt Flag not set
         JNB     TI,label  ; PSW may be modified without saving it
         ENDM

WR_SBUF  MACRO             ; Write ACC to SBUF
         MOV     SBUF,A    ; ACC and PSW may be modified without saving it
         ENDM

CLR_RI   MACRO             ; Clear Receiver Interrupt Flag 
         CLR     RI        ; No CPU register may be changed here
         ENDM

JB_RI    MACRO   label     ; Jump if Receiver Interrupt Flag set
         JB      RI,label  ; ACC and PSW may be modified without saving it
         ENDM

JNB_RI   MACRO   label     ; Jump if Receiver Interrupt Flag not set
         JNB     RI,label  ; ACC and PSW may be modified without saving it
         ENDM

RD_SBUF  MACRO             ; Return SBUF in ACC
         MOV    A,SBUF     ; ACC and PSW may be modified without saving it
         ENDM

CLR_ES   MACRO             ; Disable Serial Interrupt
         CLR    ES         ; No CPU register may be changed here
         ENDM

SET_ES   MACRO             ; Enable Serial Interrupt
         SETB   ES         ; No CPU register may be changed here
         ENDM

JNB_ES   MACRO   label     ; Jump if Receiver Interrupt Flag not set
         JNB     ES,label  ; ACC and PSW may be modified without saving it
         ENDM

SAVE_ES  MACRO             ; Save Serial Interrupt enable bit to Carry
         MOV    C,ES       ; ACC and PSW may be modified without saving it
         ENDM

RESTO_ES MACRO             ; Restore Serial Interrupt enable bit from Carry
         MOV    ES,C       ; ACC and PSW may be modified without saving it
         ENDM

SINTRVEC EQU    0x23       ; Interrupt Vector Address of UART interrupt

#endif
//------------------------------------------------------------------------------
//
//  ISD51 CODE MEMORY ACCESS FUNCTIONS FOR HARDWARE BREAKPOINTS 
//  ===========================================================
//
//  For devices that support IAP (In-Application Programming) ISD51 may modify
//  the code memory to insert CALL instructions for flash breakpoints.  The IAP
//  functions are configured below:
//
//  The macro CWRITE defines a flash erase and programming function that writes
//  new content to a Flash CODE ROM block.  The new content data are store in
//  on-chip IDATA RAM at address ?ISD?BUF.  The Flash CODE ROM block address is
//  passed in the register DPTR.

// The Philips LPC900 has a flash page size of 64 bytes
#define CBLK_SZ   64       // Flash block size for CWRITE, valid are:
                           // 1, 2, 4, 8, 16, 32, 64, and 128 Bytes. 
//  Note: CBLK_SZ  0 disables hardware breakpoints.  IDS51 will use 
//  software breakpoints instead.

#ifndef __C51__

// define a macro that erases and writes new content to a Flash memory block
// R0 contains LOW address, ACC contains HIGH address of Flash memory block
// Macro returns error code in ACC.  ACC=0 indicates no errors

CWRITE  MACRO              ; write new content data to Flash CODE ROM block
                           ; Flash block address in DPTR
        MOV   R5,AR0       ; address LSB
        MOV   R4,A         ; address MSB
        MOV   R7,#00H      ; erase page (64 bytes) NOT 70H like in docu
        MOV   A,#4         ; erase function
        CALL  0FF00H       ; Erase block addressed by DPTR
        MOV   A,#1         ; Erase Error
        JC    CW_Error
        MOV   R7,#CBLK     ; IDATA RAM start address of new content data	
        MOV   R3,#CBLK_SZ  ; block size of Flash CODE ROM block
        CLR   A            ; program page function
        CALL  0FF00H       ; program new content data to Flash ROM data
        MOV   A,#2         ; Program Error
        JC    CW_Error
        CLR   A
CW_Error:
        ENDM

#endif


//------------------------------------------------------------------------------
//
//  ISD51 specific Serial User I/O
//  ==============================
//
//  ISD51 offers serial user input/output functions that work via the serial
//  interface that is used for debugging.  The serial user I/O functions are
//  configured below.

//  enable/disable ISD51 specific putchar function for user output.
#define  ISD_PUTCHAR  1    //  set to 0 to disable the putchar function.
                           //  set to 1 to enable the putchar function.

//  enable/disable ISD51 specific _getkey & _iskey function for user input.
#define  ISD_GETKEY   1    //  set to 0 to disable the _getkey/_iskey function.
                           //  set to 1 to enable the _getkey/_iskey function.

//------------------------------------------------------------------------------
//
//  ISD51 Functions
//  ===============
//
//  The following C Macro define the IDS51 functions
#ifdef __C51__

#include <absacc.h>

extern void __isd_init (void);   // ISD51 core init function

#define ISDinit()                                                      \
  if (ES == 0)  {        /* Is ISD51 UART already initialized?     */  \
    __isd_init ();       /* Init ISD51 core & enable ISD interrupt */  \
  }

#define ISDwait()                                                      \
  while (1)  {                                                         \
    if (RI)  {           /* wait until Debugger sends 0xA5 */          \
      if (SBUF == 0xA5)  break;                                        \    
      RI = 0;                                                          \
    }                                                                  \
  }                                                                    \
  __isd_init ();         /* Init ISD51 core & enable ISD interrupt */

#define ISDcheck()                                                     \
  if (ES == 0)  {        /* Is ISD51 UART already initialized?     */  \
    if (RI)  {           /* wait until Debugger sends 0xA5 */          \
      if (SBUF != 0xA5) RI = 0;                                        \
      else              __isd_init (); /* Init core & ISD interrupt */ \
    }                                                                  \
  }                                                                    \

#define ISDdisable()     /* Disable ISD Interrupt                  */  \
    ES = 0;

#define ISDenable()      /* Enable  ISD Interrupt                  */  \
    ES = 1;

#define ISDbreak()       /* hard-code program stop (breakpoint) */     \
    TI = 1;              /* Enter ISD Interrupt function */            \
    _nop_ ();

#if ISD_GETKEY            /* user input function                */          
extern bit _iskey (void); /* check if input character available */
#endif

#endif

//------------------------------------------------------------------------------
//
//  ISD51 HARDWARE BREAKREGISTER SUPPORT
//  ====================================
//
//  ISD51 supports Hardware Breakpoints of some specific 8051 devices.
//  Currently the TI MSC device is supported.  If you are running ISD51 on
//  this device you can uncomment the following define statement if you are
//  NOT using flash breakpoints (see CBLK_SZ).
//
// #define  TI_MSC1210_BREAKS

//------------------------------------------------------------------------------
//
//  ISD51 SPECIAL CONFIGURATIONS
//  ============================
//
// ISD51 needs to be configured for specific device features.  Uncomment one 
// of the following define statements if you are using one of these devices.
//
// TI MSC121x version with EAI bit handling
// #define TI_MSC1210
//
// Philips LPC900 version with two additional SFR write functions
#define PHILIPS_LPC900

//-----------------------------------------------------------------------------
//---------------- !!! End of User Configuration Part    !!! ------------------
//-----------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产不卡在线一区| 日本一区二区成人在线| 99re成人在线| 高清不卡在线观看| 成人动漫精品一区二区| a级高清视频欧美日韩| av午夜精品一区二区三区| 成人做爰69片免费看网站| 不卡视频一二三四| 色综合久久天天| 欧美精品久久久久久久多人混战| 欧美高清dvd| 精品国产免费一区二区三区四区| 欧美精品一区二区久久久| 久久只精品国产| 成人欧美一区二区三区1314| 亚洲三级在线看| 婷婷成人激情在线网| 久久99国产精品尤物| caoporm超碰国产精品| 欧美色爱综合网| 精品免费日韩av| 专区另类欧美日韩| 男女男精品网站| 99精品一区二区| 欧美一区二区二区| 国产精品超碰97尤物18| 午夜一区二区三区在线观看| 国产毛片一区二区| 色猫猫国产区一区二在线视频| 欧美一区二区视频免费观看| 国产清纯在线一区二区www| 一区二区三区免费| 国产成人av电影| 欧美一区二区在线观看| 国产精品久久久久久久久搜平片 | 精品一区二区三区久久久| 国产成人精品三级| 51久久夜色精品国产麻豆| 欧美激情一区二区| 日韩中文字幕区一区有砖一区 | 亚洲综合久久av| 国产精品自在欧美一区| 欧美午夜电影网| 国产日韩欧美一区二区三区综合| 亚洲成av人片在线| www.爱久久.com| 久久美女高清视频| 免费成人在线观看| 欧美性大战xxxxx久久久| 国产精品国产三级国产普通话蜜臀 | 成人一道本在线| 精品国产免费人成在线观看| 一区av在线播放| av在线不卡免费看| 久久久久国产精品免费免费搜索| 天天综合色天天综合色h| 91香蕉视频污在线| 国产女主播视频一区二区| 精品一区二区三区蜜桃| 欧美一区二区福利视频| 日韩在线卡一卡二| 欧美色大人视频| 亚洲国产一二三| 色爱区综合激月婷婷| 国产精品理论片| 9l国产精品久久久久麻豆| 国产网红主播福利一区二区| 国产一区啦啦啦在线观看| 日韩欧美电影一区| 久久国产精品99久久人人澡| 日韩免费观看高清完整版 | 成人爽a毛片一区二区免费| 精品久久久网站| 国内偷窥港台综合视频在线播放| 欧美一区二区三区影视| 三级不卡在线观看| 日韩午夜在线观看视频| 毛片av一区二区三区| 精品国产一区二区三区不卡| 久热成人在线视频| 久久久99精品免费观看| 国产成人精品www牛牛影视| 国产精品福利一区| 在线观看一区二区精品视频| 亚洲国产综合视频在线观看| 欧美日韩国产成人在线免费| 日韩有码一区二区三区| 欧美大片拔萝卜| 国产99精品视频| 中文字幕在线一区| 色吊一区二区三区| 日本不卡一二三区黄网| 久久精品欧美日韩精品| 99久久777色| 午夜精品在线看| 国产欧美一区二区精品婷婷 | av色综合久久天堂av综合| 一区二区久久久久| 欧美本精品男人aⅴ天堂| 国产91对白在线观看九色| 一区二区三区中文字幕精品精品| 欧美日韩黄视频| 国产精品夜夜嗨| 亚洲综合另类小说| 337p粉嫩大胆噜噜噜噜噜91av| 丁香五精品蜜臀久久久久99网站 | 久久er精品视频| 国产精品久久毛片a| 欧美日韩国产小视频| 国产成人综合在线| 日韩影院在线观看| 亚洲三级电影网站| 日韩精品一区二区三区swag | 免费三级欧美电影| 欧美激情综合网| 欧美精品 日韩| gogo大胆日本视频一区| 精品一区二区久久| 亚洲成人动漫在线观看| 国产欧美一区二区三区在线看蜜臀| 欧美日韩一区二区三区免费看| 国内精品国产成人| 日韩av电影一区| 亚洲中国最大av网站| 中文字幕av资源一区| 日韩一区二区三免费高清| 欧美做爰猛烈大尺度电影无法无天| 国产成人午夜精品5599| 免费人成精品欧美精品| 一区二区高清免费观看影视大全| 国产人久久人人人人爽| 欧美成人vps| 69久久夜色精品国产69蝌蚪网| 欧美中文字幕一区二区三区亚洲| 成人开心网精品视频| 国产伦理精品不卡| 久久精品国产精品亚洲综合| 日本欧美久久久久免费播放网| 亚洲欧美电影一区二区| 欧美经典三级视频一区二区三区| 欧美大胆一级视频| 日韩美女天天操| 欧美成人午夜电影| 精品国产乱码久久| 欧美变态凌虐bdsm| 久久久久久综合| 国产亚洲精品免费| 欧美激情一区在线| 中文字幕高清不卡| 国产精品久久二区二区| 国产精品丝袜黑色高跟| 国产精品每日更新| 国产精品免费av| 亚洲素人一区二区| 亚洲国产精品久久久男人的天堂| 一区二区理论电影在线观看| 一区二区三区中文字幕| 亚洲综合一区二区三区| 亚洲第一av色| 免费在线观看不卡| 国内欧美视频一区二区| 国产激情一区二区三区四区| 国产69精品一区二区亚洲孕妇| 99热99精品| 欧美日韩国产bt| 2017欧美狠狠色| 亚洲三级电影网站| 日韩不卡一二三区| 国产一区二区美女诱惑| 99热这里都是精品| 欧美福利一区二区| 国产欧美一区视频| 亚洲欧美另类久久久精品2019| 亚洲综合小说图片| 激情深爱一区二区| 99久久精品国产一区二区三区| 欧美在线不卡一区| 欧美精品一区二区高清在线观看| 欧美激情一区三区| 日韩高清不卡一区| 成人小视频在线| 欧美一级在线观看| 国产精品久久久久久久久免费丝袜| 亚洲最大的成人av| 国产麻豆精品视频| 欧美日韩一区二区电影| 日本一区二区视频在线| 五月婷婷综合在线| 成人一区二区在线观看| 在线观看91av| 亚洲精品乱码久久久久久| 日韩高清不卡一区| 91久久国产最好的精华液| 精品国产电影一区二区| 亚洲国产综合人成综合网站| 国产一区二区福利视频| 欧美午夜精品久久久久久超碰 | 视频一区二区不卡| 94-欧美-setu|