資源簡介
基于單片機AT89S52實現PCF8563實時時鐘日歷,顯示在6位數碼管

代碼片段和文件信息
#include?“at89s52.h“
#define??uint??unsigned?int
#define??uchar?unsigned?char
#define ?PORT_Duan????P0 ?//數碼管段顯
#define ?PORT_Wei?????P2 ?//數碼管位顯
uchar?Sec_8563Min_8563Hou_8563Day_8563Week_8563Mon_8563Year_8563;??//時鐘全局變量
//---PCF8563端口位定義---------------------------------
sbit?sda_8563?=?P1^0;
sbit?scl_8563?=?P1^1;
//----函數聲明-------------------------------
void?start_8563(void);
void?stop_8563(void);
void?write_8563(uchar?data_8563);
uchar?read_8563(void);
void?Init_8563(void);
void?Read_data_8563(void);
void?Display_8563(uchar?time_1uchar?time_0);
void?Display_Int(uint?dat);
/******************************************/
uchar?dat[6]; ?? //用戶數據輸入口
uchar?code?DSY_d[]={?? //字型碼(段選碼)0-9低電平有效
0xc00xf90xa40xb0
0x990x920x820xf8
0x800x90};?
uchar?code?DSY_w[]={ ?????????????//低電平有效
0xfe0xfd0xfb0xf7
0xef0xdf0xbf0x7f};? //位選信號
//計數函數
/*?動態掃描函數*/
uchar?num??;
void?SEG_DSY(?void?) ???//數碼管顯示函數
{
????PORT_Wei?=?PORT_Wei?; ??//屏蔽高兩位
PORT_Duan=?0Xff?; ?????//消隱
PORT_Duan??=?DSY_d[?dat[num?]]?;? //顯示段
PORT_Wei?=?0XFF?; ? ??//消隱
PORT_Wei=?DSY_w[?num?]?; ?//3位數碼管
if(?++num?==?6?)?num?=?0?;
}
void?TIME_T1(void)
{
???TMOD?=?0X10?;
???TH1?=?(65536-2000)/256?; ??//?2ms
???TL1?=?(65536-2000)%256?;
???EA?=?1?;
???ET1?=?1?;
???TR1?=?1?;
}
//---PCF8563驅動
//--------------------------------------------------------------------------
//函數名稱:??????start_8563()
//函數功能:??????8563啟動時序
//其他說明:??????
//--------------------------------------------------------------------------
void?start_8563(void)//啟動8563
{
sda_8563?=?1;
scl_8563?=?1;
sda_8563?=?0;
}
//--------------------------------------------------------------------------
//函數名稱:??????stop_8563()
//函數功能:??????8563停止時序
//其他說明:??????
//--------------------------------------------------------------------------
void?stop_8563(void)?? //停止8563
{
sda_8563?=?0;
scl_8563?=?1;
sda_8563?=?1;
}
//--------------------------------------------------------------------------
//函數名稱:??????write_8563(uchar?data_8563)
//函數功能:??????8563寫一個字節
//其他說明:??????
//--------------------------------------------------------------------------
void?write_8563(uchar?data_8563)//寫一位數據8563
{
uchar?i;
for(i=0;i<8;i++)
{
scl_8563?=?0;
if(data_8563&0x80)
{
sda_8563?=?1;
}
else?sda_8563?=?0;
scl_8563?=?1;
data_8563<<=1;
scl_8563?=?0;//最后拉低電平完成一個完整脈沖(error)
}
sda_8563?=?1;
scl_8563?=?1;
scl_8563?=?0;
}
//--------------------------------------------------------------------------
//函數名稱:??????read_8563()
//函數功能:??????8563讀一個字節
//其他說明:??????
//--------------------------------------------------------------------------
uchar?read_8563(void) //讀一位數據8563
{
uchar?itemp;
for(i=0;i<8;i++)
{
scl_8563?=?0;
temp<<=1;
scl_8563?=?1;
if(sda_8563==1)
{
temp?|= 0x01;
}
}
sda_8563?=?1;
scl_8563?=?0;
scl_8563?=?1;
scl_8563?=?0;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????9674??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\output\SX-108B-17
?????文件???????1872??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\output\SX-108B-17.hex
?????文件????????100??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\output\SX-108B-17.lnp
?????文件??????10885??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\output\SX-108B-17.obj
?????文件???????1378??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\output\SX-108B-17.plg
?????文件???????5210??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\src\SX-108B-17.c
?????文件??????10670??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\src\SX-108B-17.lst
?????文件??????12254??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\src\SX-108B-17.m51
?????文件????????169??2012-07-23?09:04??數碼管顯示PCF8563實時時鐘日歷\SX-108B-17.plg
?????文件??????56864??2012-07-24?12:21??數碼管顯示PCF8563實時時鐘日歷\SX-108B-17.uvopt
?????文件??????13270??2012-07-23?11:32??數碼管顯示PCF8563實時時鐘日歷\SX-108B-17.uvproj
?????文件??????56866??2012-07-23?14:07??數碼管顯示PCF8563實時時鐘日歷\SX-108B-17_uvopt.bak
?????文件??????13055??2012-07-23?09:05??數碼管顯示PCF8563實時時鐘日歷\SX-108B-17_uvproj.bak
?????目錄??????????0??2012-07-24?17:43??數碼管顯示PCF8563實時時鐘日歷\output
?????目錄??????????0??2012-07-24?17:43??數碼管顯示PCF8563實時時鐘日歷\src
?????目錄??????????0??2012-07-24?17:43??數碼管顯示PCF8563實時時鐘日歷
-----------?---------??----------?-----??----
???????????????192267????????????????????16
- 上一篇:運維服務規范
- 下一篇:Memcached相關程序
評論
共有 條評論