C - U-netSURF
C - U-netSURF C - U-netSURF
} // メ゜ンルルーヴハ ------------------------------------------------------ while(1){ IO.PDR6.BYTE = ~DispData; // ポーヴダ6に 表 示 する } /************************************************************************ IRQ0 割 込 み ************************************************************************/ #pragma regsave (intprog_irq0) void intprog_irq0(void) { DispData++; // On → ゜ンルクリメンルダ IRR1.BIT.IRRI0 = 0; // 割 込 み 要 求 ネラエクリア } /************************************************************************ IRQ1 割 込 み ************************************************************************/ #pragma regsave (intprog_irq1) void intprog_irq1(void) { DispData--; // On → デクリメンルダ IRR1.BIT.IRRI1 = 0; // 割 込 み 要 求 ネラエクリア } /************************************************************************ IRQ2 割 込 み ************************************************************************/ #pragma regsave (intprog_irq2) void intprog_irq2(void) { DispData = rotlc(1,DispData); // On → 左 ローヴテーヴダ IRR1.BIT.IRRI2 = 0; // 割 込 み 要 求 ネラエクリア } 割 込 みを 使 うためにはソースファイルだけではなく,HEW が 自 動 生 成 する‘intprg.c’を 修 正 す る 必 要 があります。 下 記 のリストをご 覧 ください。 /***********************************************************************/ /* */ /* FILE :intprg.c */ /* DATE :Thu, Jan 10, 2008 */ /* DESCRIPTION :Interrupt Program */ /* CPU TYPE :H8/3687 */ /* */ /* This file is generated by Renesas Project Generator (Ver.4.9). */ /* */ /***********************************************************************/ #include 63 TK-3687mini ユーザーズマニュアル C 言 語 版
extern void intprog_irq0(void); extern void intprog_irq1(void); extern void intprog_irq2(void); #pragma section IntPRG // vector 1 Reserved 追 加 // vector 2 Reserved // vector 3 Reserved // vector 4 Reserved // vector 5 Reserved // vector 6 Reserved // vector 7 NMI __interrupt(vect=7) void INT_NMI(void) {/* sleep(); */} // vector 8 TRAP #0 __interrupt(vect=8) void INT_TRAP0(void) {/* sleep(); */} // vector 9 TRAP #1 __interrupt(vect=9) void INT_TRAP1(void) {/* sleep(); */} // vector 10 TRAP #2 __interrupt(vect=10) void INT_TRAP2(void) {/* sleep(); */} // vector 11 TRAP #3 __interrupt(vect=11) void INT_TRAP3(void) {/* sleep(); */} // vector 12 Address break __interrupt(vect=12) void INT_ABRK(void) {/* sleep(); */} // vector 13 SLEEP __interrupt(vect=13) void INT_SLEEP(void) {/* sleep(); */} // vector 14 IRQ0 __interrupt(vect=14) void INT_IRQ0(void) {intprog_irq0();} // vector 15 IRQ1 __interrupt(vect=15) void INT_IRQ1(void) {intprog_irq1();} // vector 16 IRQ2 __interrupt(vect=16) _interrupt(vect=16) void INT_IRQ2(void) {intprog_irq2();} // vector 17 IRQ3 __interrupt(vect=17) void INT_IRQ3(void) {/* sleep(); */} // vector 18 WKP __interrupt(vect=18) void INT_WKP(void) {/* sleep(); */} // vector 19 RTC __interrupt(vect=19) void INT_RTC(void) {/* sleep(); */} // vector 20 Reserved 修 正 修 正 修 正 // vector 21 Reserved // vector 22 Timer V __interrupt(vect=22) void INT_TimerV(void) {/* sleep(); */} // vector 23 SCI3 __interrupt(vect=23) void INT_SCI3(void) {/* sleep(); */} // vector 24 IIC2 __interrupt(vect=24) void INT_IIC2(void) {/* sleep(); */} // vector 25 ADI 64 TK-3687mini ユーザーズマニュアル C 言 語 版
- Page 14 and 15: 5 プロパティ ‘ 設 定 ’
- Page 16 and 17: ハイパーターミナルを 起
- Page 18 and 19: P60~67 の LED が 順 番 に 点
- Page 20 and 21: 第 3 章 マシン 語 でプロ
- Page 22 and 23: マシン 語 に 変 換 する
- Page 24 and 25: キーボード:‘F’,‘6’,‘
- Page 26 and 27: 3.プログラムをデバッグす
- Page 28 and 29: 第 4 章 C 言 語 でプログラ
- Page 30 and 31: 3.C 言 語 でプログラムを
- Page 32 and 33: まず,1「ワークスペース
- Page 34 and 35: 「 新 規 プロジェクト-5/9-
- Page 36 and 37: これで,プロジェクトワー
- Page 38 and 39: 「セクション 設 定 」ダ
- Page 40 and 41: もう 一 度 確 認 しましょ
- Page 42 and 43: HEW のワークスペースウィ
- Page 44 and 45: 4.プログラムのダウンロー
- Page 46 and 47: ダウンロードが 終 了 す
- Page 48 and 49: 実 習 には,TK-3687mini,Timer&LE
- Page 50 and 51: ポートプルアップコント
- Page 52 and 53: 記 述 します。 IO.PCR6 = 0xff
- Page 54 and 55: では,コーディングしてみ
- Page 56 and 57: ***********************************
- Page 58 and 59: 練 習 問 題 (1) ( 次 のよう
- Page 60 and 61: 外 部 割 込 みに 使 用 す
- Page 62 and 63: 回 路 図 Timer&LED Display(B6092
- Page 66 and 67: __interrupt(vect=25) void INT_ADI(v
- Page 68 and 69: タイマ V の 設 定 用 レジ
- Page 70 and 71: タイマ V と 割 込 みを 使
- Page 72 and 73: } // 点 滅 LedCnt = LedCnt + 1; i
- Page 74 and 75: 4.タイマ Z H8/3687 に 内 蔵
- Page 76 and 77: 75 TK-3687mini ユーザーズマ
- Page 78 and 79: } while(1){} /*********************
- Page 80 and 81: __interrupt(vect=32) void INT_SCI3_
- Page 82 and 83: 調 歩 同 期曋 式 シリアル
- Page 84 and 85: シリアルポートのプログ
- Page 86 and 87: さて,プログラムリストは
- Page 88 and 89: hex_dt = hex_dt / 0x10; if (hex_dt>
- Page 90 and 91: H8/3687 の AD コンバータ H8/3
- Page 92 and 93: この AD 値 をそのまま 使
- Page 94 and 95: void void void void void void void
- Page 96 and 97: } IO.PCR6 = 0xff; //ポーヴダ6,P
- Page 98 and 99: IO.PDR3.BYTE = 0x00 ^ DRV_LOGIC; IO
- Page 100 and 101: 第 6 章 μITRON を 実 装 し
- Page 102 and 103: 2.カーネルライブラリの
- Page 104 and 105: 次 に,HOS のソースファイ
- Page 106 and 107: 次 に , CPU や 開 発 環 境
- Page 108 and 109: ところで,このままビルド
- Page 110 and 111: mov.b #18, r0l bra int_handler _hos
- Page 112 and 113: 3.プロジェクトの 作 成 HOS
}<br />
// メ゜ンルルーヴハ ------------------------------------------------------<br />
while(1){<br />
IO.PDR6.BYTE = ~DispData; // ポーヴダ6に 表 示 する<br />
}<br />
/************************************************************************<br />
IRQ0 割 込 み<br />
************************************************************************/<br />
#pragma regsave (intprog_irq0)<br />
void intprog_irq0(void)<br />
{<br />
DispData++;<br />
// On → ゜ンルクリメンルダ<br />
IRR1.BIT.IRRI0 = 0;<br />
// 割 込 み 要 求 ネラエクリア<br />
}<br />
/************************************************************************<br />
IRQ1 割 込 み<br />
************************************************************************/<br />
#pragma regsave (intprog_irq1)<br />
void intprog_irq1(void)<br />
{<br />
DispData--;<br />
// On → デクリメンルダ<br />
IRR1.BIT.IRRI1 = 0;<br />
// 割 込 み 要 求 ネラエクリア<br />
}<br />
/************************************************************************<br />
IRQ2 割 込 み<br />
************************************************************************/<br />
#pragma regsave (intprog_irq2)<br />
void intprog_irq2(void)<br />
{<br />
DispData = rotlc(1,DispData); // On → 左 ローヴテーヴダ<br />
IRR1.BIT.IRRI2 = 0;<br />
// 割 込 み 要 求 ネラエクリア<br />
}<br />
割 込 みを 使 うためにはソースファイルだけではなく,HEW が 自 動 生 成 する‘intprg.c’を 修 正 す<br />
る 必 要 があります。 下 記 のリストをご 覧 ください。<br />
/***********************************************************************/<br />
/* */<br />
/* FILE :intprg.c */<br />
/* DATE :Thu, Jan 10, 2008 */<br />
/* DESCRIPTION :Interrupt Program */<br />
/* CPU TYPE :H8/3687 */<br />
/* */<br />
/* This file is generated by Renesas Project Generator (Ver.4.9). */<br />
/* */<br />
/***********************************************************************/<br />
#include <br />
63<br />
TK-3687mini ユーザーズマニュアル C 言 語 版