پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
:applause:sghسلام خدمت برادران عزیز شما مرا تاحدی در مورد ساخت ساعت با 7سگمنت کمک کردید من در برنامه شما تغییراتی دادم و مدا را با4511 تکمیل کردم البته برای مگا16 اما مانددم چگونه توسط کلید بروی پرتها cتنظیم ساعت رابه دست بگیرم اگر می توانید مرا کمک کنید برنامه به شرح زیر است :NO:
$regfile = "m16def.dat"
$crystal = 8000000
Dim A1 As Byte
Dim A2 As Byte
Dim F1 As Byte
Dim F2 As Byte
Dim A3 As Byte
Dim A4 As Byte
Dim F3 As Byte
Dim F4 As Byte
Dim A5 As Byte
Dim A6 As Byte
Dim F5 As Byte
Dim F6 As Byte
Const Ds1307w = &HD0
Const Ds1307r = &HD1
Config Sda = Portc.1
Config Scl = Portc.0
Config Portb = Output
Config Portd = Output
Config Porta = Output
Portc.2 = 1
Portc.3 = 1
Portc.4 = 1
Portc.5 = 1
Dim _sec As Byte , _min As Byte , _hour As Byte
Dim Weekday As Byte , _day As Byte , _month As Byte , _year As Byte
Porta = F1 Or F2
Portd = F3 Or F4
Portb = F5 Or F6
Waitms 10
'Reset Portd.0
Gosub Rezar
Loop
End
Rezar:
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cstart
I2cwbyte Ds1307r
I2crbyte _sec , Ack
I2crbyte _min , Ack
I2crbyte _hour , Ack
I2crbyte Weekday , Ack ' Day of Week
I2crbyte _day , Ack ' Day of Month
I2crbyte _month , Ack ' Month of Year
I2crbyte _year , Nack ' Year
I2cstop
Return
7segmenty:
Data &B00000000
Data &B00000001
Data &B00000010
Data &B00000011
Data &B00000100
Data &B00000101
Data &B00000110
Data &B00000111
Data &B00001000
Data &B00001001
7segmentd:
Data &B00000000
Data &B00010000
Data &B00100000
Data &B00110000
Data &B01000000
Data &B01010000
Data &B01100000
Data &B01110000
Data &B10000000
Data &B10010000
:nice:
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
اگر به برنامه بالا نگاه کنی من این قسمت رو برای تست عمل کلید قرار دادم اما تا زمان نگه داشتن کلید فقط مقدار min00میشود وبه محض قطع کلید مقدار بر میگردد به حالت قبلی باید چه کنم
If Portc.2 = 0 Then
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
سلام.
وقتی کلید رو میزنی متغییر دقیقه تغییر میکنه؟
ولی دوباره بر میگرده به همان عدد قبلی؟
چند تا تغییرات تو برنامه بده شاید تاثیر داشته باشه.
فرکانس اسیلاتور رو 1000000 کن.
برای تست کلید از دستور Debounce Pind.0 , 0 , Loop1 استفاده کن.
مقدار _min رو incr کن. یعنی با هر بار فشار دادن کلید یکی به اون اضافه کن.
برای سون سگمنت ها هم از سرریز تایمر استفاده کن تا موقع فشار داده کلید چشمک نزنه.
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cwbyte _sec
I2cwbyte _min
I2cwbyte _hour
آخر برنامه درست کردم و فرکانس اسیلاتور رو 1مگ کردم
ودر عمل با صفر کردن پین تمام سگمنت ها صفر می شود
"برای سون سگمنت ها هم از سرریز تایمر استفاده کن تا موقع فشار داده کلید چشمک نزنه"کمی بیشترتوضیح بدین ممنون می شوم
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
برنامه در حالت عالی خوب کار میکنه؟
فقط با قسمت تنطیم ساعت مشکل داری؟
وقتی داری تو لوپ اصلی برنامه سون سکمنت ها رو رفرش میکنی. وقتی از دستور Debounce استفاده میکنی چون در حالت پیش فرض 25 میلی ثانیه تاخیر ایجاد میکنه یه چشمک میزنه.
ولی وقتی از تایمر استفاده کنی دیگه کاری با 25 میلی ثانیه نداره ...تایمر که سرریز بشه به برچسب میپره و سو ن سگمنت رو روشن میکنه.
(شاید برای شما این اتفاق نیفته.... ولی من چندین بار این مشکل برام پیش اومده.)
برای تنظیم ساعت هم میتونی برنامه آقای chia رو نگاه کنی و داخل همین تایپک هستش ..صفحات اول.
تغییر بالا باعث شد دقیقه یک عدد اضافه بشه ولی بلافاصله در مقادیر ساعت(حتی دقیقه)تغییر ایجاد می شه (من وقتی برنامه را درISIS 6اجرا می کنم در ساعت شبیه ساز دقیقه پس از فشار دادن کلید سه رقمی میشه)
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
در تابلویی که درست کردم دقیقه تا 16 درست میره بالا بعد از 16میشه 10 و روی 10-16 جابه جا می شه . . . (ساعت درست کا می کنه حتی موقع قطع برق حتی یک ثانیه هم عقب نمی مانه) تنظیمش دیگه داره خیلی عزیتم می کنه لطفا کمکم کنید :angry:
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
نوشته اصلی توسط میلاد موسوی
سلام به همگی.
آقا من میخوام یه ساعت برای ارگان دولتی طراحی کنم و به تولید انبوه برسونیم. و میخوام ببینیم به نظر شما از چه ic برای این ساعت استفاده کنم که حداکثر در سال 3 دقیقه یا کمتر (در حد صفر) خطا داشته باشه . یعنی یه ساعت دقیق دقیق دقیق .البته نا گفته نماند با سون سگمنت ساخته میشه و به صورت رفرشی کار میکنه .(سون سگمنت مالتی پلس)
سلام
دوست من برنامه ات رو کامل کردی یا نه می خوام بدونم میتونی یک برنامه ساعت واسه ما بنوسی که فقط با کریستال کار کنه یا که فقط با تایمر ها باشه و سون گمنت ها وصل یک پورت شده باشه ممنون
مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .
پاسخ : یه RTC و یا یه راه حل خوب به من بگید.(پروژه ساعت)
ممنون از همه شما منم دنبال یه ساعت هستم.
اگه لطف کنید سخت افزار یک ساعت رو با lcd بزارین خیلی خوب میشه میخوام روش کار کنم (خواهش میکنم کمک کنید ضروری هست.)
سپاس گذارم.
دیدگاه