資源簡介
DS1302的源代碼,超詳細,很容易看懂,都有注釋,小白都能看懂

代碼片段和文件信息
#include?“rtc.h“
/******************************************************************************
*?@?File?name?-->?ds1302.c
*?@?Author????-->?By@?Sam?Chan
*?@?Version???-->?V1.0
*?@?Date??????-->?08?-?23?-?2012
*?@?Brief?????-->?時鐘芯片DS1302驅動
*
*?@?Copyright?(C)?20**
*?@?All?rights?reserved
*******************************************************************************
*
*??????????????????????????????????File?Update
*?@?Version???-->?V1.0.1
*?@?Author????-->?By@?Sam?Chan
*?@?Date??????-->?10?-?20?-?2013
*?@?Revise????-->?A、增加對STM32控制的移植支持
*?@???????????-->?B、增加對內置的RAM操作相關函數
*?@???????????-->?C、增加檢測DS1302是否存在,是否第一次上電檢測函數
*?@???????????-->?D、增加對DS1302內置的鋰電池充電寄存器參數設置函數和結構體
*
******************************************************************************/
/******************************************************************************
??????????????????????????????????定義變量
******************************************************************************/
//Time_Typedef?TimeValue; //定義時間數據指針
Charge_Typedef?ChargeValue; //定義充電寄存器
u8?ReadTimFlag?=?0;
/******************************************************************************
??????????????????????????????初始化時間
???????????????????????????????設置當前時間和充電方式的結構體
******************************************************************************/
//2017年12月21日10:20:00,星期三
//void?Settime_Now(void)
//{
// TimeValue.year?=?17;//年
// TimeValue.month?=?12;//月
// TimeValue.date?=?21;//日
// TimeValue.week?=?4;//周
// TimeValue.hour?=?10;//時
// TimeValue.minute?=?20;//分
// TimeValue.second?=?00;//秒
//}
u8?ReadTime[7]=?{0};
u8?g[7]?=?{0};
//2017年12月25號10:00:00星期一
u8?Writetime[7]=?{
????0//秒
????44//分
????9//時
????15//日
????01//月
????1?//周
????18//年
};
void?SetCharge_Way(void)
{
????ChargeValue.TCSx?=?0x0a;//選擇開啟充電
????ChargeValue.DSx?=?0x01;//選擇開啟一個二極管
????ChargeValue.RSx?=?0x03;//選擇開啟8K電阻0000?0011
}
/******************************************************************************
*?Function?Name?-->?GPIO初始化
*?Description???-->?none
*?Input?????????-->?none
*?Output????????-->?none
*?Reaturn???????-->?none
******************************************************************************/
/*
static?void?DS1302_OUT(void)
{
GPIO_InitTypeDef?GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_Out_PP;
GPIO_Init(GPIOC?&GPIO_InitStructure);
}
static?void?DS1302_IN(void)
{
GPIO_InitTypeDef?GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_IPU;
GPIO_Init(GPIOC?&GPIO_InitStructure);
}
*/
/******************************************************************************
*?Function?Name?-->?DS1302寫入一個字節數據
*?Description???-->?none
*?Input?????????-->?dat:要寫入的數據
*?Output????????-->?none
*?Reaturn???????-->?none
******************************************************************************/
void?DS1302_Write_Byte(u8?d
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????13069??2018-12-19?09:13??RTC\RTC.c
?????文件???????7321??2018-01-29?11:13??RTC\RTC.h
?????目錄??????????0??2019-01-24?15:02??RTC
-----------?---------??----------?-----??----
????????????????20390????????????????????3
- 上一篇:STM8和SX1278的原理圖
- 下一篇:elite4 2.x驅動
評論
共有 條評論