📄 main.c
字号:
#include <hidef.h> /* common defines and macros */
#include <mc9s12dg128.h> /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
unsigned int speed_m;
/* 16位脉冲累加,5ms测一次,输入PT7*/
void PaiInit();
void RealTimer_Int(void);
void PLL_Init(void);
void Start_PLL(void);
void PaiInit()
{
TCTL4 = 0X03;
PACTL_PAEN=1; //PBEN=1,事件技术模式,上升沿触发,PACLK 允许中断
// ICPAR = 0X0F;
PACN32 = 0X00;
}
void interrupt 7 RealTime(void)
{
CRGFLG_RTIF=1; //Clear Flag
// PTH^=0X01;
speed_m = PACN32 ;
PACN32=0; //PT7 采集
}
void RealTimer_Int(void)
{
CRGINT_RTIE=1; //Open Interrupt
RTICTL=0x49; //5ms Interrupt
}
void PLL_Init(void)
{
REFDV=0x01;
SYNR=0x02; //Set the system clock 48MHz
}
void Start_PLL(void) {
asm{
BRCLR CRGFLG,#$08,*
BSET CLKSEL,#$80
}
}
void main(void) {
/* put your own code here */
DisableInterrupts;
DDRH=0XFF;
PLL_Init();
Start_PLL();
PaiInit();
RealTimer_Int();
EnableInterrupts;
for(;;) {} /* wait forever */
/* please make sure that you never leave this function */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -