![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
最近H8のマイコンを使い始めた者です。
PWMモードの波形を出力するプログラムを作っているのですが、出力波形が出ない事に困っています。
自分が作成したプログラムを以下に示しますので、
詳しい方いましたら、アドバイス頂けたらと思います。
よろしくお願いします。
#include <tlib.h>
#include "3069S.h"
const unsigned ptn[] = {4000, 16000, 2000, 10000};
unsigned long pos;
unsigned long x;
int main()
{
int i=1;
pos=0;
ITU.TSTR.BIT.STR0=0;//タイマのカウントを停止。
ITU0.TCR.BYTE=0x43;//GRBのコンペアマッチでクリア。1/8クロック
ITU0.GRA=10000;//パルス幅を入力(5ms)
ITU0.GRB=20000;//周期を入力(10ms)
ITU.TMDR.BIT.PWM0=1;//ITU0をPWMモードに設定。
ITU.TSTR.BIT.STR0=1;//タイマのカウントをスタート
while(1){
if(ITU.TISRB.BIT.IMFB0){
x=ITU.TISRB.BIT.IMFB0;
ITU.TISRB.BIT.IMFB0=0;
ITU0.GRA=ptn[pos];
pos++;
pos &= 0x03;
}
}
}
No.1ベストアンサー
- 回答日時:
割り込み許可がされてないのでは?
H8でPWMのことは良く知りませんが、ハードウェアマニュアルとか見ていると、「TIERでIMFA割込みを許可してください。」とか書かれています。
この回答への補足
色々とマニュアルを参考にしたりして、解決することができました。
問題だった点は、プログラム本体でなく
#include "3069S.h"のファイルに問題がありました。
お手数おかけしましたが、お世話になりました。
素早い回答に感謝いたします。
早速IMFA,IMFBの割り込みを許可して再度テストを行ってみましたが、現状打破する事ができませんでした。
自分でも、もう1度詳しくハードウェアマニュアルを見直して、テストを行ってみようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# LU分解法のピボット選択機能実装について(C言語・gcc-9) 1 2022/07/22 15:20
- C言語・C++・C# C言語 共用体について コマンドライン引数で値を2つ入力したときに、argv[2]の値をUNI u1 4 2022/04/25 20:34
- C言語・C++・C# LU分解法のピボッティングについて(C言語/gcc-9) 3 2022/07/11 23:10
- Visual Basic(VBA) VBAでArrayListを使う為の「mscorlib.tlb」の参照設定について 3 2022/03/23 19:45
- Java Javaの問題なのですが、「3文字以上の英数字文字列を入力し、文字列の中に文字(9)が出てくるまでの 1 2023/06/06 18:55
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
入力回数のカウントをする方法
-
PICでパルス数をカウントする方法
-
Z80 タイマーの記憶方法について
-
エクセルVBAのIf,Then 構...
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
ライン数とステップ数の違いは?
-
レジストってなんですか?
-
[VBS] 素早くローテート演算したい
-
PC-9801でマシン語を学習するに...
-
素数を求めるプログラム(アセン...
-
03分22秒36のような時間の単位...
-
実行ファイルからソースはみれる?
-
1の補数
-
一般のソフトで画像を扱う場合...
-
汎用レジスタのワーキングビッ...
-
delph5 ボタンの色を変更するに...
-
ビットの取り出し方法
-
16ビットCPUで32ビットの計算方法
-
biosとは人の体でいえば脳のよ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PICでパルス数をカウントする方法
-
PICでパルス数をカウントし、カ...
-
PICマイコンを使った分解能1μs...
-
C言語によるウェイト
-
マイコンのCCRのIビット
-
PICの入出力切り替えの時間がプ...
-
入力回数のカウントをする方法
-
シリアル通信のデータ受信につ...
-
H8を利用したPWMのパルス生成に...
-
PICでスピードメーターを作...
-
RTCの通信方法(I2C、S...
-
組み込みマイコンの誤動作について
-
H8/3069Rでパルス時間間隔測定
-
0xffffとは?
-
エクセルVBAのIf,Then 構...
-
8ビットのデータの、先頭ビット...
-
情報科学の飽和演算、ラップア...
-
ビットシフトってどんな時使うの?
-
ライン数とステップ数の違いは?
-
アセンブラからC言語に変換する...
おすすめ情報