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

再次求助PIT

用错了很多东西啊,中断标志位是写1清0的,中断号也错了,寄存器赋值顺序估计也会出问题,我今天下午刚配置的程序,给你参考下:
//===========================================
// 设置PIT函数
//总线时钟为40MHZ,定时器溢出频率f =  (9+1)*(99+1)/ 40M = 40Khz
//===========================================
void Set_PIT(void)
{
  PITCE = 0X01;   // PIT0通道使能
  PITMUX = 0X00;  // 所有都接micro time base 0
  PITINTE = 0X01; // PIT0通道中断使能
  
  PITMTLD0 = 9;    //
  PITLD0 = 9;
  
  PITCFLMT |= 0X80;     // 使能PIT
}

// ===========================
// PIT中断程序
// ===========================
#pragma CODE_SEG NON_BANKED     // 中断程序需写在非分页区
void interrupt 66 PIT_INT(void)
{

  PITTF_PTF0 = 1;     // 清零PIT0中断标志
  // 其余代码
  }
看错了,最主要的是中断号给用错了。。。
返回列表