با عرض سلام خدمت دوستان عزیز .
من یک پروژه ساخت ساعت دیجیتال دارم که مدارات اونو بصورت زیر طراحی کردم .برای سون سگمنت های این ساعت از led های 12 ولتی استفاده شده که جهت حل مشکل و کارکردنشون با آردوینو از uln2803 استفاده کردم .
مشکلی که دارم اینه که برای سوییچ هر کاراکتر چون کلا آند ها رو مشترک گرفتم بخاطر 12 ولت ،سعی کرد م با کنترل آی سی uln و خاموش کردن هر ای سی کارکتر رو خاموش کنم که قابل کنترل شه .
اما حالا هر کاراکتری که بخوام روشن کنم تمامی خروجی های آی سی Uln همه با هم 0 یا همه با هم 1 میشن و تکی اصلا کار نمیکنه مگر زمانی که هر 4 آی سی رو روشن کنی و 4 تایی باهم کار کنند .در مورد پایه 10 آی سی uln هم تمامی حالات ممکن یعنی زمین بشه یا 5 ولت یا 12 ولت رو تست کردم تاثیری نداره ظاهرا .



برنامه هم بصورت زیر هست ولی اصلا نیازی به برنامه و آردوینو نیست چون مدار ال ای دیا ظاهرا یک مشکلی داره .
در عکس زیر مشکل مشخصه که با تحریک کارکتر یک و قسمت A کل led ها روشن شدن و بجای روشن شدن فقط یک پایه uln همه روشن شدن .

ممنون میشم راهنمایی کنید .
من یک پروژه ساخت ساعت دیجیتال دارم که مدارات اونو بصورت زیر طراحی کردم .برای سون سگمنت های این ساعت از led های 12 ولتی استفاده شده که جهت حل مشکل و کارکردنشون با آردوینو از uln2803 استفاده کردم .
مشکلی که دارم اینه که برای سوییچ هر کاراکتر چون کلا آند ها رو مشترک گرفتم بخاطر 12 ولت ،سعی کرد م با کنترل آی سی uln و خاموش کردن هر ای سی کارکتر رو خاموش کنم که قابل کنترل شه .
اما حالا هر کاراکتری که بخوام روشن کنم تمامی خروجی های آی سی Uln همه با هم 0 یا همه با هم 1 میشن و تکی اصلا کار نمیکنه مگر زمانی که هر 4 آی سی رو روشن کنی و 4 تایی باهم کار کنند .در مورد پایه 10 آی سی uln هم تمامی حالات ممکن یعنی زمین بشه یا 5 ولت یا 12 ولت رو تست کردم تاثیری نداره ظاهرا .



برنامه هم بصورت زیر هست ولی اصلا نیازی به برنامه و آردوینو نیست چون مدار ال ای دیا ظاهرا یک مشکلی داره .
#include "SevSeg.h"
#include <Wire.h>
#include <TimeLib.h>
#include <DS1307RTC.h>
SevSeg Display;
const int ledPin = A0;
unsigned int number;
unsigned long currentMillis;
unsigned int Hour;
int ledState = LOW;
unsigned long previousMillis = 0;
const long interval = 500;
void setup()
{
pinMode(ledPin, OUTPUT);
byte numDigits = 4;
byte digitPins[] = {10, 11, 12, 13};
byte segmentPins[] = {8, 7, 6, 5, 4, 3, 2, 1};
bool resistorsOnSegments = true;
bool updateWithDelaysIn = true;
byte hardwareConfig = COMMON_ANODE;
Display.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments);
Display.setBrightness(100);
}
void loop()
{
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
if (ledState == LOW)
{
ledState = HIGH;
}
else
{
ledState = LOW;
}
digitalWrite(ledPin, ledState);
}
tmElements_t tm;
if (RTC.read(tm))
{
Hour = tm.Hour;
if (tm.Hour > 12)
{
if (tm.Hour == 13) Hour = 1;
if (tm.Hour == 14) Hour = 2;
if (tm.Hour == 15) Hour = 3;
if (tm.Hour == 16) Hour = 4;
if (tm.Hour == 17) Hour = 5;
if (tm.Hour == 18) Hour = 6;
if (tm.Hour == 19) Hour = 7;
if (tm.Hour == 20) Hour = 8;
if (tm.Hour == 21) Hour = 9;
if (tm.Hour == 22) Hour = 10;
if (tm.Hour == 23) Hour = 11;
}
else
{
if (tm.Hour == 0) Hour = 12;
}
}
number = Hour * 100 + tm.Minute;
Display.setNumber(number);
Display.refreshDisplay();
}
در عکس زیر مشکل مشخصه که با تحریک کارکتر یک و قسمت A کل led ها روشن شدن و بجای روشن شدن فقط یک پایه uln همه روشن شدن .

ممنون میشم راهنمایی کنید .
دیدگاه