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

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

?? core_cm0.c

?? LPC1114_例程和教程
?? C
?? 第 1 頁 / 共 2 頁
字號:
/******************** (C) COPYRIGHT 2010 Embest Info&Tech Co.,LTD. ************
* 文件名: core_cm0.c
* 作者  : Wuhan R&D Center, Embest
* 日期  : 01/18/2010
* 描述  : CMSIS Cortex-M0核外圍訪問層源文件
*******************************************************************************
*******************************************************************************
* 歷史:
* 01/18/2010		 : V1.0		   初始版本
*******************************************************************************/
/* Includes ------------------------------------------------------------------*/
#include <stdint.h>

/* 編譯器的特性符號定義 */
#if defined ( __CC_ARM   )
  #define __ASM            __asm           /*!< armcc編譯器asm關鍵字          */
  #define __INLINE         __inline        /*!< armcc編譯器inline關鍵字       */

#elif defined ( __ICCARM__ )
  #define __ASM           __asm            /*!< iarcc編譯器asm關鍵字          */
  #define __INLINE        inline           /*!< iarcc編譯器inline關鍵字       */
  #define __nop           __no_operation   /*!< 無操作 */

#elif defined   (  __GNUC__  )
  #define __ASM             asm            /*!< gcc編譯器asm關鍵字            */
  #define __INLINE          inline         /*!< gcc編譯器inline關鍵字         */
#endif


#if (defined (__ARMCC_VERSION)) && (__ARMCC_VERSION < 400000)


/**
  * @函數名:uint32_t __get_PSP
  * @描述:返回進程堆棧指針
  * @參數: 無
  * @返回值:uint32_t 進程堆棧指針
  *          返回一個具體的進程堆棧指針
  */
__ASM uint32_t __get_PSP(void)
{
  mrs r0, psp
  bx lr
}


/**
  * @函數名:__set_PSP 
  * @描述:設置進程堆棧指針
  * @參數: uint32_t 進程堆棧指針
  * @返回值:無
  *          分配一個進程堆棧指針值給Cortex-M0核PSP寄存器 
  */
__ASM void __set_PSP(uint32_t topOfProcStack)
{
  msr psp, r0
  bx lr
}


/**
  * @函數名:__get_MSP
  * @描述:返回主堆棧指針
  * @參數: 無
  * @返回值:uint32_t 主程堆棧指針
  */
__ASM uint32_t __get_MSP(void)
{
  mrs r0, msp
  bx lr
}


/**
  * @函數名:__set_MSP
  * @描述:設置主堆棧指針
  * @參數:uint32_t 主程堆棧指針
  * @返回值:無
  *          分配一個具體值給MSP主堆棧指針寄存器
  */
__ASM void __set_MSP(uint32_t mainStackPointer)
{
  msr msp, r0
  bx lr
}


/**
  * @函數名:__get_BASEPRI
  * @描述:返回基優先級值
  * @參數:無
  * @返回值:uint32_t 基優先級
  */
__ASM uint32_t  __get_BASEPRI(void)
{
  mrs r0, basepri
  bx lr
}


/**
  * @函數名:__set_BASEPRI
  * @描述:設置基優先級值
  * @參數:uint32_t 基優先級
  * @返回值:無
  */
__ASM void __set_BASEPRI(uint32_t basePri)
{
  msr basepri, r0
  bx lr
}


/**
  * @函數名: __get_PRIMASK
  * @描述:返回優先級屏蔽值
  * @參數:無
  * @返回值:uint32_t 優先級屏蔽值
  */
__ASM uint32_t __get_PRIMASK(void)
{
  mrs r0, primask
  bx lr
}


/**
  * @函數名:__set_PRIMASK
  * @描述:設置優先級屏蔽寄存器
  * @參數:uint32_t 優先級屏蔽值
  * @返回值:無           
  */
__ASM void __set_PRIMASK(uint32_t priMask)
{
  msr primask, r0
  bx lr
}


/**
  * @函數名:__get_FAULTMASK 
  * @描述:返回故障屏蔽寄存器值
  * @參數:無
  * 返回值:uint32_t 故障屏蔽值           
  */
__ASM uint32_t  __get_FAULTMASK(void)
{
  mrs r0, faultmask
  bx lr
}


/**
 * @函數名:__set_FAULTMASK
 * @描述:設置故障屏蔽寄存器
 * @參數:uint32_t 故障屏蔽值
 * @返回值:無         
 */
__ASM void __set_FAULTMASK(uint32_t faultMask)
{
  msr faultmask, r0
  bx lr
}


/**
  * 函數名:__get_CONTROL
  * @描述:返回控制寄存器值
  * @參數: 無
  * @返回值: uint32_t 控制寄存器值
  */
__ASM uint32_t  __get_CONTROL(void)
{
  mrs r0, control
  bx lr
}

/**
 * @函數名:__set_CONTROL
 * @描述:設置控制寄存器
 * @參數:uint32_t 控制寄存器值
 * @返回值:無
 */
__ASM void __set_CONTROL(uint32_t control)
{
  msr control, r0
  bx lr
}


/**
  * @函數名:__REV16
  * @描述:反轉unsigned short類型字節順序
  * @參數:uint16_t value 待轉換值
  * @返回值:uint32_t 轉換后的值
  */
__ASM uint32_t __REV16(uint16_t value)
{
  rev16 r0, r0
  bx lr
}


/**
  * @函數名:__REVSH
  * @描述:反轉signed short類型值字節順序并進行符號擴展
  * @參數:int16_t value待轉換值
  * @返回值:int32_t 轉換后的值
  */
__ASM int32_t __REVSH(int16_t value)
{
  revsh r0, r0
  bx lr
}



#elif (defined (__ICCARM__))
#pragma diag_suppress=Pe940

/**
  * @函數名:__get_PSP
  * @描述:返回進程堆棧指針
  * @參數:無
  * @返回值:uint32_t 進程堆棧指針
  */
uint32_t __get_PSP(void)
{
  __ASM("mrs r0, psp");
  __ASM("bx lr");
}

/**
  * @函數名:__set_PSP
  * @描述:設置進程堆棧指針
  * @參數:uint32_t 進程堆棧指針
  * @返回值:無
  *          為PSP堆棧指針寄存器分配一個值
  */
void __set_PSP(uint32_t topOfProcStack)
{
  __ASM("msr psp, r0");
  __ASM("bx lr");
}

/**
  * @函數名:__get_MSP
  * @描述:返回主堆棧指針
  * @參數:無
  * @返回值: uint32_t 主堆棧指針
  */
uint32_t __get_MSP(void)
{
  __ASM("mrs r0, msp");
  __ASM("bx lr");
}

/**
  * @函數名:__set_MSP
  * @描述:設置主堆棧指針
  * @參數:uint32_t 主堆棧指針
  * @返回值:無
  *         為MSP主堆棧指針寄存器分配一個值
  */
void __set_MSP(uint32_t topOfMainStack)
{
  __ASM("msr msp, r0");
  __ASM("bx lr");
}


/**
  * @函數名:__REV16
  * @描述:反轉unsigned short類型值字節順序
  * @參數:uint16_t value等轉換值
  * @返回值:uint32_t 轉換后的值
  */
uint32_t __REV16(uint16_t value)
{
  __ASM("rev16 r0, r0");
  __ASM("bx lr");
}


/**
  * @函數名:__RBIT
  * @描述:反轉一個值二進制位順序
  * @參數:uint32_t value待轉換值
  * @返回值:uint32_t 轉換后的值
  */
uint32_t __RBIT(uint32_t value)
{
  __ASM("rbit r0, r0");
  __ASM("bx lr");
}

/**
  * @函數名:__LDREXB
  * @描述: LDR Exclusive
  * @參數: uint8_t* address
  * @返回值: uint8_t (*address)值
  */
uint8_t __LDREXB(uint8_t *addr)
{
  __ASM("ldrexb r0, [r0]");
  __ASM("bx lr"); 
}

/**
  * @函數名:__LDREXH
  * @描述:LDR Exclusive
  * @參數: uint16_t* address
  * @返回值:uint16_t (*address)值
  *          Exclusive LDR 指令
  */
uint16_t __LDREXH(uint16_t *addr)
{
  __ASM("ldrexh r0, [r0]");
  __ASM("bx lr");
}


/**
  * @函數名:__LDREXW
  * @描述:LDR Exclusive
  * @參數: uint32_t* address
  * @返回值:uint32_t (*address)值
  * Exclusive LDR 指令
  */
uint32_t __LDREXW(uint32_t *addr)
{
  __ASM("ldrex r0, [r0]");
  __ASM("bx lr");
}


/**
  * @函數名:__STREXB
  * @描述:STR Exclusive
  * @參數:uint8_t *address
  * @參數: uint8_t value待存儲值
  * @返回值:uint32_t 成功/失敗
  *          Exclusive STR 指令  */
uint32_t __STREXB(uint8_t value, uint8_t *addr)
{
  __ASM("strexb r0, r0, [r1]");
  __ASM("bx lr");
}


/**
  * @函數名:__STREXH
  * @描述: STR Exclusive
  * @參數: uint16_t *address
  * @參數: uint16_t value待存儲值
  * @返回值:uint32_t 成功/失敗
  *          Exclusive STR 指令
  */
uint32_t __STREXH(uint16_t value, uint16_t *addr)
{
  __ASM("strexh r0, r0, [r1]");
  __ASM("bx lr");
}


/**
  * @函數名:__STREXW
  * @描述:STR Exclusive
  * @參數:uint32_t *address

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区成人| 日本高清不卡视频| 日本不卡在线视频| 秋霞成人午夜伦在线观看| 亚洲高清免费观看| 性做久久久久久免费观看| 亚洲国产毛片aaaaa无费看 | 精品国产电影一区二区| 91精品国产色综合久久不卡电影| 欧洲亚洲国产日韩| 欧美一区2区视频在线观看| 欧美一区二区二区| 久久久美女毛片| 国产精品夫妻自拍| 亚洲成av人片观看| 日本成人在线网站| 国产精品一区二区在线观看网站| 国产91精品一区二区麻豆网站| 成人动漫视频在线| 91激情五月电影| 日韩一区二区三区av| 亚洲精品一区在线观看| 亚洲欧洲精品一区二区三区| 亚洲高清视频在线| 国内成人精品2018免费看| 成人黄色电影在线| 欧美一区二区视频观看视频| 国产精品素人视频| 亚洲第一在线综合网站| 国模冰冰炮一区二区| 99久久99久久久精品齐齐| 欧美精品久久天天躁| 国产日产欧美一区| 一区二区三区久久| 国产剧情在线观看一区二区| 91一区一区三区| 91精品国产欧美日韩| 日韩美女久久久| 秋霞电影网一区二区| 色婷婷综合久久久久中文 | 狠狠色综合日日| 一本一本久久a久久精品综合麻豆| 欧美色视频在线| 日本一区二区三区高清不卡| 五月婷婷久久综合| 成人aa视频在线观看| 精品国产乱码久久久久久久| 亚洲另类春色国产| 国产高清一区日本| 日韩网站在线看片你懂的| 亚洲欧美国产77777| 九一久久久久久| 欧美吻胸吃奶大尺度电影 | 高清不卡在线观看| 日韩午夜激情视频| 亚洲最快最全在线视频| 成人精品国产免费网站| 欧美一级淫片007| 亚洲电影中文字幕在线观看| 成人动漫一区二区三区| 国产亚洲精品aa| 久久精工是国产品牌吗| 精品视频在线免费| 一区二区三区**美女毛片| 丁香桃色午夜亚洲一区二区三区| 精品入口麻豆88视频| 日本欧美大码aⅴ在线播放| 91高清在线观看| 亚洲女厕所小便bbb| 福利一区在线观看| 国产无一区二区| 成人一区二区视频| 欧美国产一区二区在线观看| 国产一区二区三区四区五区美女 | 中文字幕第一页久久| 麻豆国产欧美一区二区三区| 一本色道久久综合狠狠躁的推荐| 国产欧美一区二区精品性色超碰| 九九九精品视频| 久久亚洲精品国产精品紫薇| 美女久久久精品| 久久一区二区视频| 国产一区二区精品久久91| 日韩精品影音先锋| 国产精品99精品久久免费| 久久精品日韩一区二区三区| 高清视频一区二区| 国产精品国产三级国产三级人妇| 97精品超碰一区二区三区| 亚洲国产一二三| 51久久夜色精品国产麻豆| 黄色精品一二区| 亚洲欧洲精品一区二区三区| 在线精品视频一区二区三四| 日韩中文字幕麻豆| www日韩大片| 在线精品视频免费播放| 美日韩一区二区| 亚洲同性同志一二三专区| 欧美日本在线播放| 国产一区二区三区观看| 亚洲天堂a在线| 日韩一区二区在线观看视频| 国产高清久久久| 亚洲精品视频在线| 26uuu精品一区二区| 色嗨嗨av一区二区三区| 韩国欧美国产1区| 亚洲美女少妇撒尿| 久久精品综合网| 欧美日韩亚洲不卡| 成人丝袜18视频在线观看| 亚洲国产aⅴ成人精品无吗| 国产亚洲欧洲997久久综合| 欧美日韩一区二区三区在线看| 久草精品在线观看| 午夜精品成人在线| 国产精品久久久久永久免费观看 | 91国产精品成人| 国产乱人伦精品一区二区在线观看| 亚洲精品国产成人久久av盗摄| 欧美xxxxxxxxx| 欧美精品aⅴ在线视频| 成人h动漫精品一区二区 | 日本一区二区动态图| 欧美日本乱大交xxxxx| av在线不卡免费看| 久久国产精品第一页| 亚洲一区二区不卡免费| 国产精品福利影院| 国产午夜精品一区二区三区视频| 91精品麻豆日日躁夜夜躁| 色婷婷综合在线| 99国产精品久| 国产精品性做久久久久久| 免费成人在线网站| 午夜精品成人在线视频| 一区二区三区在线观看动漫| 亚洲国产成人在线| 国产色综合一区| 久久久99久久| 久久青草欧美一区二区三区| 日韩一区二区麻豆国产| 欧美高清性hdvideosex| 欧美日韩一二区| 69堂精品视频| 欧美美女直播网站| 欧美日韩视频在线第一区| 欧美午夜视频网站| 欧美色爱综合网| 欧美精品亚洲二区| 欧美一级一级性生活免费录像| 在线播放一区二区三区| 在线播放亚洲一区| 日韩精品专区在线影院重磅| 日韩午夜中文字幕| 久久久久国产精品免费免费搜索| 欧美精品一区在线观看| 久久精品亚洲麻豆av一区二区| 久久久久久久久伊人| 日本一区二区三区高清不卡| 国产精品久久久久久久久久免费看| 国产精品国产三级国产三级人妇| 亚洲人快播电影网| 亚洲亚洲人成综合网络| 视频一区免费在线观看| 精品一区二区三区在线观看国产| 精品一区二区三区在线观看 | 日韩在线一区二区| 美女看a上一区| 国产美女主播视频一区| av一区二区三区黑人| 精品视频在线免费| 久久天天做天天爱综合色| 国产精品丝袜黑色高跟| 又紧又大又爽精品一区二区| 天天亚洲美女在线视频| 国内精品写真在线观看| www.综合网.com| 8x8x8国产精品| 国产精品免费人成网站| 亚洲第一av色| 国产一区二区电影| 欧美日韩激情一区二区三区| 精品国产欧美一区二区| 亚洲精品乱码久久久久久| 久久机这里只有精品| 91麻豆精品秘密| 欧美一级日韩免费不卡| 亚洲视频免费观看| 久久av中文字幕片| 日本韩国欧美三级| 国产日韩欧美综合一区| 亚洲高清免费一级二级三级| 国产98色在线|日韩| 91精品黄色片免费大全| 亚洲视频免费在线观看| 国产一区福利在线| 91精品在线麻豆| 亚洲欧洲综合另类在线|