พอดีผมไปแกะเอา lcd มาจากอีกวงจรนึงเป็น custom lcd segment ครับจอพวกนี้ผมลองไล่ๆหา datasheet ดูส่วนใหญ่เหมือนต้องใช้ไฟ ac ให้ทำงานผมเลยลองใช้ dc ปกติทีได้จากซัพพลายคอมผมใช้ 3.3V ต่อแล้วภาพจะติดซักพักแล้วหายไปเอง อย่างถ้าผมจั้ม com0 seg8 ตัวsegment ที่ตรงตามตำแหน่งก็จะแสดงแล้วซักพักก็จะจางหายไปไวมากๆ ต้องจิ้มใหม่
-->เราสามารถใช้ dc pulse ให้มันทำงานแทนได้ไมครับ
-->อยากจะขอคำแนะนำการทำวงจรไดฟหน่อยครับเป็นตัวอย่างวงจร 4 digit หรือ 7 digit ก็ได้
-->ผมไม่มีฟังชั่นเจ็นมาทดลองด้วยนี่แหละ เลยอยากรู้ว่าถ้ามันใช้ dc pulse แล้วมันจะได้รึเปล่าจะได้ลองทำ pwm จาก arduino ซักขานึงมาไล่ดูว่า seg ไหน com ไหน คือรูปอะไรตัวอักษรอะไร ที่ผมยังไม่ลองทำอะไรเพราะเจอ video ของ evvblog เขาอธิบายว่าการ drive dc โดยตรงไม่เป็นผลดีผมเลยหยุดทดลองต่อแล้วเข้ามาถาม
-->ลองพยามหาชิป lcd drive แล้วแต่ชิปนานมากกว่าจะได้แถมที่ค้นๆหาดูใน mouser,rs-online จำนวน pattern มันได้ไม่เท่าจอเพราะจากที่ลองนับดูก่อนหยุดมือไปน่าจะ 32seg * 4 com รวมๆ 128pattern ในmouser,rs-onlineผมหาเจอแต่ 112 กับ 80 ที่ได้มากสุด
https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en591293
ขอบคุณครับ
ผมลองคลำๆเทสๆดูดยลองเขียนเอา arduino ให้มันจ่ายตามรูป FIG2 ที่เป็นรูปที่อยู่ในลิ้งที่ให้มาแบบEnergizedเพราะเห็นเป็นแถบดำๆน่าจะเป็น segติดแหละแล้วไล่จิ้มขาคอมกับขาอื่นทีละขาดู ปรากฎว่าบางขาขึ้นทีเดียว 4 segเลยบางขาก็ขึ้น 1 seg ตรงตามที่เราเข้าใจก็เลยงงเอ๋อๆเลยทีเดียวแล้วก็มีพวกที่ขึ้นๆมาจางๆด้วยครับ และคิดว่าที่เข้าใจน่าจะไม่ใช่ละเพราะยังเหลือคอมอีกตั้งสามขามันไม่น่าจะขึ้นพร้อมกันทั้ง 4 segสิ หรือมันต้องมีอะไรมากกว่านั้น ตอนแรกเข้าใจนึกว่าจะเหมือน 7 segmentหรือพวก multi7segmentปรากฎว่าทำความเข้าใจยากกว่ามากเลย
https://youtu.be/o_Y6XG7uzk0 (https://youtu.be/o_Y6XG7uzk0)
ภาพมันจะเอียงๆหน่อยผมหมุนจอโทรศัพถายสองรอบมันก็ยังเจ็นออกลายเดิม
array pinยาวๆไม่ต้องสนใจมากครับผลพวงจากการพยามไดหลายๆคอลั่มรวมๆกันแต่ไม่เวิคแต่ 1com ไล่จิ้มทีละขาเวิคเลยเซ็ตไว้ที่ [0,0]
//ATMEGA 2560
#define SEG_NUM 32
#define COM_NUM 4
uint8_t Seg_pin[SEG_NUM] = {2,3,4,5,6,7,8,14,15,16,17,18,19,20,21,22,23,24,25,26,27};
uint8_t Com_pin[COM_NUM]={9,10,11,12};
void driveSeg(byte com,byte seg)
{
digitalWrite(Seg_pin[seg], HIGH);
digitalWrite(Com_pin[com], LOW);
delay(1);
digitalWrite(Seg_pin[seg], LOW);
digitalWrite(Com_pin[com], HIGH);
delay(1);
}
void setup() {
for(uint8_t i = 0; i < SEG_NUM; i++)
{
pinMode(Seg_pin[i], OUTPUT);
}
/* Set the common pin as output */
for(uint8_t i = 0; i < COM_NUM; i++)
{
pinMode(Com_pin[i], OUTPUT);
}
//all LOW
for(int i=0;i<SEG_NUM;i++)
digitalWrite(Seg_pin[i], LOW);
for(int i=0;i<COM_NUM;i++)
digitalWrite(Com_pin[i], LOW);
}
void loop() {
driveSeg(0,0);
delay(10);
}
อันนี้เป็นแบบ โค้ต Arduino 7-segment แบบ 4 หลัก (http://"https://eleceasy.com/t/0-9999-display-7-segment-arduino-uno-r3/416") ]เอาไปศึกษาดูครับ
ตอนนี้ตัดสินใจใช้ drive แล้วครับแต่ว่าก็ยังพยามทำอยู่ ค่อยๆอ่านไป แต่สงสัยอย่างหนึงครับจอ lcd ผมมันแสดงผลจางมากหลังจากใช้ drive ครับ จางขนาดว่าถ้าผมถอดจอแยกไปลองกับโค้ดข้างบนจั้มทีละขาเพื่อดูว่า segไหนสว่างยังสว่างกว่ามากเลยทั้งๆที่ผมสั่ง drive ให้แสดงผล seg เดียวกันยังสว่างไม่เท่าเลยครับ หรือต่อกราวแล้วเอามือจับยังชัดปกติทุก seg แต่พอใช้ drive จางมากๆ
(https://s3-ap-southeast-1.amazonaws.com/img-in-th/6dec51c336488b731a49d719155ff04f.jpg)
(https://s3-ap-southeast-1.amazonaws.com/img-in-th/ef5599ada255147f8fa064378af87061.jpg)
หวังว่ารายละเอียดที่นี่น่าจะพอช่วยได้
https://www.circuitvalley.com/2012/02/pic16f917pic16f1907-7segmentlcddriverex.html
http://awawa.hariko.com/avr_lcd_drive_en.html
Quote from: vbaserv on May 13, 2020, 08:52:28 AM
หวังว่ารายละเอียดที่นี่น่าจะพอช่วยได้
https://www.circuitvalley.com/2012/02/pic16f917pic16f1907-7segmentlcddriverex.html
http://awawa.hariko.com/avr_lcd_drive_en.html
ขอบคุณครับลิ้งสองผมกำลังทำตามอยู่ครับค่อยๆเล่นไป แต่ก็ยังเจอปัญหาเดิมๆกับ drive ทั้งๆที่ทำตามดาต้าชีททุกอย่างก็ยังไม่ชัดเลยลองเปลี่ยนชิปก็แล้วรอบหนึ่งก็เหมือนเดิมบางครึ้งก็เข้มแล้วก็กลับมาจางเหมือนเดิม เคยคิดว่าไฟไม่พอก็ลองถอดมาต่อสวิทชิ่งก็เหมือนเดิม
ตอนนี้อยู่ๆไดฟเวอร์เปิดติดแล้วจอจางเหมือนกันทุกตัวเลยสั่งจีนมา 5 ตัวอาการเดียวกันเลย จะออกไปกินข้าวเลยเปิดรันระบบไว้กลับมาจอดับพอเปิดก็จะติดซักพักแล้วจางหายไป พอถอดบัดกรีเข้าไปใหม่ก็เจออาการเดิม ไล่ถอดไล่เปลี่ยน mcu และอุปกรณ์ทุกอย่างก็แล้วเป็นเหมือนเดิมหยั่งเซ็ง จะเหลือแต่ชิปแบบ qfp48 แต่หาแผ่นแปลงมาใส่ไม่ได้จะกัดปริ้นรีดเองก็กลัวเพราะขา 2mm ไม่เคยกัดเลยลายเล็กขนาดนั้น ลองเช็ค vlcd บางทีก็ตกบางทีก็พุ่ง ลองต่อกับช่อง3.3v เพราะ ic ทำงานที่ 2.4v - 5.5 ก็งงว่าอยู่ๆช่อง 3.3ก็เพิ่มมา 4.3v ซะงัั้นแต่พอใช้ช่อง 5 โวลวิ่งปกติดีแต่บางทีตกไป 4.8 ขนาดถอดเอาสวิตชิ่งซัพพลายคอมมาต่อก็ยังเป็น ตอนนี้คิดว่าเป็นกับลายวงจรแต่ก่อนหน้านี้ก็ใช้ปกติจนเขียนโปรแกรมเสร็จ แต่อยู่มาไม่กี่วันก่อนดับไปเฉยๆแล้วก็เป็นดังกล่าวมาทุกตัวเลย