ユーザー名:

パスワード:


パスワード紛失

新規登録
ビートス オンラインショップへ
アブソリュート株式会社様へ

マトリックスに連射回路を付けようとしているのですが、上手く行きません

前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 | 投稿日時 2018-4-30 6:40 | 最終変更
eviver  <ROOKIE>   投稿数: 2
 一応、過去スレを確認しましたが問題解決になりそうな投稿がなかったので質問させて下さい。

 マトリックスのボタン(ジョイパッド)に連射を付けたいのですがどうも上手く行きません。

 実験的に、01ボタン(7pinと1pin)にジョイパッドボタン1を設定して連射回路を接続してみました。
 連射回路は、lm358で発振させた(1chのみ使用でのcr発振からの)矩形波をon/off用の信号として、それを2sc1815のbへ10k抵抗を挟んで入力。eはグランドへ。5vに1kの抵抗を挟んでcへ。その抵抗の上から01ボタン(7pin→ダイオード→ココに入れた→1pin)へと短絡させました。
 すると、01だけでなく順に配線してないにも拘らず07、13、19、25、31迄が連射になってしまいました。順番に押されいるような感じで。

 次に2sc1815のcを直接01ボタン(7pin→ダイオード→ココに入れた→1pin)に接続してみても如上と同様になってしまいました。

 基本的に連射回路の接続方法が間違っているのでしょうか?
 入れ方をご教示頂けませんでしょうか?



追伸 ふと思い付きました。(未だ試してません)
(7pin→ダイオード→ボタン→1815のc→同1815のe→1pin)でいいのかなと。
 offにしたい時はトランジスタをOnにしとけば切れる訳だし。
 でもこれだと1.3vくらいの電圧低下が発生しますが、そこはどうなんでしょう?

*お詫び 投稿を編集しようとしてて何か返信みたいなとこにほぼ同じ内容を書いてしまいました。すいません。
イイね!の数:0
返信する
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2018-4-30 7:59
 
 質問した後にふ、と思い付きました。(未だ試していませんが)

 もしかしたら単純に、(7pin→ダイオード→ボタン→2sc1815のc→同1815のe→1pin)と接続すれば良いんでしょうか?
 連射offにする場合、常にbに電圧掛けておけば良い訳だし……でもこれだと、ダイオードとトランジスタで1.3vくらい電圧低下しますが……問題無いのでしょうか?
 複数スイッチ同時押しの時に認識しないとか、色々問題ありそうな気がしますが。
イイね!の数:0
返信する
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2018-5-3 18:15 | 最終変更
disklessfu  <EXPERT>   投稿数: 211
マトリックスの内の1つのボタンにパルスを入力すると、他の、実際には押していないボタンが押されたことになってしまう、
という問題が生じているわけですね。

最初に伝えたいアドバイスとしては、
もし、マトリックス入力の基本原理をご存知ないのなら、まずそれを勉強するべきだと思います。

その場合は、当該のファームウェアソースは公開されている筈なので、それを読んでみるとか、
もしくはどこかにマトリックス入力の基本原理をわかりやすく説明しているページがあるでしょうから、それを利用すればいいと思います。

私は、マトリック入力の基本原理ぐらいは理解しているつもりです。過去にマトリックス入力のファームウェアを書いたこともあります。
でも、今回のeviverさんの状況をズバリ説明することはできません。


一般的な意見として、以下のようなことは言えます。

・矩形波の周波数が10Hz未満ぐらい(ゆっくり)だと、このようなことはまず発生しません。
・この問題は、矩形波の周波数がある程度高いことと、マトリックスの順次スキャンのタイミングと、
 回路内(ボタン内?)のコンデンサ類の容量との相性の問題で生じている可能性が高い。

なので、簡単なアドバイスとしては、
矩形波の周波数を下げる=連射速度を下げる、回路内(ボタン内?)のコンデンサを交換する、等の対策が考えられると思います。
これと同類の対策としては、ファームウェア内の順次スキャンの間隔変更が考えられます。

でも、REVIVE USBなら、もっとおすすめの対策があります。
連射を外付回路や、人間の早押しに頼るのではなく、REVIVE USBのファームウェア内で発生させる方法です。
1ボタンだけ連射(専用)ボタンにする、という改造なら、ファームウェアの根本的な変更は避けられるのはないかと思います。
この方法であれば、連射の速度を限界までチューニングできたりします。

REVIVE USBのファームウェアはMPLAB C18でビルドします。
MPLAB C18は無料でダウンロードできます。
イイね!の数:0
返信する
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2018-5-6 3:43
 
どうもです。投稿したその日の晩に自己解決しました。

>でも、REVIVE USBなら、もっとおすすめの対策があります。
>連射を外付回路や、人間の早押しに頼るのではなく、REVIVE USBのファームウェア内で発生させる方法です。

picは12F系しか触ったこと無いのと、他人の書いたソースを読むのは苦手なので、ファームウェア内で発生させるのは最初から避けました。結局、外部に回路作ることでなんとかなりました。

コンパイルはMicrochipの3年くらい前の使ってたと思います。ちょっと古いバージョンです。

昔は秋月のromライターで書き込んでいたのですが、最近はPICkit3使う様になったのでMPLAB IPEで書き込んでます。
イイね!の数:0
返信する
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2018-5-6 3:46
eviver  <ROOKIE>   投稿数: 2
すいません↑の投稿、ゲスト書き込みになってしまった様ですが、投稿者は私です。
イイね!の数:0
返信する

このトピックに投稿する

題名
投稿本文