
PICでちょっとした電子工作をしています。
18pinのPICを使い、スイッチの組み合わせを適宜変更し出力する回路としてを組んでいます。
PortA(8pinを全て入力/全ピンpullup)
PortB(8pinを全て出力)
スイッチが1~8まであり、例えば1のスイッチが押された場合、3のスイッチが押されたことにして出力するというような、
スイッチの組み合わせを変更する機能を持たせます。
このスイッチの入出力組み合わせを複数持たせることが今回の目的です。
ロータリースイッチを使い8種類の設定ができる用にするとして、割り当て設定用として新たに3ピンが必要です。
ですが、上記のようにPortAB共に全ピン利用しており、単純に割り当てることが出来ません。
これをどうにかして、利用済みのピンと共存させ18pinで済ませることができないでしょうか。
スイッチの組み合わせは、PIC起動したら変更されることがありません。
ですので、PIC起動時に一度だけロータリースイッチの状態を読めばいいことになります。
なお出力の先につながる回路は、プルアップされたアクティブローの入力端子です。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
7種類の設定でいいのなら、
ロータリースイッチを切り離す(ハイインピーにする)スイッチをつければ良いのでは?
PortAの3ピンに切り離すスイッチ経由でロータリースイッチ
切り離された状態はpullupでall highになるのでわかりますよね。
all high以外の7つの設定は使えます。
この回答への補足
うーんちょっとわかりません。
ロータリースイッチの先に、さらにスイッチを入れて起動後に切り離す
ということでしょうか。
それでは、毎回起動時に一手間かかりますよね。
コストや実装手間を考えても、28pinの16F57を利用したほうがいいよう
な気がしてしました。
というか、そもそも入力にボタンがついているのだから、
起動時に特定のボタンを同時に3秒以上押した場合に、その組み合わせに設定を変更し、EEPROMに変更したナンバーを記録しておけばいいですね。
自己解決ですが、ソフトウェアでやってしまおうとおもいます。
ありがとうございました。
No.2
- 回答日時:
こんにちは。
あんまりスマートではありませんが。。。
PortAのピンを一つ出力にふり、2×7のマトリクスを組んでダイナミックスキャンしてはどうでしょう。
また、#1さんが指摘されるように、同時押しはちょっと工夫がいりますね。
No.1
- 回答日時:
まず入力スイッチを「同時に押す」ことに対応する必要があるかどうか, ですね. 不要ならエンコーダをかませば原理的には問題が解決するはずです.
「同時押し」に対応しなきゃならないとすると, 「ロータリースイッチを起動時のみ有効にする」ような回路を作る, のかな? 単純に思いついた方法だと
ポートA: ロータリースイッチおよび変更前のスイッチ入力. MUX でも噛ます?
ポートB: 変更した後のスイッチの出力および「ロータリースイッチを殺す」機能用の出力. FF 1個でできるかもしれない.
ってところでしょうか. あまりにも単純に考えているので, もっといいやり方を見たいものですが....
この回答への補足
ボタンですが、同時押しには対応する必要があります。
なおあまり、デバイスは増やしたくないと考えております。
PIC一個とロータリースイッチ、適当な周辺回路で行きたいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 工学 1つのタクトスイッチで複数の並列回路を閉じ、アースにつなげることができるスイッチはありますか。 2 2022/08/06 10:38
- 電気工事士 人感センサー式スイッチについて 2 2022/10/03 09:12
- DIY・エクステリア 電子工作や工学にお詳しい方、お助けください。 5 2022/06/14 19:55
- 照明・ライト 調光スイッチとLED電球の組み合わせについて 5 2022/11/21 11:46
- 電気・ガス・水道 パイロットスイッチの電圧降下について 3 2023/03/05 01:14
- その他(住宅・住まい) スイッチ増設 5 2023/05/04 21:46
- Windows 10 PCのスリープ復帰時のPIN 入力を省略 したい 4 2023/01/10 09:03
- 電気・ガス・水道 井戸ポンプ圧力スイッチ交換後水を出すとスイッチが断続的に入り切りを繰り返してしまいます 4 2022/08/13 16:27
- モニター・ディスプレイ Dell G2422HSのディスプレイの入力信号の切替器やリモコンを教えてください 4 2023/05/30 17:56
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一つのスッチングハブに異なる...
-
L3スイッチの仮想化について
-
AUTO-MDIX機能の無効化
-
最大スタックサイズを大きくす...
-
プログラムの規模を表す単位「k...
-
アドレス指定について
-
ブラインドタッチ
-
ドライブ段の意味(回路用語)
-
タイピングソフトについてお願...
-
CIDR形式のIPアドレスについて
-
自分の作った文章のタイピング...
-
hdmiはパラレル?シリアル?
-
磁気ディスクのアクセス時間に...
-
速く書けるようにしたい!
-
タイピングの上達方法を教えて...
-
コンパイラオプション
-
ubuntuで デイスク/deb/loopと...
-
Visual Basic勉強中です
-
二分探索木の行きがけ順走査
-
グローバル関数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ネットワークアイコンが黄色三...
-
ルータの負荷対策でL2スイッチ...
-
100台のPCをLAN接続する時に必...
-
Native VLANの変更
-
AUTO-MDIX機能の無効化
-
固定電話機のパソコンとの連動
-
スイッチHUBにて構成したネット...
-
MACアドレスとは何ですか?パソ...
-
【QNAP NAS】LANポートについて...
-
一つのスッチングハブに異なる...
-
169.254.・・.・・ のIPの機器...
-
L2スイッチの管理VLANに...
-
トランクリンクについて
-
CiscoスイッチのVLANの設定につ...
-
PICマイコンで、ピンが足りませ...
-
サーバーアクセスの手段につい...
-
社内LANのネットワークトラフィ...
-
LANケーブルを抜いたところ、複...
-
プログラムの規模を表す単位「k...
-
ubuntuで デイスク/deb/loopと...
おすすめ情報