📄 initial.c
字号:
//***********************************************************************
//FILE: initial.c
//功能: 初始化所有外设
//***********************************************************************
#include"HI2C_C51.H"
#include"time.h"
#include"main.h"
#include"key.h"
#include"temperature.h"
#include"spi.h"
//***********************************************************************
void InitialTime() //初始化时间参量
{
Year =4; //初始化年
Month =10; //初始化月
Day =20; //初始化日
Hour =2; //初始化小时
Ampm =1; //初始化AM/PM标志
Minute =24; //初始化分钟
Second =0; //初始化秒
HalfSec =0; //初始化秒信号量
AlarmHour=1; //初始化闹钟小时
AlarmMinute=1; //初始化闹钟分钟
AlarmAmpm=1; //初始化闹钟AM/PM
}
//***********************************************************************
void InitialIO() //初始化I/O口
{
P0M1 =0xB0; //设置按键为准双向
P0M2 =0x00;
P1M1 =0x3f; //设置SPI片选和BEEP
P1M2 =0x0c;
P2M1 =0xd9; //设置SPI总线I/O
P2M2 =0x00;
}
//***********************************************************************
void InitialRTC() //初始化RTC
{
RTCL =0x7f; //设置RTC的重装值
RTCH =0x00;
RTCCON =0x43; //允许RTC中断,使能RTC
WDCON =0xe0; //关闭WDT
IEN0 |=0x40; //使能RTC中断
}
//***********************************************************************
void Initial8576D() //初始化PCF8576D
{
ISendByte(PCF8576,0x48);//1:4显示,开显示
ISendByte(PCF8576,0x70);//不闪烁
}
//***********************************************************************
void InitialKey() //初始化按键相关
{
KBMASK =0x4f; //使能相应按键中断
KBCON =0x00; //清按键中断标志
IEN1 |=0x02; //允许按键中断
Mode =1; //显示模式初始化为1(时间模式)
KeyFlag =0; //初始化为无按键标志
ModifyP =0;
}
//***********************************************************************
void InitialSPI() //初始化SPI总线
{
SPCTL =0xdc; //初始化SPI时钟
SPSTAT =0xc0; //设置上升沿有效
}
//***********************************************************************
void InitialAll() //总初始化函数
{
InitialTime(); //初始化时间参量
InitialSPI(); //初始化SPI总线
InitialIO(); //初始化I/O口
InitialRTC(); //初始化RTC
InitialKey(); //初始化按键相关
Initial8576D(); //初始化PCF8576D
SendDatTo595(0xff<<Mode);//指示默认模式
EA=1; //开总中断
}
//********************************END************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -