デジタルちんぶろぐ

デジタルな話題

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  268  : 記事  0  : コメント  4383  : トラックバック  79

ニュース


技術以外は
ちんぶろぐ

記事カテゴリ

書庫

日記カテゴリ

この間資料を買ってきたおかげでプログラムが組めそうになったので、AKI-H8-USBで簡単なプログラムを組んでみた。

PA0-PA3がSW0-SW3に接続されていてPB0-PB3がLED0-LED3に接続されているので、PAの入力をPBに出力すればボタンに対応するLEDが光りそう。

で、お試しプログラム。

 

#define PADDR *((volatile unsigned char*) 0xffffd1)
#define PADR *((volatile unsigned char*) 0xffffd3)
#define PBDDR *((volatile unsigned char*) 0xffffd4)
#define PBDR *((volatile unsigned char*) 0xffffd6)

const int ga = 1;
int gb = 2;
int gc;

int main(void)
{
  unsigned char a;

  PADDR = 0xf0; /* ポートAを入力に設定 */
  PBDDR = 0xff; /* ポートBを出力に設定 */

  while(1) {
    a = PADR; /* ポートA読み出し */
    PBDR = a; /* ポートBに出力 */
  }

  return 0;
}

ポートAをすべて入力にしているのは良くない気がするけど、多分大丈夫だろう。

 

H8_LED

わーい。

使わないグローバル変数が定義されているのはどのセクションに配置されるか見たかったからで意味は無いです。

 

投稿日時 : 2008年1月7日 23:41

コメント

# re: 点けてみた 2008/01/07 23:47 CH3COOH(酢酸)
わー、楽しそうだぁ(´∀`*)

PGなりたての頃に買ったH8セットは何処かへ消えちゃいましたねー。一部は発見されてInterfaceのオマケに付いてきた基盤に半田付けされてしまいましたw

# re: 点けてみた 2008/01/08 0:05 スーパーあんどちん
>> CH3COOH(酢酸)さん
これくらいのプログラムでお試ししてるのは楽しいですよ。仕事じゃないし。
僕は引越しのドサクサでInterfaceのオマケ基板が行方不明になってます。
今手元にあれば、あれでやっても良かったんですけどね。
# 「H8でやれ!」っていうリクエストがあったってのもあるけど。



# re: 点けてみた 2008/01/08 8:13 774RR
ポートを出力にする場合は周辺回路側の誤動作防止のために
P*DR に値を設定した後で P*DDR に1を書かなきゃだめだぞ
わかってて省略してるんだと思うが

# re: 点けてみた 2008/01/08 19:11 スーパーあんどちん
ご指摘ありがとうございます。
今回のお試しの内容と使用しているポートではそのような問題は起きません。


# re: 点けてみた 2008/01/08 22:27 スーパーあんどちん
一応補足。
PA4-7はNC、PB4がLCD-RS、PB7がLCD-EでPB5-6がNCです。
LEDが負論理で、PBの初期値が00なので出力にした時LEDが点灯してしまうことになりますが、今回のお試しでは実害が無いので良しとしてます。

PB0-3がLCDのDB4-DB7と共有されてるからLCDを制御すると嫌でもLEDが光っちゃうんですね、この基板。




# re: 点けてみた 2008/01/09 8:30 774RR
うん。問題ないことは知ってる。同じ奴持ってるし。
第三者読者が P*DDR→P*DR の順で初期化していいんだ、と思うことを防止したいだけ

インバータの憑いてるポートに P*DDR を設定した瞬間に全アーム短絡で即死
ってこともやりかねないからさ

# 初スピーカーを終えて 2008/07/29 0:54 The beast of halfpace
初スピーカーを終えて

# 初スピーカーを終えて 2008/07/29 0:58 The beast of halfpace
初スピーカーを終えて

Post Feedback

タイトル
名前
Url:
コメント: