久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 基于51單片機的電子萬年歷代碼 [打印本頁]

作者: 10086MVP    時間: 2018-12-7 14:58
標題: 基于51單片機的電子萬年歷代碼
#include < reg52.h >

#include < character.h >

#include < lcd.h >

#include < clock.h >

#include < sensor.h>

#include < calendar.h >

#include < key.h >

/*****************************預定義**************************************/

#define uchar unsigned char

#define uint unsigned int

/****************************************************************************/ sbit bell = P2 ^ 0; //定義蜂鳴器端口

sbit in = P2 ^ 7; //定義紅外檢測端口

/***************************************************************************** * 名稱: Timer0_Service() inturrupt 1

* 功能: 中斷服務程序整點報時3聲嘟嘟的聲音

*****************************************************************************/ void Timer0_Service() interrupt 1

{

static uchar count = 0;

static uchar flag = 0; //記錄鳴叫的次數

count = 0;

TR0 = 0; //關閉Timer0

TH0 = 0x3c;

TL0 = 0XB0; //延時50 ms

TR0 = 1 ; //啟動Timer0

count ++;

if( count == 20 ) //鳴叫1 秒

{

bell = ~ bell;

count = 0;

flag ++;

}

if( flag == 6 )

{

flag = 0;

TR0 = 0; //關閉Timer0

}

}

/*****************************************************************************

* 名稱: Timer2_Servie() interrupt 5

* 功能: 中斷服務程序整點報時一分鐘

*****************************************************************************/

void Timer3_Service() interrupt 5

{

static uchar count;

TF2 = 0; //軟件清除中斷標志

count ++;

if( in == 1 )

{

count = 0; //計算清0

TR2 = 0; //關閉Timer2

bell = 1; //關閉蜂鳴器

}

if( count == 120 ) // 一分鐘后關閉報警

{

count = 0; //計算清0

TR2 = 0; //關閉Timer2

bell = 1; //關閉蜂鳴器

}

}

/******************************************************************************

* 函數名稱:main()

********************************************************************************/

void main( void )

{

uchar clock_time[7] = { 0x00, 0x00, 0x12, 0x29, 0x06, 0x08 }; //定義時間變量秒分時日月年uchar alarm_time[2] = { 0, 0}; //鬧鐘設置alarm_time[0]: 分鐘alarm_time[1] :小時

uchar temperature[2]; //定義溫度變量temperature[0] 低8位temperature[1] 高8位

Lcd_Initial(); //LCD初始化

clock_Initial( clock_time ); //時鐘初試化

/***********************中斷初始化***************************/

EA = 1; //開總中斷

ET0 = 1; //Timer0 開中斷

ET2 = 1; //Timer2 開中斷

TMOD = 0x01 ; //Timer0 工作方式1

RCAP2H = 0x3c;

RCAP2L = 0xb0; //Timer2 延時50 ms

while( 1 )

{

switch( Key_Scan() )

{

case up_array:

{

Key_Idle();

}

break;

case down_array:

{

Key_Idle();

}

break;

case clear_array:

{

Key_Idle();

}

break;

case function_array:{

Key_Function( clock_time, alarm_time );

}

case null:

{

Clock_Fresh( clock_time ); //時間刷新

Lcd_Clock( clock_time ); //時間顯示

Sensor_Fresh( temperature ); //溫度更新

Lcd_Temperture( temperature ); //溫度顯示

Calendar_Convert( 0 , clock_time );

Week_Convert( 0, clock_time );

//整點報時

if( ( * clock_time == 0x59 ) && ( * ( clock_time + 1 ) == 0x59 ) )

{

bell = 0;

TR2 = 1; //啟動Timer2

}

//鬧鐘報警

if( * alarm_time == * ( clock_time + 1 ) ) //分鐘相吻合

if( * ( alarm_time + 1 ) == *( clock_time + 2 ) ) //小時相吻合

{

bell = 0;

TR2 = 1; //啟動Timer2

}

}

break;

}

}

}





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 粉嫩av久久一区二区三区 | 日韩欧美中文字幕在线观看 | 日本粉嫩一区二区三区视频 | 在线观看亚洲精品视频 | 亚洲午夜视频 | 国产色在线 | 九九综合| heyzo在线 | 精品久久久久久一区二区 | 国产成人综合亚洲欧美94在线 | 国产精品亚洲第一区在线暖暖韩国 | 亚洲精品日韩精品 | 中文字幕日韩欧美一区二区三区 | 一级黄色录像片子 | 美女久久 | 天天干干 | 亚洲成人一级 | 久久国产精品-国产精品 | 日本色婷婷 | 午夜码电影 | 成人午夜免费在线视频 | 欧美日本韩国一区二区三区 | 成人免费影院 | av一级毛片 | 成人av观看 | 三级在线视频 | 国产精品久久久久久吹潮日韩动画 | 国产精品久久久99 | 精品国产18久久久久久二百 | 日韩精品中文字幕在线 | 国产欧美一区二区三区国产幕精品 | 福利片一区二区 | 国产成人亚洲精品 | 久久宗合色 | japan25hdxxxx日本 做a的各种视频 | 欧美高清视频在线观看 | 伊人网站在线 | 国产精品区二区三区日本 | 国产xxxx在线 | 日韩一区二区在线免费观看 | 免费黄色a视频 |