[H8-ML(866)] Re:秋月Cでの割り込みプログラミング
From: tarosuke@xxxxxx (Yuji Tateno)
Date: 2000年11月29日(水)01時18分37秒
>1)スタートアップルーチンでの割り込みベクタの記述の仕方

static void	(*vects[])(void) __attribute__((section(".vect"))) = {
	BOOT_VECTOR,			/****************************** reset */
	0,
	0,
	0,
	0,
	0,
	0,
	0,							/* NMI */
	0,							/* trap #0 */
	0,							/* trap #1 */
	0,							/* trap #2 */
	0,							/* trap #3 */
	IRQ0_HANDLER,					/* IRQ 0 */
	0,							/* IRQ 1 */
	0,							/* IRQ 2 */
後は省略...

みたいに単純にアドレスを並べます。
先頭行はgccの書き方で、日立純正では

#pragma section (vect)
static void	(*vects[])(void)={

みたいな感じになると思います。
秋月Cだとちょっとわからないのですが、アドレス0から割り当てられればおっけいです。

ベクタ全体の並びはH8/3048のハードウェアマニュアル(日立のページにあります)に
載ってますので参照して下さい。


>2)割り込み処理ルーチン(C言語)の記述の仕方

日立純正のコンパイラでは
#pragma interrupt(HogeHoge)
void	HogeHoge(void){
/*ここに処理を書いて、最後に「自分で」フラグを落とす*/
}
のように書きます。

でわでわ〜

---------------------------------------
webmaster@xxxxxxxxxxxx:舘野雄治
http://www.tarosuke.net/:たろすけの部屋
---------------------------------------
スレッド概略
[表示中](起点)


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]