📄 h8s-renesas.txt
字号:
亖 TOPPERS/JSP僇乕僱儖 儐乕僓僘儅僯儏傾儖 亖
乮H8S僞乕僎僢僩埶懚晹 (H8C(HEW)懳墳斉)乯
乮Release 1.4.2懳墳丆嵟廔峏怴: 09-Dec-2005乯
------------------------------------------------------------------------
TOPPERS/JSP Kernel
Toyohashi Open Platform for Embedded Real-Time Systems/
Just Standard Profile Kernel
Copyright (C) 2000-2004 by Embedded and Real-Time Systems Laboratory
Toyohashi Univ. of Technology, JAPAN
Copyright (C) 2001-2005 by Industrial Technology Institute,
Miyagi Prefectural Government, JAPAN
Copyright (C) 2001-2004 by Dep. of Computer Science and Engineering
Tomakomai National College of Technology, JAPAN
忋婰挊嶌尃幰偼丆埲壓偺 (1)乣(4) 偺忦審偐丆Free Software Foundation
偵傛偭偰岞昞偝傟偰偄傞 GNU General Public License 偺 Version 2 偵婰
弎偝傟偰偄傞忦審傪枮偨偡応崌偵尷傝丆杮僜僼僩僂僃傾乮杮僜僼僩僂僃傾
傪夵曄偟偨傕偺傪娷傓丏埲壓摨偠乯傪巊梡丒暋惢丒夵曄丒嵞攝晍乮埲壓丆
棙梡偲屇傇乯偡傞偙偲傪柍彏偱嫋戻偡傞丏
(1) 杮僜僼僩僂僃傾傪僜乕僗僐乕僪偺宍偱棙梡偡傞応崌偵偼丆忋婰偺挊嶌
尃昞帵丆偙偺棙梡忦審偍傛傃壓婰偺柍曐徹婯掕偑丆偦偺傑傑偺宍偱僜乕
僗僐乕僪拞偵娷傑傟偰偄傞偙偲丏
(2) 杮僜僼僩僂僃傾傪丆儔僀僽儔儕宍幃側偳丆懠偺僜僼僩僂僃傾奐敪偵巊
梡偱偒傞宍偱嵞攝晍偡傞応崌偵偼丆嵞攝晍偵敽偆僪僉儏儊儞僩乮棙梡
幰儅僯儏傾儖側偳乯偵丆忋婰偺挊嶌尃昞帵丆偙偺棙梡忦審偍傛傃壓婰
偺柍曐徹婯掕傪宖嵹偡傞偙偲丏
(3) 杮僜僼僩僂僃傾傪丆婡婍偵慻傒崬傓側偳丆懠偺僜僼僩僂僃傾奐敪偵巊
梡偱偒側偄宍偱嵞攝晍偡傞応崌偵偼丆師偺偄偢傟偐偺忦審傪枮偨偡偙
偲丏
(a) 嵞攝晍偵敽偆僪僉儏儊儞僩乮棙梡幰儅僯儏傾儖側偳乯偵丆忋婰偺挊
嶌尃昞帵丆偙偺棙梡忦審偍傛傃壓婰偺柍曐徹婯掕傪宖嵹偡傞偙偲丏
(b) 嵞攝晍偺宍懺傪丆暿偵掕傔傞曽朄偵傛偭偰丆TOPPERS僾儘僕僃僋僩偵
曬崘偡傞偙偲丏
(4) 杮僜僼僩僂僃傾偺棙梡偵傛傝捈愙揑傑偨偼娫愙揑偵惗偠傞偄偐側傞懝
奞偐傜傕丆忋婰挊嶌尃幰偍傛傃TOPPERS僾儘僕僃僋僩傪柶愑偡傞偙偲丏
杮僜僼僩僂僃傾偼丆柍曐徹偱採嫙偝傟偰偄傞傕偺偱偁傞丏忋婰挊嶌尃幰偍
傛傃TOPPERS僾儘僕僃僋僩偼丆杮僜僼僩僂僃傾偵娭偟偰丆偦偺揔梡壜擻惈傕
娷傔偰丆偄偐側傞曐徹傕峴傢側偄丏傑偨丆杮僜僼僩僂僃傾偺棙梡偵傛傝捈
愙揑傑偨偼娫愙揑偵惗偠偨偄偐側傞懝奞偵娭偟偰傕丆偦偺愑擟傪晧傢側偄丏
@(#) $Id: h8s-renesas.txt,v 1.1 2006/04/14 02:46:17 9564907 Exp $
------------------------------------------------------------------------
1. H8S僞乕僎僢僩埶懚晹偺奣梫
1. 1 僞乕僎僢僩僔僗僥儉偲奐敪娐嫬
丂杮幚憰偼gcc懳墳偩偭偨H8S埶懚晹傪(姅)儖僱僒僗 僜儕儏乕僔儑儞僘惢偺奐
敪娐嫬H8C(HEW)偵懳墳偝偣偨傕偺偱偁傞丅
H8S僾儘僙僢僒偺僞乕僎僢僩僔僗僥儉偼丄H8S/2339F傪搵嵹偟偨埲壓偺儃乕僪
偱偁傞丅
丒姅幃夛幮儈僗億惢 MiNET-H8S/2339F (H8S/2339F搵嵹)
杮幚憰偼埲壓偺儌乕僪偱巊梡偡傞偙偲傪慜採偲偟偰偄傞丅
丂CPU摦嶌儌乕僪丗傾僪僶儞僗僪儌乕僪
丂妱崬傒惂屼儌乕僪俀
懠偺儌乕僪偱巊梡偡傞応崌偼丄傾僙儞僽儔晹暘傪廋惓偡傞昁梫偑偁傞丅
1. 2 僒億乕僩偡傞婡擻偺奣梫
惈擻昡壙梡僔僗僥儉帪崗嶲徠婡擻 (vxget_tim)丄妱崬傒儅僗僋偺曄峏丒嶲徠
(chg_ipm丄 get_ipm)傪僒億乕僩偟偰偄傞偑丄 妱傝崬傒偺嬛巭偲嫋壜
(dis_int丄ena_int) 偼僒億乕僩偟偰偄側偄丅
1. 3 懠偺僞乕僎僢僩傊偺億乕僥傿儞僌
H8S/2000僔儕乕僘偱偁傟偽丄億乕僥傿儞僌偼梕堈偵弌棃傞偲巚傢傟傞丅
1. 4 僔儕傾儖億乕僩 (SCI)
H8S/2000僔儕乕僘偵偼SCI0乣SCI1乮SCI2乯偺2杮乮3杮乯偺僔儕傾儖億乕僩偑
偁傝丄user_config.h偵掕媊偟偰偄傞TNUM_PORT偵傛傝壗杮巊梡偡傞偐巜掕偱偒
傞丅尰嵼偺幚憰偱偼2杮傑偱巊梡偱偒傞丅乮壓婰偺拲堄傪嶲徠乯
JSP 僇乕僱儖偺儘僌弌椡梡偵偼SCI1傪巊梡偟偰偄傞丅
拲堄丗
丂MiNET-H8S/2339F偱偼丄SCI0偑H-UDI僨僶僢僌億乕僩偲嫞崌偟偰偄傞丄SCI0偺
僐僱僋僞偑幚憰偝傟偰偄側偄摍偺棟桼偵傛傝丄SCI0偺摦嶌妋擣偼偟偰偄側偄丅
僔儕傾儖億乕僩偺愝掕傪埲壓偵帵偡丅
丒儃乕儗乕僩丂丂丂38400[bps]
丒僨乕僞挿丂丂丂丂8價僢僩
丒僗僩僢僾價僢僩丂1價僢僩
丒僷儕僥傿側偟
2. H8S 僾儘僙僢僒埶懚晹偺婡擻
僇乕僱儖偲僔僗僥儉僒乕價僗婡擻偺拞偱丄H8S埶懚偺晹暘偵偮偄偰夝愢偡傞丅
2. 1 僨乕僞宆
int宆偲unsigned int宆偺僒僀僘偼 16價僢僩偱偁傞丅傑偨丄張棟宯偺惂栺偐
傜丄64價僢僩惍悢偼僒億乕僩偟偰偄側偄丅
2. 2 妱崬傒娗棟婡擻偲妱崬傒僴儞僪儔
杮幚憰偱偼妱崬傒惂屼儌乕僪俀偺傒傪僒億乕僩偟偰偄傞丅
乮妱崬傒儌乕僪侽偵偮偄偰偼H8偲屳姺側偺偱丄H8僞乕僎僢僩埶懚晹 (H8C(HEW)
懳墳斉)偑嶲峫偵側傞偲巚傢傟傞丅乯
user_config.h偲user_config.inc偱掕媊偝傟傞MAX_IPM儅僋儘偵傛傝丄僇乕僱
儖偑娗棟偡傞妱崬傒儗儀儖偑曄峏偱偒傞丅
IPM丗Interrupt Priority Mask
乮張棟宯偺巇條偵傛傝丄掕媊僼傽僀儖偑俀偮偁傞偺偱拲堄乯
丂丂僇乕僱儖娗棟壓偺妱崬傒 亖 妱崬傒儗儀儖偑MAX_IPM 埲壓偺妱崬傒
丂丂僇乕僱儖娗棟奜偺妱崬傒 亖 僾儔僀僆儕僥傿儗儀儖(MAX_IPM+1)
丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂埲忋偺妱崬傒偲NMI
弶婜壔儖乕僠儞撪偱偼NMI埲奜偺妱崬傒偼偡傋偰嬛巭偝傟偰偄傞偺偵懳偟偰丄
CPU儘僢僋忬懺偱偼僇乕僱儖娗棟壓偺妱崬傒偺傒偑嬛巭偝傟偰偄傞丅
乮乽僇乕僱儖娗棟奜偺妱崬傒乿偵偮偄偰偼兪ITRON4.0巇條彂傪嶲徠乯
嬶懱揑偵偼丄CPU儘僢僋忬懺偱偼EXR儗僕僗僞偺I價僢僩偵MAX_IPM偺抣傪僙僢僩
偟丄偝傜偵僇乕僱儖撪偺僼儔僌曄悢傪僙僢僩偟偰偄傞丅
DEF_INH偱巜掕偡傞妱崬傒僴儞僪儔斣崋乮inhno乯偼丆H8S偱偺椺奜儀僋僞斣崋傪
昞偟丆偦偺僨乕僞宆乮INHNO乯偼unsigned int宆偵掕媊偝傟偰偄傞丏
DEF_INH偱丆椺奜儀僋僞斣崋偲偟偰桳岠偱側偄抣傗丆奜晹妱崬傒偵懳墳偟側偄
斣崋傪巜掕偟偨応崌偺摦嶌偼曐徹偝傟側偄丏
2.2.1 妱崬傒僴儞僪儔偺搊榐曽朄
jsp-1.4.1 H8S埶懚晹乮gcc斉乯偱偼丄妱崬傒儀僋僞僥乕僽儖傪庤摦偱曇廤偟偰
偄偨偑丄偙傟傪僐儞僼傿僊儏儗乕僔儑儞帪偵DEF_INH( )偺堷悢偐傜帺摦惗惉偡
傞傛偆巇條曄峏偟偰偄傞丅
妱崬傒僴儞僪儔傪搊榐偡傞嶌嬈庤弴
丂僞僀儅妱崬傒傪椺偵愢柧偡傞丅
丂(1) 妱崬傒僴儞僪儔偺婰弎
丂丂丂妱崬傒梫媮傪僋儕傾偡傞張棟偑昁梫側応崌偼妱崬傒僴儞僪儔偺C尵岅
丂丂丂儖乕僠儞丄傑偨偼偦偙偐傜屇偽傟傞娭悢撪偵婰弎偡傞曽朄傪昗弨偲
丂丂丂偡傞丅
丂丂丂僞僀儅妱崬傒偱偺婰弎椺丗
丂丂丂丂jsp/systask/timer.c
丂丂丂 丂 timer_handler( )偐傜屇傃弌偝傟傞hw_timer_int_clear( )
丂丂丂丂丂丂乮jsp/config/h8s-renesas/hw_timer.h乯
丂(2) 僐儞僼傿僊儏儗乕僔儑儞丒僼傽僀儖偺婰弎
丂丂丂僐儞僼傿僊儏儗乕僔儑儞丒僼傽僀儖偺婰弎曽朄偼懠偺僾儘僙僢僒偲摨條
丂丂丂偱偁傞丅
丂丂丂儀僋僞斣崋偼jsp/config/h8-renesas/h8s2xxxf.h偱儅僋儘掕媊偟偰偄傞丅
丂丂丂DEF_INH( )偺戞1堷悢偺妱崬傒僴儞僪儔斣崋偼僾儕僾儘僙僗屻偵惍悢掕悢
丂丂丂偵側偭偰偄側偗傟偽側傜側偄丅乮帺摦妱傝晅偗旕懳墳惍悢抣僷儔儊乕僞乯
丂丂丂儀僋僞僥乕僽儖帺摦惗惉帪傕偦傟傪壖掕偟偰偄傞丅
丂丂丂僞僀儅妱崬傒偱偺婰弎椺丗
丂丂丂丂jsp/systask/timer.cfg
丂丂丂丂DEF_INH(INHNO_TIMER, { TA_HLNG, timer_handler });
丂(3) 妱崬傒僾儔僀僆儕僥傿儗儀儖偺愝掕
丂丂丂弶婜壔張棟偺cpu_initialize( )偱偡傋偰偺妱崬傒傪儗儀儖0偵弶婜壔偟
丂丂丂偰偄傞丅
丂丂丂僨僶僀僗僪儔僀僶偺弶婜壔張棟偱妱崬傒梫場枅偺僾儔僀僆儕僥傿丒儗儀
丂丂丂儖傪愝掕偡傞偨傔偺娭悢偑梡堄偝傟偰偄傞丅
丂丂丂丂
丂丂丂亂C尵岅API亃
丂丂丂丂丂void icu_set_ilv( UH ipr, BOOL mask, INT level )
丂丂丂亂僷儔儊乕僞亃
UH ipr 愝掕偡傞僀儞僞儔僾僩僾儔僀僆儕僥傿儗僕僗僞偺
傾僪儗僗偺壓埵16價僢僩
( IPRA - IPRK 儅僋儘偱愝掕 )
BOOL mask 愝掕偡傞僀儞僞儔僾僩僾儔僀僆儕僥傿儗僕僗僞偺
愝掕斖埻乮忋埵晹暘傑偨偼壓埵晹暘乯偺慖戰
( IPR_UPR丄傑偨偼丄IPR_LOW 儅僋儘偱愝掕 )
INT level 愝掕偡傞妱崬傒儗儀儖 ( 0 - 7 )
丂丂丂亂儕僞乕儞僷儔儊乕僞亃
丂丂丂丂丂側偟
丂丂丂亂婡擻亃
丂丂丂丂丂僀儞僞儔僾僩僾儔僀僆儕僥傿儗僕僗僞偺奺椺奜梫場暿偵丄妱崬傒儗儀儖
丂丂丂丂丂愝掕傪峴偆丅
丂丂丂丂丂偙偺娭悢傪屇傃弌偡慜偵cpu_config.h傪僀儞僋儖乕僪偡傞昁梫偑偁傞丅
丂丂丂亂僞僀儅妱崬傒偱偺婰弎椺亃
丂丂丂丂丂jsp/config/h8s-renesas/hw_timer.h
丂丂丂丂丂丂hw_timer_initialize( )
丂丂丂丂丂 icu_set_ilv( IPRF, IPR_UPR, TPU0_INT_LVL );
丂丂丂愝掕偵梡偄傞抣偼儅僋儘掕媊偝傟偰偄傞丅
丂丂丂
丂丂丂丒IPRA乣IPRK儗僕僗僞偺傾僪儗僗
丂丂丂 jsp/config/h8s-renesas/h8s2339f.h
#define IPRA 0xfec4
#define IPRB 0xfec5
#define IPRC 0xfec6
#define IPRD 0xfec7
#define IPRE 0xfec8
#define IPRF 0xfec9
#define IPRG 0xfeca
#define IPRH 0xfecb
#define IPRI 0xfecc
#define IPRJ 0xfecd
#define IPRK 0xfece
2.2.2 妱崬傒儅僗僋偺曄峏丒嶲徠
H8S埶懚偺婡擻偲偟偰丆EXR儗僕僗僞拞偺IPM偺抣傪曄峏偡傞偨傔偺僒乕價僗僐乕
儖chg_ipm偲丆嶲徠偡傞偨傔偺僒乕價僗僐乕儖get_ipm傪僒億乕僩偟偰偄傞丏
側偍丆IPM偺抣傪昞偡僨乕僞宆IPM偼丆unsigned char宆偵掕媊偝傟偰偄傞丏
偙傟傜偺僒乕價僗僐乕儖偼丆僞僗僋僐儞僥僉僗僩偱CPU儘僢僋夝彍忬懺偺応崌
偵偺傒屇傃弌偡偙偲偑偱偒傞丏chg_ipm偵傛傝IPM傪儗儀儖0埲奜乮偡側傢偪丆
壗傜偐偺妱崬傒偑嬛巭偝傟偰偄傞忬懺乯偵偟偨応崌偱傕丆僨傿僗僷僢僠偼嬛巭
偝傟偢丆chg_ipm偵傛傝曄峏偟偨IPM偺抣偼丆僨傿僗僷僢僠屻偺僞僗僋偵堷偒宲
偑傟傞丏
椺偊偽丆偁傞僞僗僋偱IPM傪儗儀儖1偵曄峏偟偨屻丆壗傜偐偺妱崬傒偵傛傝暿偺
僞僗僋偵愗傝懼傢傞偲丆愗傝懼傢偭偨屻偺僞僗僋偱傕IPM偼儗儀儖1偵側傞丏
chg_ipm傪僒億乕僩偡傞偨傔偵丆妱崬傒僴儞僪儔偺弌擖岥張棟側偳偵僆乕僶
僿僢僪傪惗偠偰偄傞丏偦偙偱丆SUPPORT_CHG_IPM偲偄偆儅僋儘偵傛傝丆偙傟傜
偺僒乕價僗僐乕儖傪僒億乕僩偡傞偐偳偆偐傪愗傝懼偊傜傟傞傛偆偵偟偰偄傞丏
SUPPORT_CHG_IPM偼丆user_config.h偍傛傃user_config.inc偺拞偱儅僋儘
掕媊偝傟偰偄傞丏
H8S埶懚偺妱崬傒儅僗僋偺曄峏丒嶲徠偺偨傔偺僒乕價僗僐乕儖偺巇條偼師偺捠傝丏
(1) chg_ipm 妱崬傒儅僗僋偺曄峏
亂C尵岅API亃
ER ercd = chg_ipm(IPM ipm);
亂僷儔儊乕僞亃
IPM ipm 愝掕偡傋偒 IPM 偺抣
亂儕僞乕儞僷儔儊乕僞亃
ER ercd 僄儔乕僐乕僪
亂僄儔乕僐乕僪亃
E_CTX 僐儞僥僉僗僩僄儔乕
E_PAR 僷儔儊乕僞僄儔乕乮ipm 偑晄惓乯
亂婡擻亃
IPM乮Interrupt Priority Mask乯傪 ipm 偱巜掕偝傟偨抣偵愝掕偡傞丏
IPM偵巜掕偟偨抣偑0乣MAX_IPM偺斖埻奜偺応崌丆E_PAR僄儔乕偲側傞丏IPM 傪0
埲奜偵愝掕偟偨応崌偱傕丆僨傿僗僷僢僠偼嬛巭偝傟側偄丏傑偨丆愝掕偟偨IPM
偺抣偼丆僨傿僗僷僢僠屻傕堷偒宲偑傟傞丏僨傿僗僷僢僠傪嬛巭偟偨偄応崌偵偼丆
dis_dsp偲暪梡偡傟偽傛偄丏
側偍丆偙偺僒乕價僗僐乕儖傪梡偄偰丆IPM傪MAX_IPM乮僇乕僱儖娗棟偺妱崬傒傪
偡傋偰嬛巭乯偵愝掕偟偰傕CPU儘僢僋忬懺偲偼嬫暿偝傟傞丅乮僨傿僗僷僢僠偑
嬛巭偝傟側偄丅乯
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -