ここから本文です

マイコンにおいて PORT と LAT の違いって何なんでしょうか? 「LATは出力だ!」...

adg********さん

2020/3/1014:40:47

マイコンにおいて
PORT と LAT の違いって何なんでしょうか?
「LATは出力だ!」と言われたのですが
PORTも入出力可能だと思うのですが
どういう事なのでしょうか。

閲覧数:
26
回答数:
1

違反報告

ベストアンサーに選ばれた回答

nac_tnkさん

2020/3/1015:20:08

マイコン、というよりもPICの話ですよね?

PORTもLATも書き込む作業としては同じです。
ただし、書き込み作業には「読出し-計算-書き込み」という流れで書き込みます。
で、重要な違いは読み込むときに、PORTは実際のピンの電圧レベルを見ます。
LATはレジスタの値を見ます。

で、基本的に出力時にはLATレジスタ、入力時にはPORTレジスタを使います。
そうしないと↓のような誤動作に繋がります。

・PICを高クロックで駆動している場合、ピン先の電圧の反応が遅れます。
例えばポートAが全てLOW出力の状態から、
RA0=1;
RA1=1;
とした時に、RA1を書きこむ際に最初にPORTAを読み込みます。
その時に、RA0がまだLOWレベルな為、RA0をLOWとして書きだしてしまいます。

・マイコンの出力は小さいので、多くの電流を流そうとすると出力ピンの電圧が下がります。
例えば30mAや40mA流せばHIGH出力であるにもかかわらずピン先は1V以下になります。
そのような時にPORTで読んだ場合はHIGH出力であるにも拘らず、LOWと読み込まれます。

質問した人からのコメント

2020/3/14 02:06:43

ありがとうございます!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる