You are not logged in. This forum allows only logged in users to post. If you want to post in the forum, please log in.
Download
Magazine
Develop
Account
Download
Magazine
Develop
Login
Forgot Account/Password
Create Account
Language
Help
Language
Help
×
Login
Login Name
Password
×
Forgot Account/Password
Category:
Software
People
PersonalForge
Magazine
Wiki
Search
OSDN
>
Find Software
>
System
>
Operating System Kernels
>
Hyper Operating System(ITRON仕様OS)
>
Forums
>
Developers
>
isig.timでのタイマハンドラ呼出しについて
Hyper Operating System(ITRON仕様OS)
Fork
Description
Project Summary
Developer Dashboard
Web Page
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
History
Downloads
List of Releases
Stats
Source Code
Code Repository list
Git
hos-v4a
CVS
View Repository
Ticket
Ticket List
Milestone List
Type List
Component List
List of frequently used tickets/RSS
Submit New Ticket
Documents
Communication
Forums
List of Forums
Developers (761)
Help (688)
Open Discussion (342)
Mailing Lists
list of ML
hos-cvs
hos-git
News
Forums:
Developers
(Thread #37733)
Return to Thread list
RSS
isig.timでのタイマハンドラ呼出しについて (2016-05-20 01:04 by
komet
#78071)
Create ticket
ohmshaのITRONプログラミング入門で勉強中の者です。
h8/3664でのsampleプログラムでの質問です。
システムクロック生成のためisig_tim.cというファイルがありますが、
そのなかで、タイマハンドラ呼出しというコードがあります。
isig_tim.cの66行目で
/* タイマハンドラ呼び出し */
tim_ptr->timhdr(tim_ptr, tic);
という記述があります。
knl_tim.hというファイルの
/* タイマオブジェクト構造体 */
typedef struct t_kernel_tim
{
struct t_kernel_tim *next;
struct t_kernel_tim *prev;
FP timhdr;
} T_KERNEL_TIM;
で関数ポインタになっているような
記述は見つけたのですが、
その先が見つかりません。
timhdrとは
どこかに
タイマハンドラとして
記述があるのでしょうか?
すみませんがご教授お願いいたします。
Re: isig.timでのタイマハンドラ呼出しについて (2016-05-20 09:23 by
hamayan
#78072)
Create ticket
お世話になっております。
66行目辺りのループ文では、時間管理機能のサービスコールで登録されたハンドラを
呼び出しています。
周期ハンドラやアラームハンドラなどです。
以上、よろしくお願いいたします。
[メッセージ #78071 への返信]
> ohmshaのITRONプログラミング入門で勉強中の者です。
> h8/3664でのsampleプログラムでの質問です。
>
> システムクロック生成のためisig_tim.cというファイルがありますが、
> そのなかで、タイマハンドラ呼出しというコードがあります。
>
> isig_tim.cの66行目で
> /* タイマハンドラ呼び出し */
> tim_ptr->timhdr(tim_ptr, tic);
> という記述があります。
>
> knl_tim.hというファイルの
> /* タイマオブジェクト構造体 */
> typedef struct t_kernel_tim
> {
> struct t_kernel_tim *next;
> struct t_kernel_tim *prev;
> FP timhdr;
> } T_KERNEL_TIM;
> で関数ポインタになっているような
> 記述は見つけたのですが、
> その先が見つかりません。
>
> timhdrとは
> どこかに
> タイマハンドラとして
> 記述があるのでしょうか?
> すみませんがご教授お願いいたします。
Reply to
#78071
Re: isig.timでのタイマハンドラ呼出しについて (2016-05-22 16:01 by
ryuz
#78079)
Create ticket
お世話になります。Ryuzです。
タイマを使うオブジェクトの timhdr への登録は
alm\ini_alm.c 28行目
ini_cyc.c 28行目
kcre_cyc.c 43行目
などにあります。
ITRON機能のなかで時間を扱うものはいくつかありますが、HOSでは内部的に1つのキューに統合しており、各種静的API/動的APIでの生成オブジェクトの状態に応じて登録が行われます。
よろしくお願いいたします。
Reply to
#78071