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

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

?? c6711_cpu.h

?? 該代碼實現(xiàn)了 兩次下載法在dspC6713平臺上 燒寫flash的操作過程
?? H
字號:
/*********************************************************************************************************
* File      : C6711_CPU.H
* Descriptin: 
*********************************************************************************************************/
#ifdef C6711_GLOBALS
//#define  EXT
#else
#define  EXT  extern
#endif

#ifndef _REGS_H_
#define _REGS_H_


typedef unsigned char  BOOLEAN;

#define TRUE       ((BOOLEAN)1)
#define FALSE      ((BOOLEAN)0)
#define ERROR      ((BOOLEAN)10)


/**************************** CONTROL REGISTERS *******************************/

extern cregister volatile unsigned int AMR;     /* Address Mode Register      */
extern cregister volatile unsigned int CSR ;     /* Control Status Register    */
extern cregister volatile unsigned int IFR;     /* Interrupt Flag Register    */
extern cregister volatile unsigned int ISR;     /* Interrupt Set Register     */
extern cregister volatile unsigned int ICR;     /* Interrupt Clear Register   */
extern cregister volatile unsigned int IER;     /* Interrupt Enable Register  */
extern cregister volatile unsigned int ISTP;    /* Interrupt Service Tbl Ptr  */
extern cregister volatile unsigned int IRP;     /* Interrupt Return Pointer   */
extern cregister volatile unsigned int NRP;     /* Non-maskable Int Return Ptr*/
extern cregister volatile unsigned int FADCR;   /* Float_Add_Configure_Register*/       
extern cregister volatile unsigned int FAUCR;   /* Float_Auxiliary_Configure_Register */
extern cregister volatile unsigned int FMCR;    /* Float_Multiply_Configure_Register */
extern cregister volatile unsigned int IN;      /* General Purpose Input Reg  */
extern cregister volatile unsigned int OUT;     /* General Purpose Output Reg */

/* Control Register Bitfields */

/* AMR */
#define A4_MODE               0    /*A4 Mode Bitfield begin*/
#define A4_MODE_SZ            2    /*A4 Mode Bitfield size */
#define A5_MODE               2
#define A5_MODE_SZ            2
#define A6_MODE               4
#define A6_MODE_SZ            2
#define A7_MODE               6
#define A7_MODE_SZ            2
#define B4_MODE               8
#define B4_MODE_SZ            2
#define B5_MODE              10
#define B5_MODE_SZ            2
#define B6_MODE              12
#define B6_MODE_SZ            2
#define B7_MODE              14
#define B7_MODE_SZ            2
#define BK0                  16
#define BK0_SZ                5
#define BK1                  21
#define BK1_SZ                5

/* CSR */
#define GIE                   0
#define PGIE                  1
#define DCC                   2
#define DCC_SZ                3
#define PCC                   5
#define PCC_SZ                3
#define EN                    8
#define SAT                   9
#define PWRD                 10
#define PWRD_SZ               6
#define REVISION_ID          16  /*C6711=00000010b*/
#define REVISION_ID_SZ        8
#define CPU_ID               24  /*C67x=10b       */
#define CPU_ID_SZ             8

/* Floating Configure Register       */

/* Floating Add Configure Register(FADCR)*/
#define NAN1L1                0
#define NAN2L1                1
#define DEN1L1                2
#define DEN2L1                3
#define INVALL1               4
#define INFOL1                5	
#define OVERL1                6
#define INEXL1                7
#define UNDERL1               8
#define RMODEL1               9
#define RMODEL1_SZ            2
#define NAN1L2                16
#define NAN2L2                17
#define DEN1L2                18
#define DEN2L2                19
#define INVALL2               20
#define INFOL2                21
#define OVERL2                22
#define INEXL2                23
#define UNDERL2               24
#define RMODEL2               25
#define RMODEL2_SZ            2

/* Floating Auxiliary Configure Register(FAUCR)*/
#define NAN1S1                0
#define NAN2S1                1
#define DEN1S1                2
#define DEN2S1                3
#define INVALS1               4
#define INFOS1                5	
#define OVERS1                6
#define INEXS1                7
#define UNDERS1               8
#define UNORDS1               9
#define DIV0S1                10
#define NAN1S2                16
#define NAN2S2                17
#define DEN1S2                18
#define DEN2S2                19
#define INVALS2               20
#define INFOS2                21	
#define OVERS2                22
#define INEXS2                23
#define UNDERS2               24
#define UNORDS2               25
#define DIV0S2                26

/* Floating Mulitply Configure Register(FMCR)*/
#define NAN1M1                0
#define NAN2M1                1
#define DEN1M1                2
#define DEN2M1                3
#define INVALM1               4
#define INFOM1                5	
#define OVERM1                6
#define INEXM1                7
#define UNDERM1               8
#define RMODEM1               9
#define RMODEM1_SZ            2
#define NAN1M2                16
#define NAN2M2                17
#define DEN1M2                18
#define DEN2M2                19
#define INVALM2               20
#define INFOM2                21
#define OVERM2                22
#define INEXM2                23
#define UNDERM2               24
#define RMODEM2               25
#define RMODEM2_SZ            2

/*----------------------------------------------------------------------------*/
/*        GLOBAL       VARIABLES                                              */
/*----------------------------------------------------------------------------*/

/* Importended registers needed to be saved during interrupts  */
struct SAVE_REGISTER
{
   volatile unsigned int       C6711_AMR;      		/* save/restore */
   volatile unsigned int       C6711_CSR;	 		/* save/restore */
   volatile unsigned int       C6711_IER;			/* save/restore */
   volatile unsigned int	   C6711_FADCR;          /* save/restore */		                            
   volatile unsigned int       C6711_FAUCR;          /* save/restore */
   volatile unsigned int       C6711_FMCR;           /* save/restore */
};

/*----------------------------------------------------------------------------*/
/*  MACRO FUNCTIONS:                                                          */
/*----------------------------------------------------------------------------*/

#define CONTENTS_OF(addr)    (*((volatile unsigned int *)(addr)))

#define LENGTH_TO_BITS(length)   (~(0xffffffff << (length)))

/* MACROS to SET, CLEAR and RETURN bits and bitfields in Memory Mapped        */
/* locations using the address of the specified register.                     */

/*     REG_READ          - Read register at specified address                 */
#define REG_READ(addr)     (CONTENTS_OF(addr))

/*     REG_WRITE         - Write to register at specified address             */
#define REG_WRITE(addr,val)    (CONTENTS_OF(addr) = (val))

/*     MASK_BIT          - Create (1's) mask for specified bit.               */
#define MASK_BIT(bit)     (1 << (bit))

/*     RESET_BIT         - Clears bit in register.                            */
#define RESET_BIT(addr,bit)   (CONTENTS_OF(addr) &= (~MASK_BIT(bit)))

/*     GET_BIT           - Returns bit value in register.                     */
#define GET_BIT(addr,bit)   ((CONTENTS_OF(addr) & MASK_BIT(bit)) ? 1 : 0)
        
/*     SET_BIT           - Sets bit in register.                              */
#define SET_BIT(addr,bit) \
    (CONTENTS_OF(addr) = (CONTENTS_OF(addr)) | (MASK_BIT(bit)))

/*     ASSIGN_BIT_VAL    - Assign bit to specified value                      */
#define ASSIGN_BIT_VAL(addr,bit,val) \
        ( (val) ? SET_BIT(addr,bit) : RESET_BIT(addr,bit) )

/*     MASK_FIELD        - Create (1's) mask for specified field              */
#define MASK_FIELD(bit,length) \
        (LENGTH_TO_BITS(length) << (bit))
        
/*     RESET_FIELD       - Clears field in register                           */
#define RESET_FIELD(addr,bit,length) \
        ( CONTENTS_OF(addr) &= (~MASK_FIELD(bit,length)))

/*     GET_FIELD         - Returns value of bit field in a register           */
#define GET_FIELD(addr,bit,length) \
       ((CONTENTS_OF(addr) & MASK_FIELD(bit,length)) >> bit)
       
/*     LOAD_FIELD        - Assigns bit field in register                      */
#define LOAD_FIELD(addr,val,bit,length) \
        (CONTENTS_OF(addr) = (CONTENTS_OF(addr) & (~MASK_FIELD(bit,length))) | (val<<bit))

/* MACROS to SET, CLEAR and RETURN bits and bitfields in Memory Mapped        */
/* and Non-Memory Mapped using register names.                                */

/*     GET_REG           - Returns value of non memory mapped register        */
#define GET_REG(reg)         (reg)

/*     SET_REG           - Sets value of a non memory mapped register         */
#define SET_REG(reg,val)     ((reg)= (val))

/*     GET_REG_BIT       - Return bit value in non memory mapped register     */
#define GET_REG_BIT(reg,bit)     ((reg) & MASK_BIT(bit) ? 1 : 0)
        
/*     SET_REG_BIT       - Sets bit in non memory mapped register             */
#define SET_REG_BIT(reg,bit)     ((reg) |= MASK_BIT(bit))

/*     RESET_REG_BIT     - Resets given bit in non memory mapped register     */
#define RESET_REG_BIT(reg,bit)     ((reg) &= (~MASK_BIT(bit)))

/*     GET_REG_FIELD     - Return value of specified register field           */
#define GET_REG_FIELD(reg,bit,length) \
        ((reg & MASK_FIELD(bit,length)) >> bit)

/*     LOAD_REG_FIELD    - Set value of specified register fiedl              */
#define LOAD_REG_FIELD(reg,val,bit,length) \
        (reg &= (~MASK_FIELD(bit,length)) | (val<<bit))

/*****************************************************************************/
/* SAVE_AMR -                                                                */
/*     Define a local 'volatile unsigned int' variable in your interrupt     */
/*     routine.                                                              */
/*     When invoking this macro, pass that local variable to save the AMR.   */
/*                                                                           */
/*     If you interrupted an assembly coded routine that may be using        */
/*     circular addressing, and you interrupt into a C coded interrupt       */
/*     service routine, you need to set the AMR to 0 for the C code and save */
/*     off the AMR register, so that it will have the correct value upon     */
/*     leaving the C interrupt service routine and returning to the assembly */
/*     code.                                                                 */
/*                                                                           */
/*     Add this routine immediately after your local variable definitions    */
/*     and before the start of your C interrupt code.                        */
/*****************************************************************************/
#define SAVE_AMR(temp_AMR)  (temp_AMR = AMR;AMR = 0;)                                                   
                                                              
/*****************************************************************************/
/* RESTORE_AMR -                                                             */
/*    When invoking this macro, pass the same local variable that was passed */
/*    to the SAVE_AMR macro.  This macro will restore the AMR to the value   */
/*    it had when interrupted out of the hand assembly routine.              */
/*                                                                           */
/*    Add this macro immediately before exiting the C interrupt service      */
/*    routine.                                                               */ 
/*****************************************************************************/
#define RESTORE_AMR(temp_AMR)  (AMR = temp_AMR; )                                              
                                                                          
/*****************************************************************************/
/* SAVE_SAT -                                                                */
/*     Define a local 'volatile unsigned int' variable in your interrupt     */
/*     routine.                                                              */
/*     When invoking this macro, pass that local variable to save the SAT    */
/*     bit.                                                                  */
/*                                                                           */
/*     If you interrupted a routine that was performing saturated arithmetic */
/*     and the interrupt service routine is also performing saturated        */
/*     arithmetic, then you must save and restore the SAT bit in your        */
/*     interrupt service routine.                                            */
/*                                                                           */
/*     Add this routine immediately after your local variable definitions    */
/*     and before the start of your C interrupt code.                        */
/*****************************************************************************/
#define SAVE_SAT(temp_SAT)    ( temp_SAT = _extu(CSR, 22, 31);) 
                                                      
/*****************************************************************************/
/* RESTORE_SAT -                                                             */
/*    When invoking this macro, pass the same local variable that was passed */
/*    to the SAVE_SAT macro.  This macro will restore the SAT bit to the     */
/*    value it had when your application was interrupted.                    */
/*                                                                           */
/*    Add this macro immediately before exiting the C interrupt service      */
/*    routine.                                                               */ 
/*****************************************************************************/
#define RESTORE_SAT(temp_SAT) (CSR &= _clr(CSR, 9, 9); \
                              temp_SAT = _sshl(temp_SAT, 31);)                                     
                                                          
#endif /*_REGS_H_*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91日韩精品一区| 国产日产欧美一区| 国产午夜精品福利| 亚洲小说春色综合另类电影| 麻豆精品一区二区av白丝在线| av电影天堂一区二区在线| 欧美狂野另类xxxxoooo| 国产精品狼人久久影院观看方式| 日韩黄色免费电影| 色综合咪咪久久| 国产精品久久久久久久岛一牛影视| 日韩vs国产vs欧美| 欧美在线视频不卡| 亚洲欧美一区二区三区国产精品| 国产剧情一区二区| 精品日韩成人av| 美女免费视频一区二区| 欧美日韩成人一区| 亚洲午夜电影网| 91网站在线观看视频| 中文字幕的久久| 国产91丝袜在线18| 国产亚洲1区2区3区| 久色婷婷小香蕉久久| 日韩视频免费直播| 免费看欧美美女黄的网站| 欧美疯狂性受xxxxx喷水图片| 亚洲欧美电影一区二区| 色综合久久综合| 一区二区三区四区在线免费观看| 91片在线免费观看| 一级女性全黄久久生活片免费| 色综合天天性综合| 麻豆精品视频在线观看免费| 欧美亚洲动漫另类| 午夜亚洲国产au精品一区二区| 欧美优质美女网站| 天天色综合成人网| 日韩一区二区三区四区| 久久99国产精品免费| 国产网站一区二区| proumb性欧美在线观看| 中文字幕在线一区二区三区| 日本韩国视频一区二区| 午夜精品久久久久久久99水蜜桃 | 一区二区日韩电影| 欧美系列亚洲系列| 日韩激情中文字幕| 久久久久久久电影| 一本大道久久精品懂色aⅴ| 五月婷婷久久丁香| 欧美精品一区二区久久久| 粉嫩在线一区二区三区视频| 亚洲伦理在线精品| 91麻豆精品国产91久久久资源速度| 美女在线观看视频一区二区| 国产精品美女久久久久aⅴ国产馆| 91久久精品网| 狠狠色综合色综合网络| 国产精品婷婷午夜在线观看| 欧美日韩中文字幕一区二区| 紧缚奴在线一区二区三区| 国产精品麻豆一区二区| 91超碰这里只有精品国产| 国产一区999| 亚洲国产精品久久人人爱| 精品蜜桃在线看| 欧美亚洲国产bt| 国产成人午夜视频| 亚洲成人资源在线| 亚洲人成电影网站色mp4| 欧美一区二区在线播放| 成人免费视频网站在线观看| 日韩国产一区二| 中文字幕亚洲成人| 日韩精品一区二区三区在线观看 | 国产色产综合色产在线视频 | 3d动漫精品啪啪一区二区竹菊| 国产精品一区二区久久精品爱涩 | 国产精品视频一二三区| 欧美一区二区久久久| 不卡av免费在线观看| 精品一区二区在线免费观看| 亚洲一二三级电影| 国产精品初高中害羞小美女文| 日韩欧美电影一二三| 欧美日韩在线播放一区| 成人av网站在线观看| 韩国一区二区视频| 日本成人在线一区| 亚洲国产精品久久久久秋霞影院 | 国产日产欧美一区| 欧美成人一级视频| 欧美日韩和欧美的一区二区| 成人福利在线看| 国产伦精品一区二区三区免费迷| 调教+趴+乳夹+国产+精品| 亚洲男人的天堂av| 中文字幕在线观看不卡视频| 久久天堂av综合合色蜜桃网| 日韩免费观看高清完整版| 欧美日韩一区二区电影| 日本道精品一区二区三区| 99综合影院在线| 99国产精品一区| 成人精品免费看| 成人污污视频在线观看| 国产成人av电影在线| 国产精品一级黄| 国产精品18久久久久| 国产成人在线免费| 国产1区2区3区精品美女| 国产成人h网站| 国产精品白丝jk黑袜喷水| 国产激情91久久精品导航 | 99久久精品国产精品久久| 日本人妖一区二区| 亚洲一区二区偷拍精品| 亚洲免费观看高清完整版在线观看熊| 国产精品久线观看视频| 中文字幕一区二区三区在线播放 | 成人美女视频在线看| jlzzjlzz亚洲女人18| 97精品久久久久中文字幕| 色综合久久久久| 欧美三级电影网| 日韩精品一区二区三区中文不卡| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 国产乱码精品1区2区3区| 国产伦精品一区二区三区免费迷 | 国产福利精品一区| www.欧美精品一二区| 91玉足脚交白嫩脚丫在线播放| 欧美自拍偷拍一区| 日韩视频一区二区在线观看| 久久久久久免费毛片精品| 亚洲欧美一区二区久久| 亚洲成a人v欧美综合天堂下载| 久久99热99| 色偷偷88欧美精品久久久| 日韩一级完整毛片| 久久丝袜美腿综合| 一区二区在线电影| 免播放器亚洲一区| 成人免费毛片aaaaa**| 欧美日韩激情在线| 精品国产1区二区| 亚洲精品乱码久久久久久黑人| 蜜臀av性久久久久蜜臀av麻豆| 成人免费福利片| 欧美日韩一卡二卡三卡| 国产欧美一区二区精品秋霞影院 | 亚洲老司机在线| 国内精品国产三级国产a久久| 91在线国内视频| 日韩一区二区三区视频| 国产精品久久久久久久裸模| 日韩精品久久理论片| 国产91精品一区二区麻豆网站| 欧洲一区二区av| 久久精品免视看| 午夜视频在线观看一区| 国产精品99久久久久久宅男| 欧美日本国产视频| 国产精品日产欧美久久久久| 免费国产亚洲视频| 在线免费精品视频| 亚洲国产高清在线| 毛片不卡一区二区| 欧美三级在线视频| 亚洲女性喷水在线观看一区| 韩国三级中文字幕hd久久精品| 欧美日韩免费观看一区二区三区| 国产精品免费看片| 国产一区二区成人久久免费影院| 欧美久久久久久蜜桃| 亚洲免费伊人电影| 成人福利视频在线看| 国产午夜精品一区二区三区嫩草| 免费不卡在线观看| 欧美喷潮久久久xxxxx| 亚洲综合免费观看高清在线观看| 国产99久久久国产精品潘金| 欧美精品一区二区在线观看| 三级欧美在线一区| 欧美日韩在线播放三区四区| 亚洲情趣在线观看| 91丨九色丨蝌蚪丨老版| 国产精品萝li| 不卡的电视剧免费网站有什么| 国产日韩欧美a| 成人丝袜高跟foot| 国产精品天美传媒沈樵| 成人av第一页| 国产精品成人在线观看| 91丨九色丨蝌蚪丨老版| 亚洲精品成人少妇| 欧美主播一区二区三区| 五月天久久比比资源色| 欧美精品在欧美一区二区少妇|