ዝርዝር ሁኔታ:

DS1307 ሰዓት ከ CloudX ጋር: 4 ደረጃዎች
DS1307 ሰዓት ከ CloudX ጋር: 4 ደረጃዎች

ቪዲዮ: DS1307 ሰዓት ከ CloudX ጋር: 4 ደረጃዎች

ቪዲዮ: DS1307 ሰዓት ከ CloudX ጋር: 4 ደረጃዎች
ቪዲዮ: Утилизация светодиодных экранов DVD-плееров — несвязанные действия 2024, ህዳር
Anonim
DS1307 ሰዓት ከ CloudX ጋር
DS1307 ሰዓት ከ CloudX ጋር
DS1307 ሰዓት ከ CloudX ጋር
DS1307 ሰዓት ከ CloudX ጋር

የራስዎን ብጁ ሰዓት ወይም ሰዓት መሥራት እንደሚፈልጉ ያስቡ። DS1307 እና CloudX ን ማዋሃድ ምኞትዎን ከችግር ነፃ ሊያደርገው ይችላል

ደረጃ 1: የእርስዎን CloudX IDE ይክፈቱ

የእርስዎን CloudX IDE ይክፈቱ
የእርስዎን CloudX IDE ይክፈቱ
የእርስዎን CloudX IDE ይክፈቱ
የእርስዎን CloudX IDE ይክፈቱ

ይቅርታ ብዙ ተናጋሪ አይደለሁም ፣ ግን ወደ ሪል ታይም ሰዓት ፕሮጄክቶች ሲመጣ ፣ ደመና ኤክስ ይሸፍንዎታል።

ቀላል ደረጃዎች

1. የደመና ኤክስ ዋና ቤተመፃሕፍትን የቦርድ ሞዴሉን በመቀነስ ያስመጡ

2. የሚያስፈልገውን DS1307 እና ሌላ የሚሰራ ቤተመጽሐፍት ያስመጡ

3. በ DS1307 ምጣኔዎች ከቤተ -መጽሐፍትዎ ይደሰቱ እና ይጫወቱ

ደረጃ 2 ፦ ኮድ! ፣ ኮድ !! ፣ ኮድ !

/*

* ፋይል ዋና

#ያካትቱ

#ያካትቱ

#ያካትቱ

ያልተፈረመ አጭር ጊዜ [9] ፣ Mdate [11];

ያልተፈረመ አጭር ሂሳብ ፣ ቀን ፣ ዓመት ፣ ሰዓት ፣ ደቂቃ ፣ ሰከንድ;

getDateTime ();

loadLcd ();

resetClock ();

int ስብስብ = 16;

int inc = 15;

int dec = 14;

አዘገጃጀት(){

pinMode (ስብስብ ፣ ግቤት);

pinMode (inc, ግቤት);

pinMode (ዲሴ ፣ ግቤት);

pinMode (1 ፣ ግቤት);

Lcd_setting (2, 3, 4, 5, 6, 7);

Ds1307_init ();

loop () {

ሳለ (readPin (ስብስብ) == 0) {

getDateTime ();

loadLcd ();

መዘግየቶች (500);

}

ከሆነ (readPin (ስብስብ) == 1)

resetClock ();

}

}

getDateTime () {

hr = Ds1307_read (ሰዓት); // ሰዓት

ጊዜ [0] = BCD2UpperCh (ሰዓት);

ጊዜ [1] = BCD2LowerCh (ሰዓት);

ጊዜ [2] = ':';

ደቂቃ = Ds1307_read (ደቂቃ); // ደቂቃ

ጊዜ [3] = BCD2UpperCh (ደቂቃ);

ጊዜ [4] = BCD2LowerCh (ደቂቃ);

ጊዜ [5] = ':';

ሰከንድ = Ds1307_read (ሁለተኛ); // ሰከንድ

ጊዜ [6] = BCD2UpperCh (ሰከንድ);

ጊዜ [7] = BCD2LowerCh (ሰከንድ);

mth = Ds1307_read (ወር); //ወር

Mdate [0] = BCD2UpperCh (mth);

Mdate [1] = BCD2LowerCh (mth);

Mdate [2] = ':';

ቀን = Ds1307_read (ቀን); //ቀን

Mdate [3] = BCD2UpperCh (ቀን);

Mdate [4] = BCD2LowerCh (ቀን);

Mdate [5] = ':';

yr = Ds1307_read (ዓመት); //አመት

Mdate [6] = '2';

Mdate [7] = '0';

Mdate [8] = BCD2UpperCh (ዓመት);

Mdate [9] = BCD2LowerCh (ዓመት);

}

loadLcd () {

int cx;

Lcd_cmd (ግልጽ);

Lcd_writeText (1 ፣ 1 ፣ “ቀን:”);

// lcdWriteTextCP (Mdate);

ለ (cx = 0; cx <11; cx ++)

Lcd_writeCP (Mdate [cx]);

Lcd_writeText (2 ፣ 1 ፣ “ጊዜ:”);

// lcdWriteTextCP (ጊዜ);

ለ (cx = 0; cx <9; cx ++)

Lcd_writeCP (ጊዜ [cx]);

}

resetClock () {

Ds1307_ ጻፍ (ሁለተኛ ፣ Binary2BCD (0)); // ይፃፉ 0 ሰከንድ

Ds1307_ ጻፍ (ደቂቃ ፣ Binary2BCD (12)) ፤ // 12 ደቂቃ ይጻፉ

Ds1307_ ጻፍ (ሰዓት ፣ ሁለትዮሽ 2BCD (12)); // 12 ሰዓታት ይፃፉ

Ds1307_ ጻፍ (ቀን ፣ Binary2BCD (3)); // ቀን ማክሰኞ ይፃፉ

Ds1307_ ጻፍ (ቀን ፣ Binary2BCD (24)); // ቀን 24 ይፃፉ

Ds1307_ ጻፍ (ወር ፣ Binary2BCD (4)); // ከኤፕሪል ወር ይፃፉ

Ds1307_ ጻፍ (ዓመት ፣ ሁለትዮሽ 2BCD (18)); // ዓመት 18 ይፃፉ ማለትም 2018

Ds1307_write (SQWE ፣ Binary2BCD (ድግግሞሽ)); // የ SQWE ውፅዓት ወደ 1hz ያዘጋጁ

Ds1307_ ጻፍ (ሁለተኛ ፣ Binary2BCD (startOscilator)); // ሁለተኛውን ወደ 0 ሰከንድ ዳግም ያስጀምሩ እና ማነቃቂያ ይጀምሩ

ሳለ (readPin (ስብስብ) == 1);

}

ደረጃ 3 በፕሮቴስ ውስጥ ዲዛይን

በፕሮቴስ ውስጥ ዲዛይን
በፕሮቴስ ውስጥ ዲዛይን

በ proteus ውስጥ ይተይቡ እነዚህ መስፈርቶች

1. cloudX

2. DS1307

3. 4.7 ኪ

4. አዝራር

5. lm016 LCD

6. ክሪስታል 32 ኪኸ

እና ወይም ኮርስ አዎንታዊ እና መሠረትዎን አይርሱ።

ግንኙነቶችዎን እንደ እኔ ያድርጉ።

የሚመከር: