2019-07-15 16:16发布
SuperVigorous 发表于 2015-8-15 12:42 看看一些带捕获功能的单片机,外部信号触发后定时器的值会锁存,将几个电平跳变时的值相减,再相比就可得到占空比
最多设置5个标签!
oid pca_init() //捕获模块初始化
{
CCON=0x00;
CMOD = 0x01;
CCAPM0=0x21; //CCAP上升沿捕获, 允许中断
CL=0; //清空PCA基本计数器
CH=0;
CCAP0L = 0x00;
CCAP0H = 0x00;
CR=1; //启动PCA
EA=1;
}
void DigDisplay();
void main()
{
uint i;
pca_init();
if(flag==1)
{
t4=TABLE[1]-TABLE[0];
for(i=0;i<8;i++)
{
DisplayData=DIG_CODE[t4%10];
t4=t4/10;
}
while(1)
{
DigDisplay();
}
while(1);
}
}
void PCA_Int(void) interrupt 7
{
if(CCF0==1&&I<5)
{
CCF0=0;
CCAPM0=0x11;
TABLE[I]= CCAP0H*256 + CCAP0L;
I++;
}
if(I>=5) flag=1;
一周热门 更多>