7セグメントLEDフリッカーの考えられる原因


11

海外のベンダーと協力して、既存の製品を改良しています。コストを抑えようとしています。

現在、製品は以下で構成されています:

  • 4つの大きなボタン
  • 4つの2桁の7セグメントLED。(各ボタンの下に2桁あります)
  • 1つのLCD(8文字...各文字表示は、LCDドットの3x8グリッドで構成されます)
  • スピーカー
  • マイクロコントローラー
  • LCDドライバー

改訂では、ベンダーは現在の製品の問題に対処したいと考えています。4桁の2桁のLEDはすべてちらつきが目立ちます。

ベンダーは、新しいマイクロコントローラーの使用、回路の再設計、プログラム全体のやり直しなどの見積もりを提出しています。(音声ファイルを入れ替えてちらつきを修正したいだけです...製品の一般的なロジックを変更する必要はないと思います)

前の回路がどのように設計されたかは正確にはわかりませんが、LEDを点灯するときにmcuがPWMを実行するのに十分な速度ではないことが原因である可能性があります。

一般に、経験に基づいて、7セグメントLEDのちらつきのその他の原因は何か。ベンダーが追加の作業を必要としないときに予算を組んでいるかどうかがわかるように、問題を理解したいだけです。


2
Hail-Maryハック:MCUオシレーター周波数を2倍(またはそれ以上)にします。おそらく機能しませんが、なぜでしょうか。
tyblu 2012

回答:


18

ちらつきは、リフレッシュが遅すぎることが原因です。各セグメントを数100 Hz以上で更新する必要があります。ただし、実際には高速リフレッシュを行わずに、明らかなちらつきを減らすことができるいくつかのトリックがあります。素朴なアプローチは、数字を順番に更新することです。しかし、それらを少し交互にすると、整数全体がちらつきが少なく見えるようになります。たとえば、数字1、3、および5を実行してから、戻って数字2、4、および6を実行します。

プロセッサを知らず、ソースコードを見ていないと、ベンダーがあなたをつなぎとめようとしているのか、混乱を本当に書き換える必要があるのか​​を判断することは不可能です。ファームウェアエンジニアの99%が恐ろしいファームウェアを作成していることに注意してください。クロック周波数、LEDリフレッシュレートなどを想定しているすべての場所に定数がハードコードされている可能性があります。適切に記述されたファームウェアを使用すると、プロセッサに必要なサイクルがあると仮定してリフレッシュレートを上げることは簡単です。ファームウェアの記述が不適切な場合、混乱を解消して正しく書き込むよりもはるかに問題が多くなる可能性があります。

オリジナルのデザイナーがちらつきに対処しなかったのはなぜですか?おそらく、ファームウェアの設計が非常に悪いため、単純にファームウェアを増やすことができませんでしたか?ちらつきが明らかな場合、製品がこれまでの方法で作成されたのはなぜですか。それだけでも、元のデザイナーが混乱した可能性があります。簡単に修正できたとしたら、おそらく修正できるでしょう。

本当におもしろいのは、あなたが再びそれをしているということです。コストを抑えたいので海外に出かけます。良いデザインには実際のお金がかかりますが、悪いデザインにはそれ以上のコストがかかります。あなたはそれに噛まれましたが、まだそれを学んでいないようです。そもそもデザインが良ければ、この位置にいることはできませんし、そうであっても簡単に変更できるはずです。保存されたオーディオを変更することは簡単な操作ではないという言い訳はありません。

どちらが何であるかわからない場合に、マイクロコントローラーと回路を変更することが悪い考えであるかどうかをどのようにして知るのですか?厳密に価格でエンジニアリングを購入することは、最も高価な方法です。

コメントに応じて追加:

数字を非順次に更新することについてどこで聞いたのか覚えていませんが、試してみたところ役に立ちました。インターレースTVがフレームレートではなくフィールドレートでちらつくように見えたのと同じ理由で機能すると思います。NTSCの場合、画像全体が30 Hzで再描画されましたが、インターレースリフレッシュにより、見かけ上のフリッカーは60 Hzでした。あなたは数字をインターレースすることでそのような2:1を取得するつもりはありませんが、それは助けになります。

いいえ、60 Hzは十分に速くなく、近くさえありません。60 Hzは、ほとんどの人が方形波のフリッカーをもう見ないところです。60 Hzで時間の50%で駆動されるLEDを直接見ている人は、ちらつきを見ないかもしれませんが、人々がそれを認識する唯一の方法ではありません。2桁しかない場合を除いて、LEDはほんのわずかな時間だけ明るく点灯し、ちらつきがよりはっきりします。網膜の中心が最も反応が遅いです。あなたはあなたのビジョンの周辺でよりちらつきに気づくでしょう。ただし、実際に不快な部分は、目を動かすときです。フリッカーは60 Hzで容易に確認できます。この現象によってちらつきを見えなくすることはできないので、問題はそれを不快にしないようにすることです。60 Hzはまだほとんどの人にとってかなり迷惑です。私が言ったように、あなたは少なくとも数百の100 Hzが欲しいです。

優れたエンジニアリングを取得することに関しては、それ自体が全体のトピックです。海外に行くことに本質的に問題はありません。有能な人々は様々な場所に住んでいます。問題は、まず最初に、悪い設計がトップエンジニアを雇ってそれを正しく行うよりもはるかに多くの費用がかかることを認識することです。第二に、エンジニアリングの才能を見つけて審査することは、いくらかの仕事を要することを理解しなければなりません。あなたは数千ドル、おそらく数千ドルの数千ドルを費やすことになります。その規模の他の購入決定と同様に扱います。質問して、面接して、リファレンスを取得し、実際にフォローアップします。

あなたが真剣で仕事が本物である限り、私はあなたが約束がなされる前に約2時間の最初の相談を期待する権利を持っていると私は言います。それは両方の方向に行くことを覚えておいてください。この時間の一部はあなたがエンジニアを評価することですが、もちろんエンジニアもあなたを評価しています。彼らは、この仕事が彼らのやりたいことと一致するかどうか、あなたがお尻の顧客を苦しめることになるかどうかなどを決定しようとしています。どちらにしても、要件に入り込んで話し合うのに十分な時間があるはずです。エンジニアがソリューションに向けてどのような道を歩むかについての最初の印象について。これは、彼らがどのように考えているか、ドリルダウンして実際の問題に取り組み、それが確実に解決されているか、代替の解決策が提案されているかなど、彼らがどのように実装しているかについて多くを伝えるはずです。

エンジニアが監督できないわけではありませんが、ロジスティクスと適切な評価が難しくなります。信頼できる人からの強力な推奨がいくつかある場合、それは非常に役立ちます。論理的には、ボストンのボブが1時間あたり130ドルで4週間を見積もり、バンガロールのナレッシュが1時間あたり35ドルで2週間でできるとしたら、深刻な問題に向かいます。


5
すべての+1。私はまた、それらを順不同でリフレッシュすることがちらつき、雑学の良い部分を減らすことができることを知りませんでした。簡単なグーグル検索は、その事実に実際に情報を返しませんでした。その現象を説明するリンク/リファレンスはありますか?脳がそのように振る舞う理由に興味があります。
Kris Bahnsen 2012

refresh each segment at a few 100 Hz minimum 60 Hz(ゲーム、LCDなどのリフレッシュレート)で十分ではありませんか?
m.Alin 2012

オリン:優れたエンジニアリングを得ることについて、あなたは良い点を持っています。何を提案しますか?国内でエンジニアしてから海外で生産する?
milesmeow 2012

@ m.Alin:回答への追加を参照してください。
Olin Lathrop、2012

@kris:回答への追加を参照してください。
Olin Lathrop、2012

1

100Hzの最小リフレッシュレートに同意します。これは、どのuCのコードでも簡単に実行できるはずです。低クロックfの他の症状はありますか?スピーカーの低音が好きですか?

すべてのMux'dディスプレイは、固定%Dutyサイクル=オン/サイクル時間を想定しているため、平均電流はリフレッシュ時間に関係なく一定です。したがって、変更を行うときに、オン時間とサイクル時間をどのように理解する必要がありますか。

あなたが方法を知っているなら、それは取るに足らないことです。そうしないと、本当に高額になります。


0

同じ製品モデルのすべてのユニットでちらつきが見られることを理解しているため、何かが破損しているわけではありません。また、更新頻度を上げるだけでよく、プログラム全体を変更する必要はありません。

MCUがこれらの2桁をより高速で更新するのに十分な速度ではない場合もありますが、私はそれを疑っています。どのMCUか教えていただけますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.