feat: 全量同步 254 个常用的 Arduino 扩展库文件
This commit is contained in:
69
arduino-libs/arduino-cli/libraries/M5Core2-master/src/RTC.h
Normal file
69
arduino-libs/arduino-cli/libraries/M5Core2-master/src/RTC.h
Normal file
@@ -0,0 +1,69 @@
|
||||
#ifndef __RTC_H__
|
||||
#define __RTC_H__
|
||||
|
||||
#include <Wire.h>
|
||||
|
||||
typedef struct {
|
||||
uint8_t Hours;
|
||||
uint8_t Minutes;
|
||||
uint8_t Seconds;
|
||||
} RTC_TimeTypeDef;
|
||||
|
||||
typedef struct {
|
||||
uint8_t WeekDay;
|
||||
uint8_t Month;
|
||||
uint8_t Date;
|
||||
uint16_t Year;
|
||||
} RTC_DateTypeDef;
|
||||
|
||||
class RTC {
|
||||
public:
|
||||
RTC();
|
||||
|
||||
void begin(void);
|
||||
void GetBm8563Time(void);
|
||||
|
||||
int SetTime(RTC_TimeTypeDef* RTC_TimeStruct);
|
||||
int SetDate(RTC_DateTypeDef* RTC_DateStruct);
|
||||
|
||||
void GetTime(RTC_TimeTypeDef* RTC_TimeStruct);
|
||||
void GetDate(RTC_DateTypeDef* RTC_DateStruct);
|
||||
|
||||
int SetAlarmIRQ(int afterSeconds);
|
||||
int SetAlarmIRQ(const RTC_TimeTypeDef& RTC_TimeStruct);
|
||||
int SetAlarmIRQ(const RTC_DateTypeDef& RTC_DateStruct,
|
||||
const RTC_TimeTypeDef& RTC_TimeStruct);
|
||||
|
||||
void clearIRQ();
|
||||
void disableIRQ();
|
||||
|
||||
public:
|
||||
uint8_t Second;
|
||||
uint8_t Minute;
|
||||
uint8_t Hour;
|
||||
uint8_t Week;
|
||||
uint8_t Day;
|
||||
uint8_t Month;
|
||||
uint8_t Year;
|
||||
uint8_t DateString[9];
|
||||
uint8_t TimeString[9];
|
||||
|
||||
uint8_t asc[14];
|
||||
|
||||
private:
|
||||
void Bcd2asc(void);
|
||||
void DataMask();
|
||||
void Str2Time(void);
|
||||
void WriteReg(uint8_t reg, uint8_t data);
|
||||
uint8_t ReadReg(uint8_t reg);
|
||||
uint8_t Bcd2ToByte(uint8_t Value);
|
||||
uint8_t ByteToBcd2(uint8_t Value);
|
||||
|
||||
private:
|
||||
/*定义数组用来存储读取的时间数据 */
|
||||
uint8_t trdata[7];
|
||||
/*定义数组用来存储转换的 asc 码时间数据*/
|
||||
// uint8_t asc[14];
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user