สาเหตุที่เป็นไปได้สำหรับการกะพริบของ LED 7 ส่วน


11

ฉันทำงานกับผู้จัดจำหน่ายในต่างประเทศเพื่อปรับปรุงผลิตภัณฑ์ที่มีอยู่ เรากำลังพยายามลดต้นทุน

ปัจจุบันผลิตภัณฑ์ประกอบด้วย:

  • ปุ่มขนาดใหญ่ 4 ปุ่ม
  • 4 ไฟ LED 7 หลักสองส่วน (แต่ละปุ่มมีตัวเลขสองหลักใต้)
  • 1 LCD (8 ตัวอักษร ... การแสดงตัวละครแต่ละตัวประกอบด้วยจุดแอลซีดี 3x8 ตาราง)
  • ลำโพง
  • ไมโครคอนโทรลเลอร์
  • ไดรเวอร์ LCD

ในการปรับปรุงผู้ขายต้องการแก้ไขปัญหาเกี่ยวกับผลิตภัณฑ์ปัจจุบัน ไฟ LED สองหลักทั้ง 4 ตัวมีการกะพริบที่เห็นได้ชัด

ผู้ขายกำลังให้การประมาณการแก่เราซึ่งรวมถึงการใช้ไมโครคอนโทรลเลอร์ใหม่การออกแบบวงจรบางส่วนและการทำซ้ำโปรแกรมทั้งหมด! (เราแค่ต้องการสลับไฟล์เสียงและแก้ไขการสั่นไหว ... ฉันไม่คิดว่าตรรกะทั่วไปสำหรับผลิตภัณฑ์ที่ต้องการเปลี่ยนเลย)

ฉันไม่แน่ใจว่าวงจรก่อนหน้านี้ได้รับการออกแบบอย่างแน่นอน แต่อาจเป็นไปได้ว่า Flickr อาจเกิดจาก mcu ไม่ได้เร็วพอที่จะ PWM เมื่อให้แสงสว่าง LED

โดยทั่วไปตามประสบการณ์สิ่งที่อาจเป็นสาเหตุอื่นของการกะพริบไฟ LED 7 ส่วน ฉันแค่ต้องการทำความเข้าใจกับปัญหาเพื่อที่ฉันจะได้แยกแยะว่าผู้ขายกำลังจัดทำงบประมาณงานเพิ่มเติมเมื่อไม่ต้องการหรือไม่


2
แฮ็คแมรี่: สองเท่า (หรือมากกว่า) ความถี่ oscillator MCU มันอาจจะไม่ทำงาน แต่เดี๋ยวก่อนทำไมไม่
tyblu

คำตอบ:


18

การกะพริบเป็นผลมาจากการรีเฟรชช้าเกินไป คุณต้องรีเฟรชแต่ละเซ็กเมนต์อย่างน้อย 100 Hz อย่างไรก็ตามมีเทคนิคบางอย่างที่สามารถลดการสั่นไหวในขณะที่ไม่รีเฟรชได้เร็วขึ้น วิธีการที่ไร้เดียงสาคือการรีเฟรชตัวเลขตามลำดับ แต่ถ้าคุณสลับไปมาสักหน่อยตัวเลขทั้งหมดจะสั่นไหวน้อยลง ตัวอย่างเช่นทำตัวเลข 1, 3 และ 5 จากนั้นกลับมาและทำตัวเลข 2, 4 และ 6

โดยไม่ทราบว่าตัวประมวลผลและเห็นซอร์สโค้ดเป็นไปไม่ได้ที่จะพูดว่าผู้ขายพยายามที่จะร้อยสายคุณหรือระเบียบต้องเขียนใหม่จริงๆ โปรดทราบว่า 99% ของวิศวกรเฟิร์มแวร์เขียนเฟิร์มแวร์ที่น่ากลัว อาจมีค่าคงที่ของฮาร์ดโค้ดอยู่ทั่วทุกสถานที่ซึ่งตั้งสมมติฐานเกี่ยวกับความถี่สัญญาณนาฬิกาอัตราการรีเฟรช LED ฯลฯ ด้วยเฟิร์มแวร์ที่เขียนขึ้นเป็นอย่างดีการเพิ่มอัตราการรีเฟรชโดยสมมติว่าโปรเซสเซอร์มีรอบที่จำเป็นแล้ว ด้วยเฟิร์มแวร์ที่เขียนไม่ดีอาจเป็นปัญหามากกว่าทิ้งความยุ่งเหยิงและเขียนให้ถูกต้อง

ทำไมนักออกแบบดั้งเดิมถึงไม่สั่นไหว? บางทีเฟิร์มแวร์ได้รับการออกแบบอย่างไม่ดีพอที่เพิ่มขึ้นเป็นไปไม่ได้ใช่ไหม หากการสั่นไหวนั้นชัดเจนทำไมผลิตภัณฑ์นั้นถึงสร้างขึ้นอย่างที่มันเป็น สิ่งนั้นทำให้มันเป็นไปได้ที่ผู้ออกแบบดั้งเดิมจะทำสิ่งสกปรก หากเขาสามารถแก้ไขได้อย่างง่ายดายเขาอาจจะมี

สิ่งที่ตลกจริงๆคือตอนนี้คุณกำลังทำมันอีกครั้ง คุณกำลังไปต่างประเทศเพราะคุณต้องการลดต้นทุน การออกแบบที่ดีต้องใช้เงินจริง แต่การออกแบบที่ไม่ดีมีค่าใช้จ่ายมากขึ้น แม้ว่าคุณจะถูกกัดโดยที่คุณยังไม่ได้เรียนรู้มัน ด้วยการออกแบบที่ดีตั้งแต่แรกคุณจะไม่อยู่ในตำแหน่งนี้และแม้ว่าคุณจะเป็นมันก็ควรเปลี่ยนได้ง่าย ไม่มีข้อแก้ตัวในการเปลี่ยนเสียงที่จัดเก็บไว้ซึ่งไม่ใช่การใช้งานที่ง่าย

คุณจะรู้ได้อย่างไรว่ามันเป็นความคิดที่ดีหรือไม่ที่จะเปลี่ยนไมโครคอนโทรลเลอร์และวงจรถ้าคุณไม่รู้ว่ามันคืออะไร? การซื้อวิศวกรรมอย่างเคร่งครัดกับราคาเป็นวิธีที่แพงที่สุดที่จะไป

เพิ่มในการตอบสนองต่อความคิดเห็น:

ฉันจำไม่ได้ว่าที่ไหนที่ฉันได้ยินเกี่ยวกับการรีเฟรชดิจิตัลตามลำดับ แต่ฉันลองแล้วพบว่ามันช่วยได้ ฉันคิดว่ามันใช้งานได้ด้วยเหตุผลเดียวกับที่โทรทัศน์ interlaced ดูเหมือนว่าจะสั่นไหวที่อัตราฟิลด์แทนที่จะเป็นอัตราเฟรม สำหรับ NTSC ภาพทั้งหมดถูกวาดใหม่ที่ 30 Hz แต่การสั่นไหวที่ชัดเจนคือ 60 Hz เนื่องจากการรีเฟรชอินเทอร์เลซ คุณจะไม่ได้ 2: 1 แบบนั้นด้วยการใส่ตัวเลข แต่มันช่วยได้

ไม่ 60 เฮิร์ตซ์ไม่เร็วพอแม้แต่ปิด 60 เฮิร์ตซ์เป็นเรื่องเกี่ยวกับที่คนส่วนใหญ่ไม่เห็นการสั่นไหวอีกต่อไปสำหรับคลื่นสี่เหลี่ยม มีคนจ้องมองโดยตรงที่ LED ขับเคลื่อน 50% ของเวลาที่ 60 Hz อาจไม่เห็นการสั่นไหว แต่นั่นไม่ใช่วิธีเดียวที่คนเข้าใจ หากคุณไม่มีตัวเลขสองหลักไฟ LED จะสว่างขึ้นในเวลาเพียงเล็กน้อยซึ่งจะทำให้การสั่นไหวชัดเจนยิ่งขึ้น จุดศูนย์กลางของเรตินาของคุณช้าที่สุดในการตอบสนอง คุณจะสังเกตเห็นการสั่นไหวมากขึ้นที่บริเวณรอบดวงตาของคุณ อย่างไรก็ตามส่วนที่ไม่เหมาะสมที่แท้จริงคือเมื่อคุณขยับดวงตาของคุณ การสั่นไหวสามารถมองเห็นได้ง่ายที่ 60 Hz คุณไม่สามารถมองไม่เห็นการสั่นไหวเนื่องจากปรากฏการณ์นี้ดังนั้นปัญหาคือทำให้มันน่ารำคาญน้อยลง 60 เฮิร์ตยังค่อนข้างน่ารำคาญสำหรับคนส่วนใหญ่ อย่างที่ฉันบอกไปแล้วว่าคุณต้องการอย่างน้อย 100 Hz

สำหรับการรับวิศวกรรมที่ดีนั้นเป็นหัวข้อทั้งหมดด้วยตัวเอง ไม่มีอะไรผิดปกติที่เกิดขึ้นกับการไปต่างประเทศ คนที่มีความสามารถอาศัยอยู่ในสถานที่ต่าง ๆ ประเด็นแรกคือการตระหนักว่าการออกแบบที่ไม่ดีจะต้องเสียค่าใช้จ่ายมากกว่าการว่าจ้างวิศวกรระดับสูงให้ทำตั้งแต่แรก ประการที่สองคุณต้องตระหนักว่าการค้นพบและคัดเลือกนักวิศวกรรมที่มีความสามารถจะต้องทำงาน คุณจะใช้จ่าย 1,000 ดอลลาร์สหรัฐอาจ 10 ดอลลาร์ 1000 ดอลลาร์ ปฏิบัติต่อมันเหมือนกับการตัดสินใจซื้ออื่น ๆ ของขนาดนั้น ถามเกี่ยวกับการสัมภาษณ์รับการอ้างอิงและติดตามพวกเขาจริง ๆ

ตราบใดที่คุณจริงจังและงานนั้นเป็นของจริงฉันจะบอกว่าคุณมีสิทธิ์ที่จะคาดหวังการปรึกษาหารือครั้งแรกประมาณ 2 ชั่วโมงก่อนที่จะมีข้อผูกพันใด ๆ โปรดจำไว้ว่าจะไปทั้งสองวิธี ส่วนหนึ่งของเวลานี้ให้คุณประเมินวิศวกร แต่แน่นอนว่าวิศวกรก็กำลังประเมินคุณเช่นกัน พวกเขาพยายามที่จะตัดสินใจว่างานนี้สอดคล้องกับสิ่งที่พวกเขาต้องการจะทำหรือไม่ว่าคุณจะเจ็บปวดลูกค้าชน ฯลฯ ไม่ว่าด้วยวิธีใดควรมีเวลามากพอที่จะทำตามข้อกำหนดและพูดคุย เกี่ยวกับการแสดงผลครั้งแรกว่าเส้นทางใดที่วิศวกรจะยังคงมีต่อโซลูชัน สิ่งนี้ควรบอกคุณมากมายเกี่ยวกับความคิดของพวกเขาว่าพวกเขาใช้สิ่งที่คุณบอกกับพวกเขามากน้อยเพียงใดเมื่อเทียบกับการเจาะลึกลงไปและพยายามทำให้เกิดปัญหาจริงและทำให้แน่ใจว่าได้รับการแก้ไขแล้ว

สิ่งนี้ไม่ได้บอกว่าวิศวกรไม่สามารถดูแลได้ แต่มันทำให้การขนส่งและการประเมินผลดีขึ้น หากคุณมีคำแนะนำที่แข็งแกร่งจากคนที่คุณไว้ใจนั่นก็ช่วยได้มาก หากคุณเป็นตรรกะเพียงว่า Bob ในบอสตันต้องการ $ 130 / ชั่วโมงและประมาณ 4 สัปดาห์ในขณะที่ Naresh ใน Bangalore ต้องการ $ 35 / ชั่วโมงและสามารถทำได้ใน 2 สัปดาห์คุณกำลังประสบปัญหาร้ายแรง


5
+1 สำหรับทุก ๆ ฉันไม่เคยรู้เลยว่าการทำให้สดชื่นออกมาจากระเบียบสามารถลดการสั่นไหวเรื่องไม่สำคัญได้ การค้นหา google อย่างรวดเร็วไม่ได้ส่งคืนข้อมูลใด ๆ คุณมีลิงค์ / ข้อมูลอ้างอิงที่อธิบายปรากฏการณ์นั้นหรือไม่? ฉันสงสัยเกี่ยวกับเหตุผลที่สมองจะทำแบบนั้น
Kris Bahnsen

refresh each segment at a few 100 Hz minimum 60 เฮิร์ตซ์ (อัตราการรีเฟรชของเกม, LCD และอื่น ๆ ) จะไม่เพียงพอหรือไม่
m.Alin

แลง: คุณมีจุดที่ดีเกี่ยวกับการสร้างวิศวกรรมที่ดี คุณจะแนะนำอะไร วิศวกรในประเทศแล้วผลิตต่างประเทศไหม?
milesmeow

@ m.Alin: ดูเพิ่มเติมที่จะตอบ
Olin Lathrop

@kris: ดูเพิ่มเติมที่จะตอบ
Olin Lathrop

1

ฉันยอมรับอัตรารีเฟรชขั้นต่ำ 100Hz นั่นควรจะง่ายในการเขียนโค๊ดสำหรับ uC มีอาการอื่นของนาฬิกาต่ำ f หรือไม่? เหมือนเสียงต่ำในลำโพง?

การแสดงผล Mux ทั้งหมดจะถือว่า% รอบการทำงานที่แน่นอน = เวลาเปิด / รอบดังนั้นค่าเฉลี่ยในปัจจุบันจึงเป็นค่าคงที่โดยไม่คำนึงถึงเวลารีเฟรช ดังนั้นวิธีที่จะต้องเข้าใจเวลา ON และรอบเวลาเมื่อทำการเปลี่ยนแปลง

หากคุณรู้ว่ามันเป็นเรื่องเล็กน้อย ถ้าคุณทำไม่ได้มันแพงจริงๆ


0

ฉันเข้าใจว่าสามารถเห็นการสั่นไหวได้ในทุกรุ่นของผลิตภัณฑ์เดียวกันดังนั้นจึงไม่ใช่สิ่งที่เสียหาย ฉันจะบอกว่าคุณเพียงแค่ต้องเพิ่มความถี่ในการรีเฟรชและแน่นอนว่าไม่ต้องเปลี่ยนโปรแกรมทั้งหมด

อาจเป็นกรณีที่ MCU ไม่เร็วพอที่จะรีเฟรชตัวเลขสองหลักในอัตราที่สูงขึ้น แต่ฉันสงสัย คุณบอกเราได้ไหมว่า MCU คืออะไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.