- メインページ
- ネームスペース
- クラス
- ファイル

- ファイル一覧
- ファイルメンバ

# cec.h

説明を見る。

    00001 #pragma once
    00002 /** \file cec.h
    00003  *  \brief コア・イベント管理ヘッダーファイル
    00004  *  \author アナログ・デバイセズ株式会社
    00005  *
    00006  * コア・イベント・ハンドラ登録用のヘッダーファイルである。
    00007   */
    00008
    00009
    00010 /** コア・イベント管理
    00011 *
    00012 * アプリケーション・プログラム用のコア・イベント管理名前空間。
    00013 * Blackfinコアの各イベントに対応するイベント・ハンドラをこの名前空間
    00014 * におく。通常は割込みに対応するイベント・ハンドラを置く。
    00015 *
    00016 * cecの中のイベント・ハンドラ内部には処理の実体をおかず、各デバイスの
    00017 * サービス・ルーチンを呼ぶようにする。サービス・ルーチン内部は
    00018 * 呼び出されたら自分が担当する割り込みが発生しているかを調べ、
    00019 * 発生しているなら処理を行って真を返す。発生していないなら
    00020 * 偽を返す。
    00021 * cec内部のイベント・ハンドラ内部では
    00022 * \code
    00023  if ( デバイス1の割り込みサービス・ルーチン() )
    00024      return;
    00025  if ( デバイス2の割り込みサービス・ルーチン() )
    00026      return;
    00027  if ( デバイス3の割り込みサービス・ルーチン() )
    00028      return;
    00029 * \endcode
    00030 * のようにサービス・ルーチンを並べることで、同じイベント順位に複数のデバイスからの割り込みが
    00031 * 同居している場合も記述を簡潔に行える
    00032 */
    00033 namespace cec{
    00034 /** コア・イベント・ハンドラの登録
    00035 *
    00036 * cec内部のイベントハンドラをシステムに登録する
    00037 */
    00038     void init(void);
    00039 /** 処理の開始
    00040 *
    00041 * ダミー関数。何もしない。
    00042 */  void start(void);
    00043 };
    00044
    00045