/*
* 测试硬件平台: LPLD_K60 Card
* 版权所有: 北京拉普兰德电子技术有限公司
* 网络销售: http://laplenden.taobao.com
* 公司门户: http://www.lpld.cn
*
* 说明: 本工程基于Kintis K60开源底层开发包开发,
* 所有开源驱动代码均在"LPLD"文件夹下,调用说明见文档[#LPLD-003-N]
*
* 文件名: LPLD_PIT.c
* 用途: 定时中断模块例程
*
*
*
*/
#include "common.h"
#include "HAL_GPIO.h"
#include "HAL_PIT.h"
//函数声明
void init_gpio(void);
void pit_isr0();
void pit_isr1();
/********************************************************************/
void main (void)
{
init_gpio();
/*
初始化定时中断0,
1000000微秒=1秒,
自定义中断服务程序pit_isr0
*/
LPLD_PIT_Init(0, 1000000, pit_isr0);
/*
初始化定时中断1,
2000000微秒=2秒,
自定义中断服务程序pit_isr1
*/
LPLD_PIT_Init(1, 2000000, pit_isr1);
while(1)
{
}
}
/*
* 初始化LPLD_K60 Card上的GPIO
*
* PTD8~PTD15 - D1~D8
*
*/
void init_gpio()
{
// 配置 PTD8~PTD15 为GPIO功能,方向为输出
LPLD_GPIO_Init(PORTD_BASE_PTR, 8, 1, 1, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 9, 1, 0, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 10, 1, 1, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 11, 1, 0, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 12, 1, 1, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 13, 1, 0, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 14, 1, 1, 0);
LPLD_GPIO_Init(PORTD_BASE_PTR, 15, 1, 0, 0);
}
/*
* PIT0中断服务子程序
*
* 该程序每1秒触发一次,不用清标志位,因为已经在底层处理了。
*
*/
void pit_isr0()
{
LPLD_GPIO_Toggle(PTD_BASE_PTR, 0x0000FF00);
printf("PIT0: 1s\r\n");
}
/*
* PIT1中断服务子程序
*
* 该程序每2秒触发一次,不用清标志位,因为已经在底层处理了。
*
*/
void pit_isr1()
{
printf("PIT1: 2s\r\n");
}
/********************************************************************/