📄 ect1.txt
字号:
#include <hidef.h> /* common defines and macros */
#include <mc9s12dg128.h> /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
unsigned char PulseCnt;
void initportb()
{
DDRB=0xff;//初始化portb为输出
PORTB=0Xff;//初始化PORTB为全灭
}
/************本程序捕捉************/
void main(void) {
/* put your own code here */
//EnableInterrupts;
initportb();
asm sei; //关闭所有中断
TIOS=0x00; //设置ECT通道0作为IC工作方式,也就是捕捉0通道的信号
TSCR1=0x80; //定时器使能,正常工作
//
TSCR2=0x01; //进制定时器使能,预分频为2
TCTL4=0x02; //仅捕捉下降沿
TIE=0x01; //允许通道0中断
TFLG1=0x01;
DLYCT=0x01; //延时捕捉,00禁止延时,01-256周期,10-512周期,11-1024周期
PulseCnt=0x00;
asm cli; //开启中断
for(;;) {} /* wait forever */
/* please make sure that you never leave this function */
}
#pragma CODE_SEG NON_BANKED //定义这段程序在不分页区
void interrupt IC0_ISR(void) {
PulseCnt++;
TFLG1=0x01;
PORTB=~PulseCnt;
}
#pragma CODE_SEG DEFAULT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -