ساعت دیجیتال با atmega8
ساعت دیجیتال با atmega8-پروژه ساعت دیجیتال با میکروکنترلر atmega8 که با سون سگمنت 4 رقمی کاتد مشترک می باشد
این ساعت بواسطه داشتن آی سی ds1307 در مواقع قطع برق از کار نمی افتد
و بصورت خاموش کار خود را ادامه می دهد
این ساعت با یک باطر سکه ای 3 ولتی 4 الی 5 سال می تواند به کار خود ادامه دهد
این ساعت دقیقه و ساعت را نمایش می دهد و با دو عدد کلید مینیاتوری تنظیم می شود
برای قرار دادن آی سی atmega8 و ds1307 حتما از سوکت استفاده کنید مدار با ولتاژ 5ولت کار می کند
مدار زیر با سون سگمنت کوچک 4 تایی کاتد مشترک کار می کند که برای راه اندازی شماره های بزرگ باید از خودتان سلیقه بخرج بدهید و آن را تقویت کنید
که برای تقویت هر سون سگمنت به یک عدد آی سی 74573 و یک عدد آی سی ULN2003 نیاز دارید
و کمی تغییر در کدهای برنامه و باید برای مدار هم حتما باید مدار چاپی بکشید همانند تصویر پایین این صفحه
ساعت دیجیتال با atmega8
که شما می توانید از یک رگلاتور 5ولت و یک عدد آداپتور 12 ولت نیم امپر استفاده نمایید
4 خروجی کاتد را با 4 عدد ترانزیستور منفی تقویت کنید تا شماره ها روشنایی کافی داشته باشد
ساعت دیجیتال با atmega8
‘www.pc21.ir
$regfile = “m8def.dat”
$crystal = 1000000
‘————————— www.pc21.ir —————————————–
$lib “ds1307clock.lib”
‘configure the scl and sda pins
Config Sda = Portd.6
Config Scl = Portd.7
‘address of ds1307
Const Ds1307w = &HD0
Const Ds1307r = &HD1
‘—————————— www.pc21.ir ——————————————–
Config Pinc.1 = Input
Config Pinc.2 = Input
Config Pinc.3 = Input
Config Pinc.4 = Input
Config Portc.5 = Output
Config Portd = Output
Config Portb = Output
‘————————————–www.pc21.ir—————————————-
Config Debounce = 30
Dim DP AS BIT
Dim _Seco As Byte , _Mine As Byte , _Hour As Byte , Ha As Byte ,n As Bit
‘————————————www.pc21.ir—————————————-
Cursor Off
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cstart
I2cwbyte Ds1307r
I2crbyte _Seco , Ack
I2crbyte _Mine , Ack
I2crbyte _Hour , Nack
I2cstop
‘ Gosub Seco
ساعت دیجیتال با atmega8
‘————————————www.pc21.ir——————————————-
Main:
Do
Gosub Ds1307
Gosub saat
Debounce Pinc.1 , 0 , Seco , Sub
Debounce Pinc.2 , 0 , Mine , Sub
Debounce Pinc.3 , 0 , Hour , Sub
Loop
‘——————————————-www.pc21.ir————————————
Ds1307:
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cstart
I2cwbyte Ds1307r
I2crbyte _Seco , Ack
I2crbyte _Mine , Ack
I2crbyte _Hour , Nack
I2cstop
_Seco = Makedec(_Seco) : _Mine = Makedec(_Mine) : _Hour = Makedec(_Hour)
If _Seco > 59 Then _Seco = 0
If _Mine > 59 Then _Mine = 0
If _Hour > 23 Then
_Hour = 0
‘Gosub Seco
End If
Return
‘—————————————www.pc21.ir—————————————-
saat:
portd = &B1110 : Ha = _Hour / 10 : Gosub 7seg
portd = &B1101 : Ha = _Hour Mod 10 : Gosub 7seg
portd = &B1011 : Ha = _Mine / 10 : Gosub 7seg
portd = &B0111 : Ha= _Mine Mod 10 : Gosub 7seg
Return
7seg:
portb = Lookup(ha , Det)
Waitms 10
Return
‘—————————————-www.pc21.ir—————————————
‘————————-www.pc21.ir——————– ————————
Seco:
Incr _Seco
If _Seco > 59 Then _Seco = 0
_Seco = Makebcd(_Seco)
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cwbyte _Seco
I2cstop
Return
‘————————————-www.pc21.ir —————————
Mine:
Incr _Mine
If _Mine > 59 Then _Mine = 0
_Mine = Makebcd(_mine)
I2cstart
I2cwbyte Ds1307w
I2cwbyte 1
I2cwbyte _Mine
I2cstop
Return
‘————————————-www.pc21.ir——————————-
Hour:
Incr _Hour
If _Hour > 23 Then _Hour = 0
_Hour = Makebcd(_hour)
I2cstart
I2cwbyte Ds1307w
I2cwbyte 2
I2cwbyte _Hour
I2cstop
Return
‘————————————-www.pc21.ir————————–
Det:
Data &B00111111 , &B00000110 , &B01011011 , &B01001111
Data &B01100110 , &B01101101 , &B01111101 , &B00000111
Data &B01111111 , &B01101111
ابعدا فیبر 24 در 5/5 سانتیمتر دولایه همراه فایل هگز
قیمت فایل pcbو فایل هگز 200 هزار تومان
شماره تماس 09132059638
ساعت دیجیتال با سون سگمنت بزرگ و میکروکنترلر ATMEGA16
آموزش راه اندازی ماژول ساعت DS1307 با آردوینو
آماده طراحی فایل pcb(مدارچاپی) از روی نقشه شما لطفا نقشه یا شماتیک خودتان را به ایمیلkafranrgh@gmail.com ارسال فرمایید
یا با شماره بالا تماس حاصل فرمایید