?? lpld_lptmr_pulseacc.c
字號(hào):
/*
* 測試硬件平臺(tái): LPLD_K60 Card
* 版權(quán)所有: 北京拉普蘭德電子技術(shù)有限公司
* 網(wǎng)絡(luò)銷售: http://laplenden.taobao.com
* 公司門戶: http://www.lpld.cn
*
* 說明: 本工程基于Kintis K60開源底層開發(fā)包開發(fā),
* 所有開源驅(qū)動(dòng)代碼均在"LPLD"文件夾下,調(diào)用說明見文檔[#LPLD-003-N]
*
* 文件名: LPLD_LPTMR_PulseAcc.c
* 用途: LPTMR低功耗定時(shí)中斷模塊例程 脈沖累加功能
*
* LPLD_K60 Card 硬件配置說明:
* PTC1輸出PWM接入到PTC5的脈沖累加輸入口,變量GetFreq存放頻率值
*
*
*/
#include "common.h"
#include "HAL_PIT.h"
#include "HAL_FTM.h"
#include "HAL_LPTMR.h"
#define PIT_TIMER_PERIOD 1000 //1ms
uint16_t GetFreq;
uint16_t GetCnt;
void pit_isr0();
/********************************************************************/
void main (void)
{
//注意:采集的頻率必須大于100HZ
LPLD_FTM0_PWM_Init(100000); //100Khz
LPLD_FTM0_PWM_Open(0,5000);
LPLD_PIT_Init(0, PIT_TIMER_PERIOD, pit_isr0);
LPLD_LPTMR_Init(1,0,2,0,NULL);
GetFreq=0;
GetCnt=0;
EnableInterrupts;
while(1)
{
}
}
void pit_isr0()
{
static uint32_t temp=0;
if(GetCnt>2)
{
GetFreq=temp/3;
temp=0;
GetCnt=0;
}
else
{
temp+=LPLD_LPTMR_GetPulseAcc();
GetCnt++;
}
LPLD_LPTMR_Reset(); //Reset LPTMR0
LPLD_LPTMR_Init(1,0,2,0,NULL);
}
/********************************************************************/
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -