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

📄 12887.c

📁 mt8880时钟芯片的C和汇编程序
💻 C
字号:
#include<intrins.h>
#include<absacc.h>
#include "12887.h"
#include "delay.h"
//extern unsigned char uart[12];
void csh12887(uchar *p)
{
P2|=0x08;
cs12887=0;
ds12887=1;
XBYTE [0xef0d]=0x80;//D寄存器 设置D寄存器 VRT=1使片内寄存器和RAM数据有效
XBYTE [0xef0c]=0x00;//C寄存器 设置C寄存器 清除已有的中断标志
XBYTE [0xef0b]=0x82;//B寄存器 0bh 寄存器B地址=0bH的SET=1 芯片停止工作
				  //选择24小时制    1-00000 1-0-dm
				  //DM=0选择BCD码	
XBYTE [0xef0a]=0x20;//A寄存器 选择时钟频率=32.768KHz 无中断周期和SQW输出频率

XBYTE [0xef09]=p[0];//年
XBYTE [0xef08]=p[1];//月
XBYTE [0xef07]=p[2];//日
XBYTE [0xef06]=p[3];//星期
XBYTE [0xef04]=p[4];//时
XBYTE [0xef02]=p[5];//分
XBYTE [0xef00]=p[6];//秒
															 
XBYTE [0xef0b]=0x02;
cs12887=1;
}

void init12887()
{
cs12887=0;
ds12887=1;
XBYTE [0x0d]=0x80;//D寄存器 设置D寄存器 VRT=1使片内寄存器和RAM数据有效
XBYTE [0x0c]=0x00;//C寄存器 设置C寄存器 清除已有的中断标志
XBYTE [0x0b]=0x82;//B寄存器 0bh 寄存器B地址=0bH的SET=1 芯片停止工作
				  //选择24小时制    1-00000 1-0-dm
				  //DM=0选择BCD码	
XBYTE [0x0a]=0x20;//A寄存器 选择时钟频率=32.768KHz 无中断周期和SQW输出频率

XBYTE [0x09]=0x07;//年
XBYTE [0x08]=0x11;//月
XBYTE [0x07]=0x06;//日
XBYTE [0x06]=0x02;//星期
XBYTE [0x04]=0x20;//时
XBYTE [0x02]=0x41;//分
XBYTE [0x00]=0x30;//秒

XBYTE [0x0b]=0x02;
cs12887=1;
}
void set12887(uchar add,uchar dat)
{
cs12887=0;
ds12887=1;
XBYTE [0xef0d]=0x80;//D寄存器 设置D寄存器 VRT=1使片内寄存器和RAM数据有效
XBYTE [0xef0c]=0x00;//C寄存器 设置C寄存器 清除已有的中断标志
XBYTE [0xef0b]=0x82;//B寄存器 0bh 寄存器B地址=0bH的SET=1 芯片停止工作
				  //选择24小时制    1-00000 1-0-dm
				  //DM=0选择BCD码	
XBYTE [0x0a]=0x20;//A寄存器 选择时钟频率=32.768KHz 无中断周期和SQW输出频率

		switch(add)
	{	case 1:	XBYTE [0xef09]=dat;break;//年
		case 2:	XBYTE [0xef08]=dat;break;//月
		case 3:	XBYTE [0xef07]=dat;break;//日
		case 4:	XBYTE [0xef06]=dat;break;//星期
		case 5:	XBYTE [0xef04]=dat;break;//时
		case 6:	XBYTE [0xef02]=dat;break;//分
		case 7:	XBYTE [0xef00]=dat;break;//秒
		default: break;

	}

XBYTE [0xef0b]=0x02;
cs12887=1;
}

⌨️ 快捷键说明

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