⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msp430rtc.c

📁 这是一个在MSP430单片机上
💻 C
字号:
/******************************************************
*   文件名称:
*           RTC.c
*   文件说明:
*           程序通过口IIC总线操作实时时钟DS1337。
主要实现RTC.h中有声名的几个函数.
******************************************************/

#include <msp430x16x.h>
#include "MSP430I2C.h"
#include "MSP430RTC.h"

/*定义写RTC时间函数
指向结构体的指针变量*Time指向输入时间数据的首地址*/
unsigned char RTCWriteTime(struct RTCTime *Time)
{    
	unsigned char ret;
	ret = I2CWriteStr(RTC_DS1337,0x00,(unsigned char *)Time,0x07); 
	return ret;  
}

/*定义读RTC时间函数
指向结构体的指针变量*Time指向存储读出时间数据的首地址*/
unsigned char RTCReadTime(struct RTCTime *Time)
{
	unsigned char ret;
	ret = I2CReadStr(RTC_DS1337,0x00,(unsigned char *)Time,7);
	return ret;
}

/*定义写RTC闹钟1函数
指向结构体的指针变量*Alarm1指向要写入时间数据的首地址*/
unsigned char RTCSetAlarm1(struct RTCAlarm1 *Alarm1)
{
	unsigned char ret;
	ret = I2CWriteStr(RTC_DS1337,0x07,(unsigned char *)Alarm1,4);
	return ret;
}

/*定义写RTC闹钟2时间函数
指向结构体的指针变量*Alarm2指向输入闹钟数据的首地址*/
unsigned char RTCSetAlarm2(struct RTCAlarm2 *Alarm2)
{
	unsigned char ret;
	ret = I2CWriteStr(RTC_DS1337,0x0B,(unsigned char *)Alarm2,3);
	return ret;
}

/*初始化状态寄存器*/
unsigned char RTCSetStatus(struct RTCSta * Sta)
{
	unsigned char ret;
	ret = I2CWriteStr(RTC_DS1337,0x0F,(unsigned char *)Sta,1);
	return ret;
}

unsigned char RTCSetControl(struct RTCContr* Contr)
{
	unsigned char ret;
	ret = I2CWriteStr(RTC_DS1337,0x0E,(unsigned char *)Contr,1);
	return ret;
}
/*定义读RTC闹钟1时间函数*/
unsigned char RTCReadAlarm1(struct RTCAlarm1 *Alarm1)
{
	unsigned char ret;
	ret = I2CReadStr(RTC_DS1337,0x07,(unsigned char *)Alarm1,4);
	return ret;
}

/*定义读RTC闹钟2时间函数*/
unsigned char RTCReadAlarm2(struct RTCAlarm2 *Alarm2)
{
	unsigned char ret;
	ret = I2CReadStr(RTC_DS1337,0x0B,(unsigned char *)Alarm2,3);
	return ret;
}

/*定义读RTC控制寄存器函数*/
unsigned char RTCReadControl(struct RTCContr *Contr)
{
	unsigned char ret;
	ret = I2CReadStr(RTC_DS1337,0x0E,(unsigned char *)Contr,1);
	return ret;
}


unsigned char RTCReadStatus(struct RTCSta * Sta)
{
	unsigned char ret;
	ret = I2CReadStr(RTC_DS1337,0x0F,(unsigned char *)Sta,1);
	return ret;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -