call8563.c
来自「单片机C语言教程」· C语言 代码 · 共 57 行
C
57 行
/********************************************************************/
/* 这是调用PCF8563汇编程序(F8563A.ASM)的C51程序, */
/* 文件名CALL8563.c */
/* 功能: 运行此程序,可将PCF8563的时钟日历(7 bytes)读出并将新的 */
/* 时钟日历值置入。 */
/********************************************************************/
#include <reg52.h> //单片机头文件
#include <absacc.h>
#define uchar unsigned char //简化定义
#define uint unsigned int
void delay1(uint x);
void fill60(void);
extern uchar chai3; //把全局变量chai3声明为外部变量
extern uchar a_func3(uchar); //把a_func3 声明为外部函数
uchar idata w[7];
void delay1(uint x) //延时程序
{
uchar tw;
while (x-->0){
for (tw=0;tw<125;tw++){;}
}
}
void fill60(void) // 准备初始日历时钟值
{
DBYTE[0x30]=0x00;
DBYTE[0x31]=0x59;
DBYTE[0x32]=0x23;
DBYTE[0x33]=0x31;
DBYTE[0x34]=0x01;
DBYTE[0x35]=0x12;
DBYTE[0x36]=0x07;
}
void main() //主程序
{
SP=0xdf;
delay1(1);
EA=0;
chai3=a_func3(0x00); // 读PCF8563日历时钟值
w[0]=DBYTE[0x30];
w[1]=DBYTE[0x31];
w[2]=DBYTE[0x32];
w[3]=DBYTE[0x33];
w[4]=DBYTE[0x34];
w[5]=DBYTE[0x35];
w[6]=DBYTE[0x36];
fill60(); // 输入初始日历时钟值
chai3=a_func3(0xff); // 写PCF8563日历时钟值
while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?