タグ付けされた質問 「keypad」

6
シリアルプロトコルの区切り/同期技術
非同期シリアル通信は今日でも電子機器に広く普及しているため、私たちの多くはそのような質問に時々出くわしたと思います。電子デバイスDと、PCシリアル回線(RS-232または同様のもの)で接続され、継続的に情報を交換する必要があるコンピューターを検討してください。すなわち、PCそれぞれコマンドフレームを送信しており、それぞれステータスレポート/テレメトリーフレームで応答しています(レポートはリクエストへの応答として、または独立して送信できます-ここでは実際には関係ありません)。通信フレームには、任意のバイナリデータを含めることができます。通信フレームが固定長パケットであると仮定します。X msDY ms 問題: プロトコルは継続的であるため、受信側は同期を失ったり、進行中の送信フレームの途中で「結合」したりする可能性があるため、フレームの開始(SOF)がどこにあるかはわかりません。Aデータは、SOFに対する相対的な位置に基づいて異なる意味を持ち、受信したデータは破損する可能性があり、永久に破損する可能性があります。 必要なソリューション 短い回復時間でSOFを検出するための信頼性の高い区切り/同期スキーム(つまり、再同期に1フレーム以上かかることはありません)。 私が知っている(そして使用している)既存のテクニック: 1)ヘッダー/チェックサム -事前定義されたバイト値としてのSOF。フレームの最後のチェックサム。 長所:シンプル。 短所:信頼できません。不明な回復時間。 2)バイトスタッフィング: 長所:信頼性が高く高速な回復で、どのハードウェアでも使用可能 短所:固定サイズのフレームベースの通信には適していません 3)9番目のビットマーキング -各バイトに追加ビットを追加します。SOFでマークされたSOF 1とデータバイトには次のマークが付けられ0ます。 長所:信頼性が高く、高速な回復 短所:ハードウェアサポートが必要です。ほとんどのPCハードウェアおよびソフトウェアでは直接サポートされていません。 4)8番目のビットマーキング -上記の一種のエミュレーション。9番目ではなく8番目のビットを使用し、各データワードに7ビットのみを残します。 長所:信頼性の高い高速リカバリは、どのハードウェアでも使用できます。 短所:従来の8ビット表現と7ビット表現の間のエンコード/デコードスキームが必要です。やや無駄だ。 5)タイムアウトベース -定義されたアイドル時間の後に来る最初のバイトとしてSOFを想定します。 長所:データオーバーヘッドなし、シンプル。 短所:それほど信頼できません。Windows PCなどのタイミングの悪いシステムではうまく動作しません。潜在的なスループットのオーバーヘッド。 質問: 問題に対処するために存在する他の可能な技術/解決策は何ですか?上記のリストで簡単に回避できる短所を指摘できますか?システムプロトコルをどのように設計しますか(または設計しますか)?
24 serial  communication  protocol  brushless-dc-motor  hall-effect  hdd  scr  flipflop  state-machines  pic  c  uart  gps  arduino  gsm  microcontroller  can  resonance  memory  microprocessor  verilog  modelsim  transistors  relay  voltage-regulator  switch-mode-power-supply  resistance  bluetooth  emc  fcc  microcontroller  atmel  flash  microcontroller  pic  c  stm32  interrupts  freertos  oscilloscope  arduino  esp8266  pcb-assembly  microcontroller  uart  level  arduino  transistors  amplifier  audio  transistors  diodes  spice  ltspice  schmitt-trigger  voltage  digital-logic  microprocessor  clock-speed  overclocking  filter  passive-networks  arduino  mosfet  control  12v  switching  temperature  light  luminous-flux  photometry  circuit-analysis  integrated-circuit  memory  pwm  simulation  behavioral-source  usb  serial  rs232  converter  diy  energia  diodes  7segmentdisplay  keypad  pcb-design  schematics  fuses  fuse-holders  radio  transmitter  power-supply  voltage  multimeter  tools  control  servo  avr  adc  uc3  identification  wire  port  not-gate  dc-motor  microcontroller  c  spi  voltage-regulator  microcontroller  sensor  c  i2c  conversion  microcontroller  low-battery  arduino  resistors  voltage-divider  lipo  pic  microchip  gpio  remappable-pins  peripheral-pin-select  soldering  flux  cleaning  sampling  filter  noise  computers  interference  power-supply  switch-mode-power-supply  efficiency  lm78xx 

1
70年代の電卓のPCBの研究。彼らは何を考えていましたか?
私は1974年からELSI 8002計算機からPCBを研究してきました。プロジェクト用にケースを再利用することを考えていますが、今では(バッテリーコネクタを再はんだ付けすることで)修正済みです。我慢できます (sniff)たぶん、私は私のプロジェクトのためにより深く壊れたものを買うでしょう... センチメンタリティはさておき、私はキーパッドのレイアウトにかなり混乱しています。キーパッドは最初は典型的なマトリックスキーパッドのように見えましたが、トレースを注意深く調べたところ、行または列を使用していないことがわかりました。 最初は、マイクロコントローラーのピンを保存しようとしたためだと思いました。n行m列のマトリックスレイアウトには、n + mピンが必要です。しかし、実際には、各ボタンに固有のピンのペアのみが必要です。したがって、実際に必要なのは、n * m <= x 2を選択するxピンのみです。 4x5マトリックスには20個のボタンがあり、20 <= 7 2 = 21を選択します(リセットボタン「C」は特別な方法でマッピングされ、他のボタンとピンを共有せず、未使用のパッドですが、他のモデルで使用されている可能性がありますか?) 行と列に共通のピンがないので、これが起こっていると思いました...しかし、レイアウトは9ピンを使用しています...?9ピンで、なぜそれをマトリックスにしないのですか?

3
電話のキーパッドはどのように機能しますか?
古い電話と携帯電話を分解しました。すべてのキーパッドは異なりますが、すべてのキーパッドにはボタンまたは類似のものの下に「スパイラル」(下の画像を参照)があります。 私が理解していないのは、これらの「スパイラル」がワイヤの両端に接触する方法です。それらは何らかのセンサーですか? らせんの両端は接続されていません。私の推測では、ボタンが押されると、それらは短絡されます。ただし、どのように発生するかわかりません。

3
シリコーンキーパッドの設計の問題
私のデバイスでは、物理的なボタンではなく、シリコンキーパッドを使用してキーの押下を検出しています。 設定後は、キーパッドに大きな圧力をかけなくてもスムーズに動作します。 ただし、しばらくして(たとえば2か月)、キーが検出される前にキーパッドに大きな圧力をかける必要があります。しばらくこのように続き、その後はキーを検出できなくなります。 そこで、「メチル化スピリット」でPCBキーパッドのトレースを開いてきれいにします。そして、それは新品同様に機能します。ときどき、キーパッドのPCBトレースに黒い残留物が見られます。これは、シリコンキーパッドの導体から外れているように見えます。これを一掃すると、すべてが正常に戻ります。 私の質問は、この問題を回避する方法です。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.