kl25的TPM无法使用

2019-03-26 07:55发布

无论怎么配置TPM,都输出不了波形,而且计数器也不运行,不知怎么配置,下面是我的代码:
  1. void TPM_init()
  2. {
  3.         SIM_SCGC6 |= (SIM_SCGC6_TPM0_MASK | SIM_SCGC6_TPM2_MASK);

  4.   //PORTB_PCR18 |= PORT_PCR_MUX(3);
  5.   //PORTB_PCR19 |= PORT_PCR_MUX(3);
  6.         PORTD_PCR1  |= PORT_PCR_ISF_MASK | PORT_PCR_MUX(4) | PORT_PCR_DSE_MASK;
  7.        
  8.         NVIC_EnableIRQ(TPM0_IRQn);
  9.        
  10.         /*TPM0_SC |= TPM_SC_PS(1);
  11.         TPM0_SC |= TPM_SC_CMOD(1);
  12.         TPM0_SC |= TPM_SC_TOF_MASK;*/
  13.        
  14.         TPM0_CNT = 0;
  15.         TPM0_MOD = 400;
  16.         TPM0_SC |= TPM_SC_PS(1);
  17.         TPM0_SC |= TPM_SC_TOIE_MASK | TPM_SC_CMOD(1);
  18.         TPM0_C1SC |= TPM_CnSC_CHIE_MASK;
  19.         TPM0_C1SC |= TPM_CnSC_MSA_MASK| TPM_CnSC_ELSA_MASK;
  20.         TPM0_C1V = 100;
  21.        
  22.         TPM0_SC |= TPM_SC_TOF_MASK;
  23.         //TPM0_C1SC |= 1;
  24. }
复制代码


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
dcexpert
1楼-- · 2019-03-26 09:46
你先用KDS(Kinetis Design Studio IDE)的PE试试,可以帮你快速设置寄存器。
beian10
2楼-- · 2019-03-26 15:10
dcexpert 发表于 2015-2-2 20:57
你先用KDS(Kinetis Design Studio IDE)的PE试试,可以帮你快速设置寄存器。



我只知道有CW,想不到还有KDS,不过那两个还没用过

一周热门 更多>