#!/usr/bin/env python
import smbus
import sys
import datetime


addr=0x51
bus = smbus.SMBus(1)


datcas = datetime.datetime.now()



rokhi = int((datcas.year-2000) / 10)
roklo = (datcas.year-2000) - (10 * rokhi)
datarok = (rokhi*16) + roklo
bus.write_byte_data(addr,0x08,datarok)

meshi = int((datcas.month) / 10)
meslo = datcas.month - (10 * meshi)
datames = (meshi*16) + meslo
bus.write_byte_data(addr,0x07,datames)


dvt = datetime.datetime.now().weekday()
bus.write_byte_data(addr,0x06,dvt)

denhi = int(datcas.day / 10)
denlo = datcas.day - (10 * denhi)
dataden = (denhi*16) + denlo
bus.write_byte_data(addr,0x05,dataden)




hodhi = int(datcas.hour / 10)
hodlo = datcas.hour - (10 * hodhi)
data4 = (hodhi*16) + hodlo
bus.write_byte_data(addr,0x04,data4)

minhi = int(datcas.minute / 10)
minlo = datcas.minute - (10 * minhi)
data3 = (minhi*16) + minlo
bus.write_byte_data(addr,0x03,data3)

sekhi = int(datcas.second / 10)
seklo = datcas.second - (10 * sekhi)
data2 = (sekhi*16) + seklo
bus.write_byte_data(addr,0x02,data2)

bus.write_byte_data(addr,0x00,0b00000000)  # nastaveni obvodu pro pocitani casu - RTC

# pro testy se alarmy nastavuji na 2 minuty po aktualnim case
#  ( preteceni pres celou hodinu se ignoruje )
#alarmhod = datcas.hour
#alarmmin = datcas.minute + 2


# nastaveni skutecneho alarmu na 18:00
alarmhod = 18
alarmmin = 0


ahodhi = int(alarmhod / 10)
ahodlo = alarmhod - (10 * ahodhi)
dataA = (ahodhi*16) + ahodlo
bus.write_byte_data(addr,0x0A,dataA)


aminhi = int(alarmmin / 10)
aminlo = alarmmin - (10 * aminhi)
data9 = (aminhi*16) + aminlo
bus.write_byte_data(addr,0x09,data9)


bus.write_byte_data(addr,0x0B,128)
bus.write_byte_data(addr,0x0C,128)

bus.write_byte_data(addr,0x0D,0b10000011)
bus.write_byte_data(addr,0x0E,0b10000011)
bus.write_byte_data(addr,0x0F,0b00000111)


bus.write_byte_data(addr,0x01,0b00010010)





print "dataden " , bin(dataden)
print "datames " , bin(datames)
print "datarok " , bin(datarok)
print "hodiny " , bin(data4)
print "minuty " , bin(data3)
print "sekundy " , bin(data2)





