📄 main.c
字号:
/****************************************Copyright (c)**************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
** http://www.zyinside.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name: main.c
** Last modified Date: 2006-02-22
** Last Version: 1.0
** Descriptions: header file of the specific codes for LPC2200 target boards
** Every project should include a copy of this file, user may modify it as needed
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
********************************************************************************************************/
#define IN_MAIN
#include "config.h"
#include "uart.h"
#include "RTC.h"
#pragma import(__use_no_semihosting_swi) //don't delete this line
/*********************************************************************************************************
** Function name: IRQ_Exception
**
** Descriptions: interrupt exceptional handler , change it as needed
** don't delete this function
** input parameters: None
** Returned value: None
**
**
** Created by: Chenmingji
** Created Date: 2006/02/22
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void IRQ_Exception(void)
{
}
/**************************************************************************************
**函数名称:PC_DispChar()
**函数功能:向PC机发送显示字符
**入口参数:no 显示位置
** char 显示的字符,不能为0xff
**出口参数:无
**************************************************************************************/
void PC_DispChar (uint8 no, uint8 chr)
{
UARTn_SendByte(0,0xff);
UARTn_SendByte(0,0x81);
UARTn_SendByte(0,no);
UARTn_SendByte(0,chr);
UARTn_SendByte(0,0x00);
}
uint8 const SHOWTABLE[10]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};
/**************************************************************************************
**函数名称:SendTimeRTC ()
**函数功能:读取RTC的时间值,并将读出的时间通过串口发送到PC机显示。
**入口参数:无
**出口参数:无
**************************************************************************************/
void SendTimeRTC(void)
{
RTCtime curtime;
uint32 bak;
GetRTCtime(&curtime);
bak = curtime.year; // 获取 年
PC_DispChar(0, SHOWTABLE[bak / 1000]);
bak = bak % 1000;
PC_DispChar(1, SHOWTABLE[bak / 100]);
bak = bak % 100;
PC_DispChar(2, SHOWTABLE[bak / 10]);
PC_DispChar(3, SHOWTABLE[bak % 10]);
bak = curtime.month; // 获取 月
PC_DispChar(4, SHOWTABLE[bak / 10]);
PC_DispChar(5, SHOWTABLE[bak % 10]);
bak = curtime.day; // 获取 日
PC_DispChar(6, SHOWTABLE[bak / 10]);
PC_DispChar(7, SHOWTABLE[bak % 10]);
bak = curtime.week; // 获取 星期
PC_DispChar(8, SHOWTABLE[bak]);
bak = curtime.hour; // 获取 小时
PC_DispChar(9, SHOWTABLE[bak / 10]);
PC_DispChar(10, SHOWTABLE[bak % 10]);
bak = curtime.min; // 获取 分钟
PC_DispChar(11, SHOWTABLE[bak / 10]);
PC_DispChar(12, SHOWTABLE[bak % 10]);
bak = curtime.sec; // 获取 秒钟
PC_DispChar(13, SHOWTABLE[bak / 10]);
PC_DispChar(14, SHOWTABLE[bak % 10]);
}
/*********************************************************************************************************
**函数名称:Main ()
**函数功能:读取实时时钟的值,通过串口发送出去。
********************************************************************************************************/
void Main(void)
{
RTCtime time;
TargetInit(VPBDIV_DATA, PLLCFG_DATA, MAMTIM_DATA); // don't delete
while((PLLSTAT & (1 << 10)) == 0); // can delete
UARTn_Init(0,115200,8,1,0,0);
RTCInit(1); //选择外部32.768KHz晶振
//设置时间为:2006-2-21 23:00:00 星期2
time.sec = 0;
time.min = 0;
time.hour = 23;
time.day = 21;
time.week = 2;
time.month = 2;
time.year = 2006;
SetRTCtime(time);
CIIR = 0x01; // 设置秒值的增量产生1次中断
while(1)
{
while (0 == (ILR & 0x01)); // 等待RTC增量中断
ILR = 0x01;
SendTimeRTC();
}
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -