首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]MC68HC908GZ48时基中断问题

[求助]MC68HC908GZ48时基中断问题

我用时基做的中断程序,发现CONFIG2寄存器的TBMCLKSEL位,无论设置为1还是0,对中断时间没有影响啊,还有一个问题是TBCR寄存器的TBR2,TBR1,TBR0的设置也只有000,001,010的中断时间是正确的,其他的与理论值不同。


函数如下:


void main(void) {


  DDRF_DDRF3=1;     


  TF_PTF3=0;
 
  CONFIG1=0x05;
    
  CONFIG2_MSCANEN=1;  //CAN使能
  CONFIG2_TMCLKSEL=0; 


  CONFIG2_OSCENINSTOP=1;
  PCTL_BCS=0;



 
  TBCR_TBR0 =0;      //TB divider selection bits 
  TBCR_TBR1 =0;    
  TBCR_TBR2 =1;            
  TBCR_TBIF =0;      //TB interrrupt not pending              


  TBCR_TBON =1;      //TB enable   
  TBCR_TBIE =1; 
  EnableInterrupts; 
  
 while(1){
 }


}
interrupt 17 void TBM_Interrupt(void)
 
{
 TBCR_TACK =1;      
 TF_PTF3=PTF_PTF3^1;
      
 }


请帮忙看看,需要哪里需要改正。谢谢

希望能和大家多多交流。
返回列表