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

📄 initial.c

📁 用NXP公司P89LPC9401单片机开发液晶显示,包括开发资料,各功能驱动程序.
💻 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 + -