忍者ブログ
グラビアアイドルについて語るブログ。
[32] [31] [30] [29] [28] [27] [26] [25] [24] [23] [22]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

PWM で LED の明るさを変える実験の続きです。

前回の実験では、割り込みハンドラ内でデューティ比を変更しようとすると動作しなかったと書きましたが、やり直すと動作してしまいました。

多分つまらないミスをしていたのだと思いますが、シリアルやキャラクタ LCD などで簡単な確認くらいはした方がいいですね(汗)

以下、主要なコードです。

#define T 256

static int w = 0;
static int diff = 1;

// ポート初期化
void init_port()
{
// ポート35の設定 (タイマ出力)
PFC35 = 1; // TOP11出力
PMC35 = 1; // TIP11入力/TOP11出力
}

// タイマ初期化
void init_timer()
{
// TMP1の設定
TP1CE = 0; // 動作禁止
TP1CKS = 7; // fxx/512
TP1MD = 4; // PWM出力モード
TP1OE1 = 1; // TOP11出力許可
TP1OL1 = 0; // TOP11ハイレベルスタート
TP1CCR0 = T - 1;
TP1CCR1 = w;
TP1CE = 1; // 動作許可
}

// 割り込み初期化
void init_intc()
{
// INTTP1CC0
TP1CCPR0 = 0; // 割り込み優先度 = 0
TP1CCMK0 = 0; // 割り込み許可
}

// タイマ割り込みハンドラ
void timer_int_handler()
{
w += diff;
if (w == 0 || w == T) diff = -diff;
TP1CCR1 = w;
}


【備考】gcc で開発しています。
PR

コメント


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


トラックバック
この記事にトラックバックする:


忍者ブログ [PR]
ブログ内検索
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新コメント
[07/07 tiffany jewelry uk]
[09/17 車載モニター・阿蘇テック]
[08/30 愛]
[06/12 シモネッタ]
[06/11 arms22]
最新トラックバック
フリーエリア
あわせて読みたい
    Firefox 2 無料ダウンロード
    バーコード
    プロフィール
    名前:
    シモネッタ
    性別:
    非公開
    カウンター
    アクセス解析