⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 core_sil.h

📁 μITRON4.0 source code for ARM
💻 H
字号:
/* *  TOPPERS Software *      Toyohashi Open Platform for Embedded Real-Time Systems *  *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory *                              Toyohashi Univ. of Technology, JAPAN *  Copyright (C) 2004-2007 by Embedded and Real-Time Systems Laboratory *              Graduate School of Information Science, Nagoya Univ., JAPAN *  *  惧淡螟侯涪荚は·笆布の(1)×(4)の掘凤を塔たす眷圭に嘎り·塑ソフトウェ *  ア∈塑ソフトウェアを猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖 *  恃ˇ浩芹邵∈笆布·网脱と钙ぶ∷することを痰浸で钓满するˉ *  (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 *      涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 *      スコ〖ド面に崔まれていることˉ *  (2) 塑ソフトウェアを·ライブラリ妨及など·戮のソフトウェア倡券に蝗 *      脱できる妨で浩芹邵する眷圭には·浩芹邵に燃うドキュメント∈网脱 *      荚マニュアルなど∷に·惧淡の螟侯涪山绩·この网脱掘凤および布淡 *      の痰瘦沮惮年を非很することˉ *  (3) 塑ソフトウェアを·怠达に寥み哈むなど·戮のソフトウェア倡券に蝗 *      脱できない妨で浩芹邵する眷圭には·肌のいずれかの掘凤を塔たすこ *      とˉ *    (a) 浩芹邵に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟 *        侯涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ *    (b) 浩芹邵の妨轮を·侍に年める数恕によって·TOPPERSプロジェクトに *        鼠桂することˉ *  (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 *      巢からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを倘勒することˉ *      また·塑ソフトウェアのユ〖ザまたはエンドユ〖ザからのいかなる妄 *      统に答づく懒滇からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを *      倘勒することˉ *  *  塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚お *  よびTOPPERSプロジェクトは·塑ソフトウェアに簇して·泼年の蝗脱誊弄 *  に滦する努圭拉も崔めて·いかなる瘦沮も乖わないˉまた·塑ソフトウェ *  アの网脱により木儡弄または粗儡弄に栏じたいかなる禄巢に簇しても·そ *  の勒扦を砷わないˉ *  *  @(#) $Id: core_sil.h 948 2008-04-14 08:34:27Z ertl-honda $ *//* *  sil.hのコア巴赂婶∈ARM脱∷ */#ifndef TOPPERS_CORE_SIL_H#define TOPPERS_CORE_SIL_H#ifndef TOPPERS_MACRO_ONLY/* *  すべての充哈み∈FIQとIRQ∷の敦贿 */Inline uint32_tTOPPERS_disint(void){    uint32_t  cpsr;    uint32_t  irq_fiq_mask;    Asm("mrs  %0,CPSR" : "=r"(cpsr));    irq_fiq_mask = cpsr & (0x40|0x80);    cpsr |= (0x40|0x80);    Asm("msr CPSR, %0" : : "r"(cpsr) :"memory", "cc");    return(irq_fiq_mask);}/* *  FIQ,IRQの肋年 */Inline voidTOPPERS_set_fiq_irq(uint32_t TOPPERS_irq_fiq_mask){    uint32_t  cpsr;    Asm("mrs  %0,CPSR" : "=r"(cpsr));    cpsr = cpsr & ~(0x40|0x80);    cpsr = cpsr | (TOPPERS_irq_fiq_mask & (0x40|0x80));    Asm("msr CPSR, %0" : : "r"(cpsr):"memory", "cc");}/* *  链充哈みロック觉轮の扩告 */#define SIL_PRE_LOC   uint32_t TOPPERS_irq_fiq_mask#define SIL_LOC_INT() ((void)(TOPPERS_irq_fiq_mask = TOPPERS_disint()))#define SIL_UNL_INT() (TOPPERS_set_fiq_irq(TOPPERS_irq_fiq_mask))/* *  腮警箕粗略ち */Inline voidsil_dly_nse(ulong_t dlytim){    register uint32_t r0 asm("r0") = (uint32_t) dlytim;        Asm("bl _sil_dly_nse" : "=g"(r0) : "0"(r0) : "lr","cc");}#endif /* TOPPERS_MACRO_ONLY */#endif /* TOPPERS_CORE_SIL_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -