FC2カウンター

現在の訪問者数

現在の閲覧者数:

カレンダー

01 | 2017/03 | 02
- - - 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 31 -

プロフィール

剣菱P

Author:剣菱P
剣菱Pと申します。
性別:男
年齢:27
二兎を追って一兎も得られないタイプ

マイコンやプログラミング、ニコニコ動画、雑記等
方向性は見えずとも、ちょっとずつ更新していく予定です!

リンクフリーです。
こんなブログでよかったらよろしくお願いしま~す。

公開メール kenbishiP@gmail.com

検索フォーム

最新記事

最新コメント

カテゴリ

メールフォーム

名前:
メール:
件名:
本文:

月別アーカイブ

最新トラックバック

リンク

ブロとも一覧

ブロとも申請フォーム

ランキング

ランキング参加中です。気が向いたらクリックしてあげてください。


にほんブログ村 その他趣味ブログへ
にほんブログ村 その他趣味ブログ 趣味の工作へ

スポンサーサイト


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

FPGAでVGA H8 3664»

コメント

コメントの投稿













管理者にだけ表示を許可する

H8+CPLD


CPLDを使ってエンコーダの信号を簡略化させたので

マイコンの外部割込みで簡単に信号が読めるようになったはず

これで、複数のエンコーダにも対応できるかな?

とりあえず、簡略化したエンコーダの信号をH8で読み取ってみる

H8の開発環境はGCC Developer Liteを使ってます。

#include <3664.h>
#include "mylcd.h"
long count = 0;

void int_irq0(void){
  IRR1.BIT.IRRI0 = 0;
  if(IO.PDR1.BIT.B0 == 0) count++;
  else count--;

}

int main(){
  DI;
  IO.PMR1.BYTE = 0xfc;    //IRQ0-3使用
  IEGR1.BYTE = 0xef;     //IRQ0-3 立ち上がりエッジ選択
  IENR1.BYTE = 0x9f;     //IRQ0-3 イネーブル
  IRR1.BYTE = 0x00;       //IRQ0-3 割り込みフラグクリア

  EI;
  LCD_init(16);
  IO.PCR1 = 0x00;
  while(1){
    LCD_locate(1,1);
    LCD_dataout2(count,5);
  }
}


LCD用のヘッダファイル mylcd.hを自作して使ってますが、
てきとうにつくってしまったので、関数が整理されてません。


ロータリーエンコーダの回転速度があまりに速いと無理でしょうけど、

これでとりあえずIRQが4つあるので エンコーダも4つ読めるかな

同時に割り込み入ったりしてうまく読めないのかな?

試してみないとわからないけど、エンコーダが手元に一つしかない



回転方向に合わせてカウントが上がったり下がったり
[広告] VPS
スポンサーサイト

FPGAでVGA H8 3664»

コメント

コメントの投稿













管理者にだけ表示を許可する


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。