91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

利用430控制DS1302,可以顯示日期和時間,通過按鍵可以調整時間。同時可以進行定時,比如鬧鐘,可以定兩個時間

資源截圖

代碼片段和文件信息


#include?
#define?uchar?unsigned?char?
#define?uint?unsigned?int

#define?SDA_H?P2OUT|=BIT6
#define?SDA_L?P2OUT&=~BIT6//模擬數據位
#define?SCL_H?P2OUT|=BIT1
#define?SCL_L?P2OUT&=~BIT1//模擬時鐘
#define?RST_H?P2OUT|=BIT7
#define?RST_L?P2OUT&=~BIT7//復位
#define?RST_out?P2DIR|=BIT7

#define?SCL_out?P2DIR?|=?BIT1????//SCL設置為輸出模式
#define?SDA_in??P2DIR?&=?~BIT6???//SDA改成輸入模式
#define?SDA_out?P2DIR?|=?BIT6????//SDA變回輸出模式
#define?SDA_val?P2IN&BIT6????????//SDA的位值
?
#define?TRUE????1
#define?FALSE???0
uchar?Setdata[]={0x090x010x060x090x120x080x06};//時鐘預設值
/*

#define?AM(X) X
#define?PM(X) (X+12)??寫地址?????//?轉成24小時制
#define?DS1302_SECOND 0x80???讀地址?0x81
#define?DS1302_MINUTE 0x82??0x83
#define?DS1302_HOUR 0x84??0x85
#define?DS1302_WEEK 0x8A??0x8b
#define?DS1302_DAY 0x86??0x87
#define?DS1302_MONTH 0x88??0x89
#define?DS1302_YEAR 0x8C??0x8D
#define?DS1302_RAM(X) (0xC0+(X)*2)??? //用于計算?DS1302_RAM?地址的宏?
*/
/*******************************************
函數名稱:delay
功????能:延時約100us的時間
********************************************/
void?delays(void)
{
????uchar?i;
????
????for(i?=?0;i?????????_NOP();
}
/************向DS1302寫入一BYTE數據********/
void?DS1302InputByte(uchar?data)
{
??uchar?i;
??SDA_out;
??RST_H;
?
??for(i=0;i<8;i++)
??{
????if(data&0x01)?SDA_H;
????else?SDA_L;
????SCL_L;
????delays();
????SCL_H;
????delays();
????data=data>>1;
??}
??
}
/*************從DS1302讀入一字節的數據**************/
uchar??DS1302OutputByte(void)
{
??uchar?itemp=0x00;
??SDA_in;
??RST_H;

??for(i=0;i<8;i++)
??{
????temp=temp>>1;
????SCL_H;
????delays();
????SCL_L;
????delays();??
?????if(SDA_val)
??????temp|=BIT7;
??}
??return?temp;
}
/**********向特定地址寫入數據*************/
void?write1302(uchar?addressuchar?data)
{
??RST_L;
??SCL_L;
??_NOP();
??RST_H;
??DS1302InputByte(address);
??DS1302InputByte(data);
??SCL_H;
??RST_L;
}
/************從特定地址讀入數據***********/
uchar?read1302(uchar?address)
{
??uchar?data;
??RST_L;
??SCL_L;
??_NOP();
??RST_H;
??DS1302InputByte(address);
??data=DS1302OutputByte();
??SCL_H;
??RST_L;
??return?data;
}
/************設置時間*****************/
void?DS1302_settime(uchar?*data)
{
??uchar?iaddress;
??address=0x8c;
??write1302(0x8e0x00);
??for(i=0;i<7;i++)
??{
????write1302(addressdata[i]);
????address-=2;
??}
??write1302(0x8e0x80);
}
/************得到時間*****************/
void?DS1302_Get(uchar?*time)
{
??uchar?valueaddress=0x8D;
??for(value=0;value<7;value++)
??{
????time[value]=read1302(address);
????time[value]=((time[value]&0x70)>>4)*10+(time[value]&0x0F);
????address-=2;
??}
}
/*************1302初始化************/
void?init_1302()
{
??RST_out;
??SCL_out;
??RST_L;
??SCL_L;
??delays();??
??SCL_H;?

}
/***********一次讀出多個字節****************/
void?BurstRead1302(uchar?*ptr)
{
????uchar?i;
??
????RST_L;?
????SCL_L;?
????_NOP();
????RST_H;
????DS1302InputByte(0xbf);?????????????//0xbf:時鐘多字節讀命令
????for?(i?=?8;?i?>?0;?i

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????160??2010-08-10?21:56??DS1302_5110_定時\1302.eww

?????文件????????436??2010-08-11?17:16??DS1302_5110_定時\1302.h

?????文件??????29652??2010-08-15?20:41??DS1302_5110_定時\Debug\Exe\DS1302.d43

?????文件????????169??2010-08-15?20:41??DS1302_5110_定時\Debug\Obj\DS1302.pbd

?????文件??????90039??2010-08-15?20:41??DS1302_5110_定時\Debug\Obj\main.r43

?????文件???????3216??2010-08-15?20:41??DS1302_5110_定時\ds1302.c

?????文件???????2310??2010-08-15?20:41??DS1302_5110_定時\DS1302.dep

?????文件??????13407??2010-08-11?10:27??DS1302_5110_定時\DS1302.ewd

?????文件??????44774??2008-06-02?10:35??DS1302_5110_定時\DS1302.ewp

?????文件????????802??2010-08-12?10:54??DS1302_5110_定時\key.c

?????文件???????6651??2010-08-12?11:16??DS1302_5110_定時\main.c

?????文件???????4864??2010-08-11?17:53??DS1302_5110_定時\NOKIA_5110_ALL.c

?????文件???????5665??2010-08-11?17:54??DS1302_5110_定時\NOKIA_5110_ALL.h

?????文件???????3847??2010-08-15?20:41??DS1302_5110_定時\settings\1302.wsdt

?????文件???????2472??2010-08-15?20:41??DS1302_5110_定時\settings\DS1302.cspy.bat

?????文件???????5909??2010-08-15?20:41??DS1302_5110_定時\settings\DS1302.dbgdt

?????文件????????990??2010-08-15?20:41??DS1302_5110_定時\settings\DS1302.dni

?????目錄??????????0??2010-08-12?09:01??DS1302_5110_定時\Debug\Exe

?????目錄??????????0??2010-08-12?09:01??DS1302_5110_定時\Debug\List

?????目錄??????????0??2010-08-15?20:41??DS1302_5110_定時\Debug\Obj

?????目錄??????????0??2010-08-12?09:01??DS1302_5110_定時\Debug

?????目錄??????????0??2010-08-12?09:01??DS1302_5110_定時\settings

?????目錄??????????0??2010-08-15?20:41??DS1302_5110_定時

-----------?---------??----------?-----??----

???????????????215363????????????????????23


評論

共有 條評論