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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? isd51.h

?? ISD_調(diào)試范例,nRF9E5的C語(yǔ)言編程.
?? H
字號(hào):
//
//  ISD51  In-System Debugger for 8051 based microcontrollers
//  Copyright KEIL ELEKTRONIK GmbH and Keil Software, Inc. 2000 - 2003
//  Version 2.03a
//------------------------------------------------------------------------------
//  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   0x0FFF  // 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 CBLK.  The Flash CODE ROM block address is
//  passed in the register A:R0 (A is MSB, R0 is LSB).

#define CBLK_SZ   1        // 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
		MOV	DPL, R0
		MOV  DPH, A
		MOV  A, CBLK
		MOVX @DPTR,A
		CLR  A       
   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    !!! ------------------
//-----------------------------------------------------------------------------

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美日韩一级片在线观看| 亚洲欧洲在线观看av| 国内精品伊人久久久久av影院| 久久精品一区蜜桃臀影院| 91国偷自产一区二区三区成为亚洲经典| 久久久久久久久岛国免费| 99久久99久久久精品齐齐| 亚洲成人高清在线| 69堂亚洲精品首页| 国产东北露脸精品视频| 一区二区三区视频在线看| wwwwxxxxx欧美| 欧美天堂亚洲电影院在线播放| 日本色综合中文字幕| 亚洲三级在线观看| 欧美精品一区二区高清在线观看 | 日韩一级高清毛片| 成人av电影在线观看| 青椒成人免费视频| 亚洲精品日韩一| 精品乱人伦小说| 欧美日韩黄色一区二区| 成人精品视频.| 亚洲图片欧美一区| 国产精品欧美极品| 精品盗摄一区二区三区| 欧洲国内综合视频| 成人av电影在线网| 极品少妇xxxx精品少妇| 亚洲欧美成aⅴ人在线观看| 精品久久久久久久久久久久久久久久久 | 中文字幕av资源一区| 日韩亚洲欧美一区| 欧美性猛片aaaaaaa做受| www.欧美精品一二区| 日韩电影免费在线观看网站| 亚洲蜜桃精久久久久久久| 国产婷婷一区二区| 欧美一级日韩免费不卡| 欧美亚洲国产一区二区三区va| 99热在这里有精品免费| 国产主播一区二区| 蜜臀久久久99精品久久久久久| 国产精品美女视频| 国产亚洲精品资源在线26u| 精品少妇一区二区三区日产乱码 | 日本韩国一区二区三区视频| 国产黑丝在线一区二区三区| 加勒比av一区二区| 国产成人午夜电影网| 国产成人免费视频网站| 成人国产视频在线观看| av高清久久久| 欧美日韩三级视频| 日韩免费在线观看| 久久久777精品电影网影网 | 欧美大片国产精品| 国产亚洲制服色| 国产精品国产自产拍在线| 亚洲伦理在线免费看| 亚洲图片欧美综合| 麻豆91在线观看| 国产成人av影院| 色八戒一区二区三区| 欧美高清精品3d| 久久久精品影视| 一区二区三区欧美| 久久9热精品视频| av成人老司机| 欧美一区二区三区视频在线观看| 久久婷婷成人综合色| 国产精品二三区| 肉丝袜脚交视频一区二区| 精品一区二区三区日韩| av午夜精品一区二区三区| 欧美日韩国产天堂| 久久精品亚洲精品国产欧美| 一区二区三区中文免费| 久久精品国产免费| 日本道免费精品一区二区三区| 91精品国产综合久久香蕉麻豆| 国产日韩欧美a| 午夜国产不卡在线观看视频| 国产一区999| 欧美日韩国产一级片| 国产日韩欧美精品电影三级在线| 亚洲成人免费视| 国产.欧美.日韩| 欧美精品日韩一本| 国产亚洲精品bt天堂精选| 亚洲电影一区二区三区| 国产91在线观看| 7799精品视频| 亚洲黄色小说网站| 国产精品中文字幕欧美| 精品视频在线看| 中文字幕亚洲在| 国产在线精品一区二区夜色| 日本高清无吗v一区| 国产三级精品三级在线专区| 日韩黄色在线观看| 91福利精品第一导航| 欧美激情中文不卡| 久久国产免费看| 欧美肥胖老妇做爰| 亚洲精品视频一区| 成人黄色在线视频| www日韩大片| 久久精品久久精品| 欧美日韩精品免费观看视频| 亚洲人精品一区| 成人福利视频网站| 国产亚洲午夜高清国产拍精品| 男男视频亚洲欧美| 欧美日韩免费电影| 亚洲码国产岛国毛片在线| 成人精品小蝌蚪| 国产视频视频一区| 国产在线观看一区二区| 欧美成人福利视频| 免费在线观看日韩欧美| 欧美日韩黄视频| 亚洲6080在线| 欧美亚洲另类激情小说| 玉米视频成人免费看| 97久久人人超碰| 中文字幕日本乱码精品影院| 成人教育av在线| 亚洲女人小视频在线观看| 另类的小说在线视频另类成人小视频在线 | 欧美午夜一区二区| 亚洲三级电影网站| 一本色道久久综合精品竹菊| 亚洲欧洲一区二区在线播放| 99re热视频精品| 中文字幕在线一区二区三区| 国产ts人妖一区二区| 国产无一区二区| 99视频在线精品| 一区二区三区自拍| 欧美最新大片在线看 | 国产剧情av麻豆香蕉精品| 欧美成人一区二区三区| 日韩电影在线免费| 日韩免费看的电影| 国产乱子伦视频一区二区三区| 久久精品在这里| 风间由美一区二区av101 | 麻豆国产精品官网| 久久久91精品国产一区二区精品| 国产精品综合在线视频| 久久精品无码一区二区三区| 国产成人精品影视| 一区精品在线播放| 欧美色综合天天久久综合精品| 亚洲成国产人片在线观看| 欧美丰满高潮xxxx喷水动漫| 久久精品国产99| 国产清纯白嫩初高生在线观看91| 99re8在线精品视频免费播放| 亚洲高清免费视频| 精品久久人人做人人爽| 懂色av一区二区三区免费观看 | 欧美mv日韩mv| www.亚洲国产| 天天免费综合色| 欧美极品美女视频| 日本乱人伦aⅴ精品| 日本vs亚洲vs韩国一区三区 | 国产尤物一区二区在线| 国产精品三级视频| 欧美亚洲一区三区| 狠狠色丁香久久婷婷综| ㊣最新国产の精品bt伙计久久| 色偷偷久久人人79超碰人人澡| 日韩精品高清不卡| 国产精品免费免费| 91精品国产色综合久久不卡电影| 国产成人在线免费观看| 亚洲国产综合91精品麻豆| 久久影音资源网| 欧美午夜精品电影| 国产91丝袜在线播放| 亚洲国产精品视频| 久久久久久久久99精品| 日本韩国视频一区二区| 国产伦精品一区二区三区免费迷 | 国产成人av在线影院| 亚洲国产精品久久一线不卡| 久久综合给合久久狠狠狠97色69| 色偷偷久久一区二区三区| 国产一区在线观看麻豆| 亚洲图片一区二区| 国产精品亲子伦对白| 日韩欧美国产系列| 91成人免费在线视频| 处破女av一区二区| 久久国内精品视频| 天堂一区二区在线| 亚洲女性喷水在线观看一区|