各種システム開発・WEBコンテンツ制作・WEBデザイン・ホームページ制作・インフラ設計・構築・レンタルサーバー・ソフトウェア技術者のアウトソーシング事業を行っております。

9 月
27

I/Oポート

技術スタッフ


I/Oポートとは、マイコンと周辺機器が通信を行うための窓口となる端子や回路のことで、
プログラムからの指令を外部に伝えたり、受け取った外部の情報をプログラムで解析する
ソフトウェアとハードウェアのインターフェイスです。
そのため、I/Oポートを制御するプログラムを作るには、ハードウェアに関する知識が
必要となってきます。
ちなみに、ここでのハードウェアに関する知識とは、回路図の読解、周辺機器を制御する
方法、そしてマイコンのI/Oポートを制御する方法です。
今回は、その中のマイコンのI/Oポートの制御について話をします。

 

・I/Oポートで使う機能を選択する

I/Oポートは、単純な入力と出力を制御するだけはありません。
マイコンにはシリアル通信や割り込み(High→Low、Low→Highの信号の変化を検知して
割り込み用のプログラムを実行する)等の様々な機能が内蔵されていて、それらの機能を
使うための専用のポートが用意されています。
また、これらのポートは汎用ポートと重複して割り当てられていて、切り替えられる形に
なっています。
そのため、初期化の時にポートをどの機能に割り当てるかを設定する必要があります。
設定の方法は、シリアル通信ならシリアル通信のレジスタがあるので、そこにデータを
セットすることにより、シリアル通信のポートとして使えるようになります。
なお、データをセットしなかった場合、そこは汎用ポートになります。

 

・入出力の方向を決める

マイコンに搭載されている機能を使う場合は入出力が決まっていますが、そうでない
場合は入力で使うか出力で使うかを指定しなければなりません。
こちらは、入出力を指定する方向レジスタがあるので、そこにデータをセットします。
なお、データをセットしなかった場合は、あらかじめ初期値があるので(マイコンの
仕様書に記載されています)、その方向(入出力)になります。

 

・I/Oポートにデータを入出力する

ポートを制御すると言っても、直接データを入力したり出力したりはしません。
データの入出力にもレジスタがあり、出力の場合はレジスタにデータをセットするとポート
からデータが出力して、入力の場合はポートに入ってきたデータをレジスタに反映します。

 

・その他のI/Oポート

I/Oポートの中には、プログラムで制御しないポートがあります。
これらは、マイコンを動かすための動力となります。
電源電圧(VDD):マイコンが動作する電圧を供給するポートです。
グランド(VSS):電気回路には、グランドという供給した電源を下に流す配線があり、
そこに接続するポートです
リセット(RESET):マイコンをリセットするための信号を入力するポートです。
X1/X2:プログラムを動かすには一定間隔のクロックが必要で、そのクロックを生成する
発信回路に接続するポートです。

だいぶ専門的な話になってしまいましたが、組み込みソフトウェアではこんなことを
プログラムで制御しているんだと、分かっていただければと思います。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

月別アーカイブ

カテゴリ